CS/MATH 111, "Discrete Structures"
Spring 2018




  Schedule

  Syllabus

Textbook: E. Lehman, T. Leighton and A. Meyer Mathematics for Computer Science. You only need to print the sections that will be covered in class.

Prerequisites: CS10, CS/MATH11, MATH 9C (or equivalents). The prerequisites are strictly enforced.

Prerequisites by Topic: basic programming, logic (propositional, predicate), sets, operations on sets, sequences, relations (equivalence, partial orderings), functions, combinations, basic counting methods, elementary linear algebra (matrices, determinants), proof methods (induction, contradiction), elementary number theory.

Topics Covered:

Homework Assignments: Five homework assignments, due every second Friday (except last), starting January 26. To submit an assignment you will need to upload the pdf file into gradescope. (Click here for the instructions.)

Homework assignments are designed for groups of two, although students also have an option to work on them solo. Each homework will have three problems. Students working in groups must solve all three problems. Each group submits one paper with two names on it and both students in the group will receive the same credit (unless requested otherwise). Students that submit individual assignments only need to solve the first two problems for full credit.

Homework papers must be formatted in LaTeX, with each problem starting on a separate page and clearly marked. Handwritten assignments or assignments in Word or other word processors will not be accepted. LaTeX templates for homework assignments and other help with LaTeX will be available. We recommend that you install LaTeX on your own machine, but you can also use LaTeX through overleaf.com.

Homework papers must be well written, in grammatical English, self-contained, and aesthetically formatted. Each problem should start on a new page. During the first week of the quarter you are required to review the homework assignment guidelines, and follow these guidelines throughout the quarter. Sloppy papers will not be graded.

Quizzes: Four quizzes, in lecture, every second Friday, starting on April 13. The first quiz will cover the prerequisite topics.

Final: Thursday, June 14, 11:30AM - 2:00PM, WCH 138. The final is comprehensive.

Attendance: Regular attendance at lectures and discussions is strongly advised. Some of the presented material may not be covered in the book or in posted lecture notes. Students are also strongly encouraged to attend office hours. In case of a conflict with regular walk-in office hours, email the instructor or TA to set up an appointment. Students that are at risk of failing the class may be required to attend office hours.

Grading: Quizzes 40%, Final 40%, Homeworks 20%. Course grades are expected to be determined as follows: A = 85-100%, B = 75-84%, C = 65-74%, D = 60-64%. Minor adjustments of this scale can be made at the end of the quarter.

Academic Integrity: Zero-tolerance policy on plagiarism is enforced. Cheating on homework assignments or tests will result in an F grade for the course and a disciplinary action, independently of the severity of plagiarism. You are required to print, read, and sign the academic integrity statement, and turn it in no later than Friday, April 20, via ilearn. Without the signed statement, your Homework 1 will not be considered complete.

Piazza Discussion Group: Please sign-up for the piazza discussion group, following instructions that will be distributed on ilearn. Participation in piazza discussions is strongly encouraged.

  Lectures

Week 1 Monday, April 2
THINGS TO DO in week 1
Review: logic, sets, functions, relations, basic summation formulas, important numbers, sequences
Reading: Chapters 1-5, Sections 8.1-8.3, 14.1, 14.2.
Recommended exercises: 1.2, 1.5, 1.7, 3.2, 3.8, 3.21, 3.24, 4.1, 4.7
Wednesday, April 4
Review (cont.): approximations, number theory basics, proofs, proofs by induction
Reading: Sections 14.1, 14.2, 15.1-15.10
Recommended exercises: 15.2, 15.4, 15.12, 15.15
Friday, April 6
Review, cont.
Reading:
Recommended exercises:
Week 2 Monday, April 9
Asymptotic notation
Reading: Section 14.7
Recommended exercises: 14.30, 14.32
Wednesday, April 11
Asymptotic notation (cont.)

Reading:
Recommended exercises:
Friday, April 13
Quiz 1 (25 minutes)
Asymptotic notation, cont.
Reading:
Recommended exercises:
Week 3 Monday, April 16
Number theory and cryptography
Gcd, Euclid's algorithm
Reading: Sections 8.1, 8.2, 8.3, 8.4, 8.5, 8.6
Recommended exercises: 8.2, 8.3, 8.4, 8.17, 8.20, 8.22
Wednesday, April 18
Breaking Turing's code (page 202-210)
Turing's code, version 2 (page 202-213)
Congruences, remainders, inverses modulo n
Reading: Chapter 8
Recommended exercises: 8.23, 8.25
Friday, April 20
Homework 1 due
Fermat's Little Theorem and its applications
Computing powers modulo n
Reading: Chapter 8
Recommended exercises: 8.23, 8.25
Week 4 Monday, April 23
RSA: correctness, security, efficiency
Reading: Chapter 8
Recommended exercises: 8.37
Wednesday, April 25
RSA: correctness, security, efficiency (cont.) Reading:
Recommended exercises:
Friday, April 27
Quiz 2 (25 minutes)
Famous open (and solved) problems in number theory
Reading:
Recommended exercises:
Week 5 Monday, April 30
Linear recurrence equations
Reading: Section 8.1 (page 189), Section 21.1, 21.3, 21.4
Recommended exercises:
Wednesday, May 2
Linear recurrence equations
Reading: Section 21.1-21.4
Recommended exercises:
Friday, May 4
Homework 2 due
Linear recurrence equations (non-homogeneous)
Reading: Section 21.1-21.4
Recommended exercises:
Week 6 Monday, May 7
Divide-and-conquer recurrences
Reading: Section 21.2. 21.4
Recommended exercises:
Wednesday, May 9
Divide-and-conquer recurrences
Reading:
Recommended exercises:
Friday, May 11
Quiz 3 (25 minutes)
Inclusion-Exclusion
Reading:
Recommended exercises:
Week 7 Monday, May 14
Inclusion-Exclusion
Reading:
Recommended exercises:
Wednesday, May 16
Inclusion-Exclusion: integer partitions.
Reading:
Recommended exercises:
Friday, May 18
Homework 3 due
Graphs, basic definitions and properties
Reading:
Recommended exercises:
Week 8 Monday, May 21
Graphs: Euler tours
Reading: Chapter 11.
Recommended exercises: 11.3, 11.4, 11.7, 11.30
Wednesday, May 23
Hamiltonian cycles, Dirac's theorem
Reading:
Recommended exercises:
Friday, May 25
Quiz 4 (25 minutes)
Bipartite graphs: matchings, Hall's Theorem.

Reading:
Recommended exercises:
Week 9 Monday, May 28
Memorial Day. No Class.
Wednesday, May 30
Bipartite graphs: matchings, Hall's Theorem.
Trees
Reading: Chapter 11.
Recommended exercises:
Friday, June 1
Homework 4 due
Trees
Planar graphs: Kuratowski's theorem.
Reading: Chapter 12.
Recommended exercises: 12.2, 12.3, 12.6, 12.8
Week 10 Monday, June 4
Euler's formula/inequality for planar graphs.
Reading: Chapter 12.
Recommended exercises:
Wednesday, June 6
The 4-Color Theorem. Coloring planar graphs with 6 and 5 colors.
Trees. Binary trees. Applications (lower bound for comparison sorting).
Reading: Section 9.3
Recommended exercises:
Friday, June 8
Homework 5 due
Games, NIM
Reading:
Recommended exercises:

  Homework Assignments

LaTeX and Homework help.

  Quizzes

  Final

  Other Books

  Some Wikipedia Entries

  A Few Other Resources

  Good Causes (not related to class)