COSC 311 — Discrete Structures 
Fall 2013

For a student of mathematics to hear someone talk about mathematics does hardly any more good than for a student of swimming to hear someone talk about swimming. You can’t learn swimming techniques by having someone tell you where to put your arms and legs; and you can’t learn to solve problems by having someone tell you to complete the square or to substitute sin u for y. — Paul Halmos (1975)


Contact Information

Bruce MacLennan, PhD
Phone: 974-0994
Office: Min H. Kao 550
Hours: MW 1:30–2:30 or make an appointment

Teaching Assistants:
Zahra Mahoor
Office: Min Kao 204
Hours: R 1:30–3:30 or make an appointment
Email:  zmahoor at

Allen McBride
Office: Min Kao 204
Hours: T 3:00–5:00 or make an appointment 
Email:  amcbri10 at

Classes: MWF 11:15–12:05, Min H. Kao 404

This page:

Catalog Description

Sets, functions, relations, equivalence relations, partial orderings and proof techniques, especially mathematical induction. Application of proof techniques to prove correctness of algorithms. Introduction to basic counting and combinatorics.


(RE) COSC 140, MAT 142.  (DE) COSC 160.



  1. Fundamentals of Logic [Grimaldi, ch. 2]
  2. Mathematical Proof and Problem Solving [Solow, chs. 2, 4–11, 13]
  3. Fundamental Principles of Counting [G(rimaldi) 1.1–1.4]
  4. Set Theory [G 3.1–3.4, 3.8]
  5. Properties of the Integers and Induction [G 4.1–4.2; Solow 12; perhaps G 4.3–4.5]
  6. Relations and Functions [G 5.1–5.5; perhaps 5.6–5.8, 7.1–7.4]
  7. Supplementary Topics:



 Basic Logic


Learning Outcomes

  1. Apply formal methods of symbolic propositional and predicate logic.
  2. Describe how formal tools of symbolic logic are used to model real-life situations, including those arising in computing contexts such as program correctness, database queries, and algorithms.
  3. Use formal logic proofs and/or informal but rigorous logical reasoning to, for example, predict the behavior of software or to solve problems such as puzzles.
  4. Describe the importance and limitations of predicate logic.

 Proof Techniques


Learning Outcomes

  1. Outline the basic structure of and give examples of each proof technique described in this unit.
  2. Discuss which type of proof is best for a given problem.
  3. Relate the ideas of mathematical induction to recursion and recursively defined structures.
  4. Use proof techniques to prove properties about data structures and algorithms presented in CS140.
  5. Use proof techniques to prove various properties about boolean algebra.

Functions, Relations, and Sets


Learning Outcomes

  1. Explain with examples the basic terminology of functions, relations, and sets.
  2. Perform the operations associated with sets, functions, and relations.
  3. Relate practical examples, such as relational databases, to the appropriate set, function, or relation model, and interpret the associated operations and terminology in context.

Basics of Counting

Topics (Time permitting, to be covered more extensively in COSC 312). Some of the topics, denoted in italic, are optional and may be covered at the instructor’s discretion:

Learning Outcomes

  1. Compute permutations and combinations of a set, and interpret the meaning in the context of the particular application.
  2. Solve a variety of basic recurrence equations.
  3. Analyze a problem to create relevant recurrence equations or to identify important counting questions.

Homework and Tests

SUBJECT TO CHANGE! We will assign (approximately) weekly homework, which will count a total of 15% of your Homework + Test average.

Late homework policy: In order to allow me to discuss homework in class and to be fair to all students, we have the following late homework policy. First, the presumption is that you will normally turn in homework on time. The individual homeworks are designed to be easily doable in the (approximate) week allocated to each. Also, if you get behind in the homework it will be difficult to catch up, since the material is cumulative. Turning homework in on time means at the beginning of class on the day it is due. Homework turned in after I have started lecturing is considered late. (Of course I will consider extenuating circumstances, such as being run over by a bus on the way to class!) I will take off a letter grade for each day late, including weekends. And the date will be determined by when the TA or I receives the work, not by when you deposit it. (We can’t be responsible if you turn it in after we’ve left for the day or if we’re not on campus.) Of course, I will consider extenuating circumstances. I hate to sound so legalistic, but experience shows that is pays to be explicit.

Collaboration policy: In order to improve your learning, you can collaborate on homework, provided you keep the following in mind:
  1. “Collaboration” does not mean “copying.” You can discuss problems and solutions with your classmates, provided that you write up your answers individually.
  2. You must write on your paper that you have collaborated and name those with whom you have collaborated.
  3. Remember that there is no collaboration on tests! Homework provides an opportunity for you to practice the skills that you will need to do well on the tests. Therefore you will be better prepared for the tests if you work as many problems as you can on your own.

In addition to homework, there will be three tests, each of which will count 25% of your Homework + Test average.

Finally, there will be a quiz over the last chapter we cover, counting 10% of your Homework + Test average.

Homework Assignments:

Tentative Test Schedule:

Final Exam and Grading

SUBJECT TO CHANGE! It is anticipated that your grade will be 50% Homework + Tests and 50% Final Exam. However, if you are satisfied with your Homework + Test average, you will not have to take the Final Exam. Furthermore, if your Final Exam grade is better than your Homework + Tests average, then it will count for 95% of your grade.

The Final Exam is Mon., Dec. 9, 12:30–2:30.  The cumulative Final Exam will be two hours worth of questions similar in difficulty to those on the Tests. - Updated!

For Students with Disabilities

The Office of Disability Services and the Campus Disability Monitors have asked us to pass this statement along in our syllabi:
Students who have a disability that require accommodation(s) should make an appointment with the Office of Disability Services (974-6087) to discuss their specific needs as well as schedule an appointment with me during my office hours.


Some charts to help you with mathematical proofs:

There is a supplemental handout [pdf] with problems for practice in writing inductive proofs.

Return to MacLennan's home page

Send mail to Bruce MacLennan /

Valid HTML 4.01!This page is
Last updated: 2013-12-03.