CMPSCI 250: Spring 2012

Syllabus and Course Schedule

Prof. David Mix Barrington

Reading assignments are from Barrington, Discrete Mathematics: A Foundation for Computer Science, fifth draft. A course packet, consisting of chapters 1-4 in one volume and chapters 5, 9, 14, and 15 in the other, is available at cost at Collective Copies in downtown Amherst.

Lecture Class meetings are MWF 11:15-12:05 in Hasbrouck 134. 101. There are two discussion sections, both on Fridays in the Computer Science Building room 142: Section D01 meeting 12:20-1:10 and Section D02 meeting 2:30-3:20. The TA's and I will move around among discussion sections. There are two evening midterm exams as indicated -- a discussion class near each one is cancelled.

PART I: Logic and Number Theory

Mon 23 Jan L01  Sets and Strings (1.1, 1.2)
Wed 25 Jan L02  Propositions and Boolean Operations (1.4)
Fri 27 Jan L03  Set Operations and Truth Tables (1.5, 1.6) 
Fri 27 Jan D01  What Is a Proof? (1.3)
Mon 30 Jan L04  Rules for Propositional Proofs (1.7) 
Wed 01 Feb L05  Propositional Proof Strategies (1.8)
Fri 03 Feb L06  Predicates and Relations (1.10, 2.1)
Fri 03 Feb D02  A Murder Mystery (1.9)  
Mon 06 Feb L07  Quantifiers and Languages (2.3, 2.5)
Wed 08 Feb L08  Proofs With Quantifiers (2.6)
Fri 10 Feb L09  Relations and Functions (2.8, 2.9)
Fri 10 Feb D03  Practicing Proofs (2.7) 
Mon 13 Feb L10  Partial Orders (2.10)
Wed 15 Feb L11  Equivalence Relations (2.11)
Fri 17 Feb L12  Divisibility and Primes (3.1)
Fri 17 Feb D04  Playing With Numbers (3.2)
Mon 20 Feb ---  NO CLASS (President's Day Holiday)
Wed 22 Feb L13  Modular Arithmetic (3.3)
Fri 24 Feb L14  The Chinese Remainder Theorem (3.5)
Fri 24 Feb L14  NO DISCUSSION
Mon 27 Feb L15  The Fundamental Theorem of Arithmetic (3.6) 
Tue 28 Feb X01  FIRST MIDTERM (7-9 pm, Morrill 2 room 131) on Lectures 1-15

PART II: Induction, Trees, and Searching

Wed 29 Feb L16  Recursive Definition (4.1)
Fri 02 Mar L17  Proof by Induction for Naturals (4.3)
Fri 02 Mar D05  Recursive Algorithms (4.2)
Mon 05 Mar L18  Variations on Induction for Naturals (4.4)
Wed 07 Mar L19  Proving the Basic Facts of Arithmetic (4.6)
Fri 09 Mar L20  Strings and String Operations (4.7)
Fri 09 Mar D06  Fibonacci Numbers (4.5)
Mon 12 Mar L21  Induction for Problem Solving (4.11)
Tue 13 Mar ---  Last Day to Drop With W
Wed 14 Mar L22  Graphs, Paths, and Trees (4.9, 9.1)
Fri 16 Mar L23  Recursion on Trees (9.3)
Fri 16 Mar D07  Boolean Expressions (9.2)

SPRING BREAK

Mon 26 Mar L24  General, Breadth-First and Depth-First Search (9.4, 9.5)
Wed 28 Mar L25  BFS and DFS on Graphs (9.6)
Fri 30 Mar L26  Uniform-Cost and A-Star Search (9.8, 9.9)
Fri 30 Mar ---  NO DISCUSSION
Mon 02 Apr L27  Games and Adversary Search (9.10)
Tue 03 Apr X02  SECOND MIDTERM (7-9 pm, location Morrill 2 room 131) on Lectures 16-27 


PART III: Regular Expressions, Finite-State Machines, and Computability

                
Wed 04 Apr L28  Regular Expressions and Their Languages (5.1, 5.2)
Fri 06 Apr L29  Proving Regular Language Identities (5.4)
Fri 06 Apr D08  Designing Regular Expressions (5.3)
Mon 09 Apr L30  Proving Properties of the Regular Languages (5.5)
Wed 11 Apr L31  What DFA's Can and Can't Do (14.1, 14.2)
Fri 13 Apr L32  The Myhill-Nerode Theorem (14.3)
Fri 13 Apr D09  Minimizing Finite Automata (14.3)
Mon 16 Apr ---  NO CLASS (Patriots' Day Holiday)
Tue 17 Apr L33  NFA's and the Subset Construction (14.5, 14.6)
Wed 18 Apr L34  Killing λ-Moves: λ-NFA's to NFA's (14.7)
Fri 20 Apr L35  Constructing NFA's from Regular Expressions (14.8)
Fri 20 Apr D10  Practicing NFA Constructions (14.9)
Mon 23 Apr L36  State Elimination: NFA's Into Regular Expressions (14.10)
Wed 25 Apr L37  Two-Way Automata and Turing Machines (15.1, 15.6)
Fri 27 Apr L38  Turing Machine Semantics (15.8)
Fri 27 Apr D11  Course Evaluations 
Mon 30 Apr L39  The Halting Problem and Unsolvability (15.10)

Final Exam (cumulative) Tuesday 8 May, 8-10 a.m.


Last modified 28 February 2012