The primary goal is to teach students to think mathematically and, importantly, to communicate their thinking to others using mathematical language. The emphasis is on the type of computational thinking needed to build and analyze systems for solving problems in real-world domains.

Students will be able to

- Use recursive thinking and pattern identification to analyze complex problems, games, puzzles, numerical sequences, algorithms, and more.
- Use the tools of mathematical logicâ€”truth tables, predicates, implicationsâ€”to reason about the world in a precise manner, to analyze arguments, to solve puzzles, and to better understand computer programming languages
- Communicate via fluent mathematical writing, and be able to both read and write mathematical proofs based on induction and contradiction.
- Apply their reasoning and proof skills to analyze properties of numbers, sequences, and other mathematical objects.
- Understand, analyze, and manipulate functions, relations, and sets, and connect these to the practical concepts of computer programs and data.
- Apply the tools of combinatorics to count the number of objects that satisfy some specified set of conditions.
- Understand and apply the basic rules of discrete probability to compute probabilities and expected values in games of chance and statistical sampling; appreciate the use of computer simulation for estimation of complex probabilities.
- Perform basic operations on—and analyze properties of—matrices and graphs, with application to Markov chains, puzzles, games, pathfinding problems, and social network models.

**Reading assignments** are from Ensley and Crawley: *
Discrete Mathematics: Mathematial Reasoning and Proof with
Puzzles, Patterns, and Games*

**Class meetings:** MW 2:30-3:45 in CS 140

**Exams (dates, times, and locations subject to change):**

- Midterm exam #1: October 17, 7-9pm, ILC S331
- Midterm exam #2: November 12, 7-9pm, ILC S331
- Final exam: December 13, 3:30-5:30pm, location TBD

**Class schedule (approximate and subject to revision):**

Week | Topics | Readings | Notes |
---|---|---|---|

Sep 2 | Course Overview; Number Puzzles and Sequences | Sec 1.2 | |

Sep 9 | Truth-tellers, Liars, and Propositional Logic; Predicates | Secs 1.3 and 1.4 | |

Sep 16 | Translating Predicates and Quantifiers; Implications | Secs 1.4 and 1.5 + Notes | Mon is end of Add/Drop |

Sep 23 | Brute-Force Search; Mathematical Writing; Proofs About Numbers | Secs 2.1 and 2.2 + Notes | |

Sep 30 | More Proofs About Numbers; Mathematical Induction | Secs 2.2 and 2.3 | Mon class moved to Tue (Columbus Day) |

Oct 7 | More Induction: Sums and Correctness Proofs | Secs 2.3 and 2.4 + Notes | |

Oct 14 | Sets | Secs 3.1-3.3 | Midterm 1 on Thurs; Also last day to drop with W or elect Pass/Fail (ugrads) |

Oct 21 | Functions and Relations | Secs 4.1-4.3 | |

Oct 28 | Combinatorics: Basic Rules for Counting | Secs 5.1 and 5.2 | |

Nov 4 | More Combinatorics; Security of Passwords | Secs 5.3 and 5.4 + Notes | |

Nov 11 | Intro to Probability | Sec 6.1 | No class on Mon (Veteran's Day); Midterm 2 on Tuesday |

Nov 18 | More probability: Games and Simulation | Secs 6.2 and 6.3 | |

Nov 25 | No Class This Week (Thanksgiving) | ||

Dec 2 | Graphs: Trees and Counting | Secs 7.1 and 7.2 | |

Dec 9 | Proofs About Graphs; Course Review | Sec 7.2 | Final Exam: Fri, Dec 13 3:30-5:30, LGRC A301 |

Last modified 23 August 2019