Schedule

This schedule is tentative and subject to change.

Warmups are due every class day, even if they are not listed under the “Due” column.

Week 1

M
Sep. 11
Welcome!
We discuss the structure of the course and the role of mathematics in modern computation.
Learning Objectives
Getting Oriented
In Class
Welcome!
Due
Join EdStem and Gradescope.
W
Sep. 13
Mathematics and Me
We discuss our relationship to math and how we've learned what we've learned.
Learning Objectives
Getting Oriented
Prep
Math Autobiography
In Class
Mathematics and Me
F
Sep. 15
Lab 1: Technical Writing and Truth Tables
We review truth tables for describing logical operations and begin our first lab assignment in Google Colab.
Learning Objectives
Getting Oriented
Prep
Statements and Truth Tables
In Class
Lab 1: Technical Writing and Truth Tables

Week 2

M
Sep. 18
Working with Symbolic Logic
We introduce formal manipulations of logical expressions and work with the many ways to manipulate conditional statements.
Learning Objectives
Sets and Logic
Prep
Conditionals and Friends
In Class
Conditionals and Friends
W
Sep. 20
Sets and Set Operations
We introduce sets, set-builder notation, and operations for combining and measuring sets.
Learning Objectives
Sets and Logic
Prep
Sets
In Class
Sets
F
Sep. 22
Lab 2: Inclusion-Exclusion
We use the inclusion-exclusion formula and its generalizations to compute the cardinality of unions of sets. Along the way, we practice writing mathematical computations and performing computational experiments.
Learning Objectives
Sets and Logic
Prep
More on Sets
In Class
Lab 2: Inclusion-Exclusion
Due
Lab 1: Technical Writing and Truth Tables

Week 3

M
Sep. 25
Quantifiers and Predicate Logic
We discuss quantification of propositions over sets and how to apply logical operations to symbolic quantifiers.
Learning Objectives
Sets and Logic
Prep
Quantifiers and Predicate Logic
In Class
Quantifiers and Predicate Logic
W
Sep. 27
Further Topics: Logic and Sets
We introduce logical deduction and review topics from the course so far.
Learning Objectives
Sets and Logic
Proof
Prep
More on Quantifiers and Logic
In Class
TBD
F
Sep. 29
Quiz 1
The first of four quizzes in which students have an opportunity to complete Learning Targets. This quiz includes targets LS1, LS2, and LS3.
Due
Lab 2: Inclusion-Exclusion

Week 4

M
Oct. 02
Direct Proofs
We introduce direct proofs, our first general technique for proving statements about mathematics and algorithms.
Learning Objectives
Proof techniques
Prep
Direct Proofs
In Class
TBD
W
Oct. 04
Cases, Contradictions, and Counterexamples
We introduce several additional proof techniques, as well as the practice of counterexamples for disproving incorrect implications.
Learning Objectives
Proof techniques
Prep
Cases, Contradictions, and Counterexamples
F
Oct. 06
Lab 3: Proof Practice
We practice proving mathematical statements using a variety of techniques.
Learning Objectives
Proof techniques
Prep
Proof Style
In Class
Lab 3: Proof Practice

Week 5

M
Oct. 09
Induction
We introduce mathematical induction, a powerful proof technique for demonstrating that a claim is true for infinitely many cases.
Learning Objectives
Proof techniques
Prep
Introduction to Induction
W
Oct. 11
More Induction
We broaden our usage of induction to use strong induction and to write inductive proofs for the correctness of functions.
Learning Objectives
Proof techniques
Prep
More Induction
F
Oct. 13
No Class: Midterm Recess
Due
Lab 3: Proof Practice

Week 6

M
Oct. 16
Relations
We introduce relations, with a special focus on equivalence relations on sets.
Learning Objectives
Relations and functions
Prep
Relations
W
Oct. 18
Functions
We introduce functions, with a focus on recursive definitions of functions.
Learning Objectives
Relations and functions
Prep
Functions
F
Oct. 20
Quiz 2
The second of four quizzes in which students have an opportunity to complete Learning Targets. This quiz includes targets LS1, LS2, LS3, PF1, PF2, and FR1.
Due
Lab 3: Proof Practice

