CMSC-203 Discrete Math Assignments (spring 2001)

Read and follow the document " How to solve and write-up homework." A few reminders:

It is the foremost responsibility of each student to solve many problems each and every day--many more than are required to be handed in. Learning discrete math takes place primarily through solving problems actively -- not through passively reading nor passively listening to lectures.



Part I: Proofs

Focus on how to write proofs, including by counterexample, by direct proof, by contradiction, by contraposition, by mathematical induction (weak and strong forms), and by epsilon/delta proofs.

Homework 1: Sets and logic

(Due 2:00pm, Wednesday, February 7)

Homework 2: Logic and proofs

(Due 2:00pm, Wednesday, February 14)

Homework 3: Induction

(Due 2:00pm, Wednesday, February 21)

Whenever doing any induction proof in CMSC-203, always follow the style demonstrated in class. In particular, always begin with an EXPLICIT definition of the inductive set, typically called S. Clearly show the basis and inductive steps. In the inductive step, clearly identify the inductive hypothesis and where it is used. Also, always state whether you are using the weak or strong form of induction.


Homework 4: Induction and Loop Invariants

(Due 2:00pm, Wednesday, February 28)

There is no homework due March 7 because Exam I on proofs is March 7.



Part II: Calculation

Focus on how to calculate, including solving summations and recurrences and using Maple.

Homework 5: Functions

(Due 2:00pm, March 14)

Read the note " On functions." Focus on calculation; go lightly on the counting topics from Sections 7.4 and 7.6, which will be revisited in the final third of the course.


Homework 6: Recursion

(Due 2:00pm, Wednesday, March 28)

See the reading assignment now listed under HW5. Also, go lightly on the counting examples from Section 8.1, which will be revisited in the final third of the course.


Homework 7: Linear Difference Equations

(Due 2:00pm, Wednesday, April 4)

Read the handout on solving linear difference equations (handwritten notes by Dr. Sherman), which augments the book's explanation of linear difference equations by treating the cases of inhomogeneous equations and equations with periodic solutions.

Instructions: In Problems 1-4 below, solve each of the recurrences given in the specified exercises by hand. Express your answers as closed-form expressions in terms of the index parameter. Begin by restating each recurrence in standard form (with any and all inhomogeneous terms appearing on the right hand side, each written as a polynomial times an exponential). Check your answers using the initial conditions. Whenever these exercises ask you to perform some other task, disregard the book's instructions and simply solve the recurrences.

Whenever a recurrence has a periodic solution, express your solution in terms of the elementary periodic functions SIN and COS, as explained in the handout by Dr. Sherman; never express any real-valued solution using any coefficients nor bases that are non-real complex numbers.


Homework 8: Relations

(Due 2:00pm, April 11)

There is no homework due April 18 because Exam II on calculation is April 18.



Part III: Counting

Focus on how to count, including by fundamental principles (addition and product rules), urn model (four cases), inclusion/exclusion (general case with n sets), partition and sum, setting up summation or recurrence, and seat-of-the-pants estimates. Also learn proof by counting argument (including pigeonhole principle and by diagonalization).

Carefully review Sections 7.4 and 7.6. and 8.1, focusing on all explanations and examples involving counting. Read Chapter 6 and the handouts on inclusion/exclusion, proofs by counting arguments, and probability. Note that the textbook's treatments of inclusion/exclusion and diagonalization are weak and incomplete.

Motivating examples for this part of the course include: counting steps in programs, counting number of data structures or Boolean circuits of various types, separating complexity classes, the halting porblem, and determining the probability of success of a probabilistic program.

Playing and analyzing the game of backgammon can be very helpful in learning discrete probability. There are free on-line backgammon programs, such as Hans Berliner's BKG.

Homework 9: Counting

(Due 2:00pm, Wednesday, April 25)

Homework 10: Counting

(Due 2:00pm, Wednesday, May 2)

Homework 11: Counting

(Due 2:00pm, Wednesday, May 9--Last required homework)

Bonus Homework: Difference Equations