COMPSCI 250: Spring 2021
Syllabus and Course Schedule
Instructors: Ghazaleh Parvini and Hia Ghosh
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. It is also available via eCampus.
PART I: Logic and Number Theory Mon 1 Feb L01 Sets and Strings (1.1, 1.2) Wed 3 Feb L02 Propositions and Boolean Operations (1.4) Fri 5 Feb D01 What is a Proof? (1.3) Fri 5 Feb L03 Set Operations and Truth Tables (1.5, 1.6) Mon 8 Feb L04 Rules for Propositional Proofs (1.7) Wed 10 Feb L05 Propositional Proof Strategies (1.8) Fri 12 Feb D02 A Murder Mystery (1.9) Fri 12 Feb L06 Predicates and Relations (1.10, 2.1) (END OF ADD/DROP) Mon 15 Feb L07 Quantifiers and Languages (2.3, 2.5) Wed 17 Feb L08 Proofs With Quantifiers (2.6) Fri 19 Feb D03 Conjunctive Normal Form Fri 19 Feb L09 Relations and Functions (2.8, 2.9) Mon 22 Feb L10 Equivalence Relations (2.10) Wed 24 Feb --- Wellbeing Wednesday - No Classes Fri 26 Feb D04 Practicing Proofs (2.7) Fri 26 Feb L11 Partial Orders (2.11) Mon 1 Mar L12 Divisibility and Primes (3.1) Wed 3 Mar L13 The Chinese Remainder Theorem (3.5) Fri 5 Mar D05 Infinitely Many Primes (3.4) Fri 5 Mar L14 The Fundamental Theorem of Arithmetic (3.6) PART II: Induction, Trees, and Searching Mon 8 Mar L15 Recursive Definition (4.1) Wed 10 Mar L16 Proof by Induction for Naturals (4.3) Thu 11 Mar X01 FIRST MIDTERM on Lectures 1-15 Fri 12 Mar D06 Practicing Induction Proofs Fri 12 Mar L17 Variations on Induction for Naturals (4.4) Mon 15 Mar L18 Induction for Problem Solving (4.11) Wed 17 Mar L19 Strings and String Operations (4.7) Fri 19 Mar D07 More Induction Practice Fri 19 Mar L20 Supplementary Induction Topics Mon 22 Mar L21 Graphs, Paths, and Trees (4.9, 9.1) Wed 24 Mar L22 Recursion on Trees (9.3) Fri 26 Mar D08 Boolean Expression Trees (9.2) Fri 26 Mar L23 General, Breadth-First, and Depth-First Search (9.4, 9.5) Mon 29 Mar L24 BFS and DFS on Graphs (9.6) Wed 31 Mar L25 Uniform-Cost and A* Search (9.8, 9.9) Fri 2 Apr D09 Comparing Graph Searches Fri 2 Apr L26 Games and Adversary Search (9.10) PART III: Regular Expressions, Finite-State Machines, and Computability Mon 5 Apr L27 Regular Expressions and Their Languages (5.1, 5.2) Wed 7 Apr L28 Proving Regular Language Identities (5.4) Thu 8 Apr X02 SECOND MIDTERM on Lectures 15-26 Fri 9 Apr D10 Designing Regular Expressions (5.3) Fri 9 Apr L29 Proving Properties of the Regular Languages (5.5) Mon 12 Apr L30 What DFA's Can and Can't Do (14.1, 14.2) Wed 14 Apr --- Wellbeing Wednesday - No Classes Fri 16 Apr D11 Minimizing DFA's (14.3) Fri 16 Apr L31 The Myhill-Nerode Theorem (14.3) Mon 19 Apr L32 NFA's and the Subset Construction (14.5, 14.6) Wed 21 Apr L33 Killing λ-moves: λ-NFA's to NFA's (14.7) Fri 23 Apr D12 Practicing Multiple Kleene Constructions (14.9) Fri 23 Apr L34 Constructing NFA's from Regular Expressions (14.8) Mon 26 Apr L35 State Elimination: NFA's to Regular Expressions (14.10) Wed 28 Apr L36 Two-Way Automata and Turing Machines (15.1, 15.6) Fri 30 Apr D13 Turing Machines Fri 30 Apr L37 Turing Machine Semantics (15.8) Mon 3 May L38 The Halting Problem and Unsolvability (15.10) Final Exam (cumulative), TBA, week of May 6- May 12.
Last modified January 28 2020