Reading assignments are from David Mix Barrington: A Mathematical Foundation for Computer Science (revised preliminary edition, 2020), available as an e-book from Kendall Hunt.
PART I: Logic and Number Theory Mon 24 Aug L01 Sets and Strings (1.1, 1.2) Wed 26 Aug L02 Propositions and Boolean Operations (1.4) Wed 26 Aug D01 What is a Proof? (1.3) Fri 28 Aug L03 Set Operations and Truth Tables (1.5, 1.6) Mon 31 Aug L04 Rules for Propositional Proofs (1.7) Wed 02 Sep L05 Propositional Proof Strategies (1.8) Wed 02 Sep D02 A Murder Mystery (1.9) Fri 04 Sep L06 Predicates and Relations (1.10, 2.1) (END OF ADD/DROP) Mon 07 Sep L07 Quantifiers and Languages (2.3, 2.5) Wed 09 Sep L08 Proofs With Quantifiers (2.6) Wed 09 Sep D03 Conjunctive Normal Form Fri 11 Sep L09 Relations and Functions (2.8, 2.9) Mon 14 Sep L10 Equivalence Relations (2.10) Wed 16 Sep L11 Partial Orders (2.11) Wed 16 Sep D04 Practicing Proofs (2.7) Fri 18 Sep L12 Divisibility and Primes (3.1) Mon 21 Sep L13 Modular Arithmetic (3.3) Wed 23 Sep L14 The Chinese Remainder Theorem (3.5) Wed 23 Sep D05 Infinitely Many Primes (3.4) Fri 25 Sep L15 The Fundamental Theorem of Arithmetic (3.6) PART II: Induction, Trees, and Searching Mon 28 Sep L16 Recursive Definition (4.1) Wed 30 Sep L17 Proof by Induction for Naturals (4.3) Wed 30 Sep D06 Practicing Induction Proofs Thu 01 Oct X01 FIRST MIDTERM on Lectures 1-15 Fri 02 Oct L18 Variations on Induction for Naturals (4.4) Mon 05 Oct L19 Induction for Problem Solving (4.11) Wed 07 Oct L20 Strings and String Operations (4.7) Wed 07 Oct D07 More Induction Practice Fri 09 Oct L21 Supplementary Induction Topics Mon 12 Oct L22 Graphs, Paths, and Trees (4.9, 9.1) Wed 14 Oct L23 Recursion on Trees (9.3) Wed 14 Oct D08 Boolean Expression Trees (9.2) Fri 16 Oct L24 General, Breadth-First, and Depth-First Search (9.4, 9.5) Mon 19 Oct L25 BFS and DFS on Graphs (9.6) Wed 21 Oct L26 Uniform-Cost and A* Search (9.8, 9.9) Wed 21 Oct D09 Comparing Graph Searches Fri 23 Oct L27 Games and Adversary Search (9.10) PART III: Regular Expressions, Finite-State Machines, and Computability Mon 26 Oct L28 Regular Expressions and Their Languages (5.1, 5.2) Wed 28 Oct L29 Proving Regular Language Identities (5.4) Wed 28 Oct D10 Designing Regular Expressions (5.3) Thu 29 Oct X02 SECOND MIDTERM on Lectures 16-27 Fri 30 Oct L30 Proving Properties of the Regular Languages (5.5) Mon 02 Nov L31 What DFA's Can and Can't Do (14.1, 14.2) Wed 04 Nov L32 The Myhill-Nerode Theorem (14.3) Wed 04 Nov D11 Minimizing DFA's (14.3) Fri 06 Nov L33 NFA's and the Subset Construction (14.5, 14.6) Mon 09 Nov L34 Killing λ-moves: λ-NFA's to NFA's (14.7) Wed 11 Nov L35 Constructing NFA's from Regular Expressions (14.8) Wed 11 Nov D12 Practicing Multiple Kleene Constructions (14.9) Fri 13 Nov L36 State Elimination: NFA's to Regular Expressions (14.10) Mon 16 Nov L37 Two-Way Automata and Turing Machines (15.1, 15.6) Wed 18 Nov L38 Turing Machine Semantics (15.8) Wed 18 Nov D13 Turing Machines Fri 20 Nov L39 The Halting Problem and Unsolvability (15.10) Final Exam (cumulative), TBA, week of 30 Nov - 4 Dec.
Last modified 12 November 2020