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 are MW 2:30-3:45 in CS 140. There are two midterm evening exams, as indicated.

The following class schedule is approximate and subject to revision:

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

Week 1 | Course Overview; First Examples; Number Puzzles and Sequences | Secs 1.1 and 1.2 | |

Week 2 | Truth-tellers, Liars, and Propositional Logic; Predicates | Secs 1.3 and 1.4 | |

Week 3 | Translating Predicates and Quantifiers; Implications | Secs 1.4 and 1.5 + Notes | |

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

week 5 | More Proofs About Numbers; Mathematical Induction | Secs 2.2 and 2.3 | |

Week 6 | More Induction: Sums and Correctness Proofs | Secs 2.3 and 2.4 + Notes | |

Week 7 | Sets: Definitions, Operations, Properties; Functions | Secs 3.1-3.3 and 4.1-4.2 | Midterm 1 |

Week 8 | More Functions; Relations; Intro to Combinatorics | Secs 4.3-4.5 and 5.1 | |

Week 9 | More Combinatorics: Counting and Binomial Theorem | Secs 5.2-5.4 | |

Week 10 | Security of Passwords; Probability | Secs 6.1-6.2 + Notes | Midterm 2 |

Week 11 | More probability: Games and Simulation | Secs 6.3-6.5 | |

Week 12 | No Class This Week (Thanksgiving) | ||

Week 13 | Matrices and Graphs | Secs 6.6 and 7.4 + Appendix B | |

Week 14 | More on Graphs: Trees, Counting and Proofs | Secs 7.1, 7.2, 7.4 | |

Week 15 | Graphs in Puzzles and Games; Course Review | Sec 7.5 | |

Week 16 | Final Exam |

Last modified 7 December 2018