Week 7

M
Oct. 23
Counting
We use the principles of addition, multiplication, and inclusion-exclusion to solve counting problems.
Learning Objectives
Counting
Prep
Counting
In Class
Counting Activity
W
Oct. 25
Permutations and Combinations
We use permutations and combinations to count possibilities in situations involving rearrangement and subset-selection.
Learning Objectives
Counting
Prep
Permutations and Combinations
F
Oct. 27
Lab 4: Counting Lattice Paths
We use binomial coefficients and Python programming to efficiently compute the number of paths through grids.
Learning Objectives
Counting
Prep
Counting Lattice Paths
In Class
Lab 4: Counting Lattice Paths

Week 8

M
Oct. 30
Recursion and Recurrence Relations
We introduce recurrence relations and simple methods for solving them.
Learning Objectives
Recurrence Relations
Prep
Recursion and Recurrence Relations
In Class
Tower of Hanoi
W
Nov. 01
Recursion and Recurrence Relations
We practice writing recurrence relations to describe quantities of interest and develop further techniques to solve them.
Prep
More Recursion and Recurrence Relations
In Class
Parking Spaces
F
Nov. 03
Lab 5: Analyzing Gradient Descent
We use recurrence relations to analyze the runtime of an algorithm for minimizing a function.
Prep
Numerical Algorithms
In Class
Lab 5: Analyzing Gradient Descent
Due
Lab 4: Counting Lattice Paths

Week 9

M
Nov. 06
Asymptotics and Big-Oh
We formally define big-oh notation and prove asymptotic descriptions of various functions.
Learning Objectives
Asymptotics
Prep
Asymptotics and Big-Oh Notation
W
Nov. 08
Analyzing Algorithms: The Tree Method
We use the tree method and other methods to estimate asymptotic runtimes of common algorithms.
Learning Objectives
Asymptotics
Prep
Analyzing Algorithms
F
Nov. 10
Graphs
We introduce graphs as models of data structures and connected systems.
Learning Objectives
Graph Theory
Prep
Graphs and Graph Theory
Due
Lab 5: Gradient Descent

Week 10

M
Nov. 13
Quiz 3
The third of four quizzes in which students have an opportunity to complete Learning Targets. This quiz includes targets LS1, LS2, LS3, PF1, PF2, FR1, C1, C2, and R1.
W
Nov. 15
Graphs
We continue our discussion of graphs with a focus on trees.
Learning Objectives
Graph Theory
Prep
More Graph Theory
F
Nov. 17
Lab 6: Triangle-Counting
We study the adjacency matrix of a graph and use it to count the number of triangles in real and synthetic graph data sets.
Learning Objectives
Graph Theory
Prep
Network Science
In Class
Lab 6: Introduction to Network Science

Week 11

M
Nov. 27
Introducing Discrete Probability
We introduce discrete probability through a discussion of a famous problem.
Learning Objectives
Probability
Prep
Introducing Discrete Probability
W
Nov. 29
Sample Spaces and Conditional Probability
We introduce formal discrete probability theory via sample spaces. We also introduce conditional probability.
Learning Objectives
Probability
Prep
Sample Spaces, Conditional Probability
In Class
Sample Spaces, Conditional Probability
F
Dec. 01
Lab 7: TBD
Learning Objectives
Probability
Due
Lab 6: TBD

Week 12

M
Dec. 04
Bayes' Theorem
We continue our discussion of conditional probability and introduce Bayes' Theorem.
Learning Objectives
Probability
Prep
Conditional Probability and Bayes' Theorem
In Class
Bayes' Rule and DNA Testing
W
Dec. 06
Random Variables and Expectation
We define random variables and compute the expected value of simple random variables.
Learning Objectives
Probability
Prep
Random variables and expectation
In Class
TBD
F
Dec. 08
Quiz 4
Due
Lab 7: TBD

Week 13

M
Dec. 11
Flex, Review
No matching items

Final Exam

Our final exam will be another quiz covering all twelve core Learning Targets. So, it’s just like Quiz 4, except you’ll have 3 hours instead of 50 minutes.



© Phil Chodrow, 2023