CMPSCI 250: Spring 2017

Syllabus and Course Schedule

Prof. David Mix Barrington

Reading assignments are from Barrington: A Mathematical Foundation for Computer Science (draft), available at cost from Collective Copies in downtown Amherst.

Class meetings are MWF 1:25-2:15 in ELAB II 119. There are four discussion sections, each meeting on Fridays. Section AA meets at 10:10 in Flint 201, Section AB at 9:05 in LGRT 123, Section AC at 10:10 in Flint 105, and Section AD at 9:05 in ELAB 303. There are two evening exams, as indicated, and two discussion sections are cancelled to compensate for the extra time.

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 D01  What is a Proof? (1.3)
Fri 27 Jan L03  Set Operations and Truth Tables (1.5, 1.6)
Mon 30 Jan L04  Rules for Propositional Proofs (1.7)
Wed 01 Jan L05  Propositional Proof Strategies (1.8)
Fri 03 Jan D02  A Murder Mystery (1.9)
Fri 03 Feb L06  Predicates and Relations (1.10, 2.1)
Mon 06 Feb L07  Quantifiers and Languages (2.3, 2.5) (END OF ADD/DROP)
Wed 08 Feb L08  Proofs With Quantifiers (2.6)
Fri 10 Feb D03  Translating Quantifiers (2.4)
Fri 10 Feb L09  Relations and Functions (2.8, 2.9)
Mon 13 Feb L10  Equivalence Relations (2.10)
Wed 15 Feb L11  Partial Orders (2.11)
Fri 17 Feb D04  Practicing Proofs (2.7)
Fri 17 Feb L12  Divisibility and Primes (3.1) 
Mon 20 Feb ---  NO CLASS (President's Day Holiday)
Wed 22 Feb L13  Modular Arithmetic (3.3) 
Fri 24 Feb D05  Infinitely Many Primes (3.4)
Fri 24 Feb L14  The Chinese Remainder Theorem (3.5)
Mon 27 Feb L15  The Fundamental Theorem of Arithmetic (3.6) 
Tue 28 Feb X01  FIRST MIDTERM (7-9 p.m., ILC N151) on Lectures 1-15

PART II: Induction, Trees, and Searching

Wed 01 Mar L16  Recursive Definition (4.1)
Fri 03 Mar ---  NO DISCUSSION (makeup for exam)
Fri 03 Mar L17  Proof by Induction for Naturals (4.3)
Mon 06 Mar L18  Variations on Induction for Naturals (4.4)
Wed 08 Mar L19  Proving the Basic Facts of Arithmetic (4.6)
Wed 08 Mar ---  Last Day to Drop With W or Elect Pass/Fail 
Fri 10 Mar D06  Practicing Induction Proofs (not in book)
Fri 10 Mar L20  Strings and String Operations (4.7)

SPRING BREAK

Mon 20 Mar L21  Induction for Problem Solving (4.11)
Wed 22 Mar L22  Graphs, Paths, and Trees (4.9, 9.1)
Fri 24 Mar D07  More Induction Practice (not in book)
Fri 24 Mar L23  Recursion on Trees (9.3)
Mon 27 Mar L24  General, Breadth-First, and Depth-First Search (9.4, 9.5)
Wed 29 Mar L25  BFS and DFS on Graphs (9.6)
Fri 31 Mar D08  Boolean Expression Trees (9.2)
Fri 31 Mar L26  Uniform-Cost and A* Search (9.8, 9.9)
Mon 03 Apr L27  Games and Adversary Search (9.10)
Tue 04 Apr X02  SECOND MIDTERM (7-9 p.m., Morrill 2 131 and Morrill 1 N375) 
                on Lectures 16-27

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

Wed 05 Apr L28  Regular Expressions and Their Languages (5.1, 5.2)
Fri 07 Apr ---  NO DISCCUSSION (makeup for exam)
Fri 07 Apr L29  Proving Regular Language Identities (5.4)  
Mon 10 Apr L30  Proving Properties of the Regular Languages (5.5)
Wed 12 Apr L31  What DFA's Can and Can't Do (14.1, 14.2)
Fri 14 Apr D09  Designing Regular Expressions (5.3)
Fri 14 Apr L32  The Myhill-Nerode Theorem (14.3)
Mon 17 Apr ---  NO CLASS (Patriot's Day Holiday)
Tue 18 Apr L33  (MONDAY) NFA's and the Subset Construction (14.5, 14.6)
Wed 19 Apr L34  Killing λ-moves: λ-NFA's to NFA's (14.7)
Fri 21 Apr D10  Practicing Some Kleene Constructions (14.9, adapted)
Fri 21 Apr L35  Constructing NFA's from Regular Expressions (14.8)
Mon 24 Apr L36  State Elimination: NFA's to Regular Expressions (14.10)
Wed 26 Apr L37  Two-Way Automata and Turing Machines (15.1, 15.6)
Fri 28 Apr D11  Course Evaluations
Fri 28 Apr L38  Turing Machine Semantics (15.8)
Mon 01 May L39  The Halting Problem and Unsolvability (15.10)

Final Exam (cumulative) probably Wed 10 May, 1:00-3:00 pm, room TBA

Last modified 19 February 2017