CMPSCI 250: Spring 2016

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 Thompson 106. There are four discussion sections, each meeting on Fridays. Section AA meets at 10:10 in ELAB 323, Section AB at 9:05 in ELAB 323, Section AC at 10:10 in ELAB 303, and Section AD at 9:05 in ELAB 304. 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

Wed 20 Jan L01  Sets and Strings (1.1, 1.2)
Fri 22 Jan D01  What is a Proof? (1.3)
Fri 22 Jan L02  Propositions and Boolean Operations (1.4)
Mon 25 Jan L03  Set Operations and Truth Tables (1.5, 1.6)
Wed 27 Jan L04  Rules for Propositional Proofs (1.7)
Fri 29 Jan D02  A Murder Mystery (1.9)
Fri 29 Jan L05  Propositional Proof Strategies (1.8)
Mon 01 Feb L06  Predicates and Relations (1.10, 2.1) (END OF ADD/DROP)

Wed 03 Feb L07  Quantifiers and Languages (2.3, 2.5)
Fri 05 Feb D03  Translating Quantifiers (2.4)
Fri 05 Feb L08  Proofs With Quantifiers (2.6)
Mon 08 Feb L09  Relations and Functions (2.8, 2.9)
Wed 10 Feb L10  Equivalence Relations (2.10)
Fri 12 Feb D04  Practicing Proofs (2.7)
Fri 12 Feb L11  Partial Orders (2.11)
Mon 15 Feb ---  NO CLASS (President's Day Holiday)
Tue 16 Feb L12  (MONDAY SCHEDULE) Divisibility and Primes (3.1) 
Practicing Proofs (2.7)
Wed 17 Feb L13  Modular Arithmetic (3.3) 
Fri 19 Feb D05  Infinitely Many Primes (3.4)
Fri 19 Feb L14  The Chinese Remainder Theorem (3.5)
Mon 22 Feb L15  The Fundamental Theorem of Arithmetic (3.6) 
Tue 23 Feb X01  FIRST MIDTERM (7-9 p.m., Bartlett 65) on Lectures 1-15

PART II: Induction, Trees, and Searching

Wed 24 Feb L16  Recursive Definition (4.1)
Fri 26 Feb ---  NO DISCUSSION (makeup for exam)
Fri 26 Feb L17  Proof by Induction for Naturals (4.3)
Mon 29 Feb L18  Variations on Induction for Naturals (4.4)
Wed 02 Mar L19  Proving the Basic Facts of Arithmetic (4.6)
Thu 03 Mar ---  Last Day to Drop With W or Elect Pass/Fail 
Fri 04 Mar D06  Practicing Induction Proofs (not in book)
Fri 04 Mar L20  Strings and String Operations (4.7)
Mon 07 Mar L21  Induction for Problem Solving (4.11)
Wed 09 Mar L22  Graphs, Paths, and Trees (4.9, 9.1)
Fri 11 Mar D07  More Induction Practice (not in book)
Fri 11 Mar L23  Recursion on Trees (9.3)

SPRING BREAK

Mon 21 Mar L24  General, Breadth-First, and Depth-First Search (9.4, 9.5)
Wed 23 Mar L25  BFS and DFS on Graphs (9.6)
Fri 25 Mar D08  Boolean Expression Trees (9.2)
Fri 25 Mar L26  Uniform-Cost and A* Search (9.8, 9.9)
Mon 28 Mar L27  Games and Adversary Search (9.10)
Wed 30 Mar X02  SECOND MIDTERM (7-9 p.m., Marcus 131) 
                on Lectures 16-27

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

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

Final Exam (cumulative) Fri 29 Apr, 1:00-3:00 pm, Hasbrouck 20

Last modified 4 March 2016