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. 09
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. 11
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. 13
Lab 1: Technical Writing and Truth Tables
We review truth tables for describing logical operations and begin our first lab assignment in Google Colab.
Prep
Statements and Truth Tables
In Class
Lab 1: Technical Writing and Truth Tables

Week 2

M
Sep. 16
Working with Symbolic Logic
We introduce formal manipulations of logical expressions and work with the many ways to manipulate conditional statements.
Prep
Conditionals and Friends
In Class
Conditionals and Friends
W
Sep. 18
Sets and Set Operations
We introduce sets, set-builder notation, and operations for combining and measuring sets.
Learning Objectives
S1, S2
Prep
Sets
In Class
Sets
F
Sep. 20
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
S2
Prep
More on Sets
In Class
Lab 2: Inclusion-Exclusion
Due
Lab 1: Technical Writing and Truth Tables

Week 3

M
Sep. 23
Quantifiers and Predicate Logic
We discuss quantification of propositions over sets and how to apply logical operations to symbolic quantifiers.
Learning Objectives
L1, L2
Prep
Quantifiers and Predicate Logic
In Class
Quantifiers and Predicate Logic
W
Sep. 25
Logical Inference
We introduce logical inference as a formal method for drawing conclusions from a set of premises.
Learning Objectives
L3
Prep
More on Quantifiers and Logic
In Class
TBD
F
Sep. 27
Quiz 1
The first of four quizzes in which students have an opportunity to complete Learning Targets.
Due
Lab 2: Inclusion-Exclusion

Week 4

M
Sep. 30
Direct Proof and the Element Method
We introduce direct proofs, our first general technique for proving statements about mathematics and algorithms. We focus on the element method, which is used for proving that one set is a subset of another set.
Learning Objectives
PF1
Prep
Direct Proofs
In Class
TBD
W
Oct. 02
Cases, Contradictions, and Counterexamples
We introduce several additional proof techniques, as well as the practice of counterexamples for disproving incorrect implications.
Learning Objectives
PF2
Prep
Cases, Contradictions, and Counterexamples
F
Oct. 04
Lab 3: Proof Practice
We practice proving mathematical statements using a variety of techniques.
Learning Objectives
PF1, PF2
Prep
Proof Style
In Class
Lab 3: Proof Practice

Week 5

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

Week 6

M
Oct. 14
Relations
We introduce relations, with a special focus on equivalence relations on sets.
Learning Objectives
FR1
Prep
Relations
W
Oct. 16
TBD
TBD
Learning Objectives
TBD
Prep
TBD
F
Oct. 18
Quiz 2
The second of four quizzes in which students have an opportunity to complete Learning Targets.
Due
Lab 3: Proof Practice

Week 7

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

Week 8

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

Week 9

M
Nov. 04
Asymptotics and Big-Oh
We formally define big-oh notation and prove asymptotic descriptions of various functions.
Learning Objectives
R2
Prep
Asymptotics and Big-Oh Notation
W
Nov. 06
Analyzing Algorithms: The Tree Method
We use the tree method and other methods to estimate asymptotic runtimes of common algorithms.
Learning Objectives
R2
Prep
Analyzing Algorithms
F
Nov. 08
Quiz 3
The third of four quizzes in which students have an opportunity to complete Learning Targets.
Due
Lab 5: Gradient Descent

Week 10

M
Nov. 11
Graphs
We introduce graphs as models of data structures and connected systems.
Learning Objectives
G1
Prep
Graphs and Graph Theory
W
Nov. 13
Graphs
We continue our discussion of graphs with a focus on trees.
Learning Objectives
G1
Prep
More Graph Theory
F
Nov. 15
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
G1
Prep
Network Science
In Class
Lab 6: Introduction to Network Science

Week 11

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

Week 12

M
Nov. 25
No Class: Thanksgiving Break
W
Nov. 27
No Class: Thanksgiving Break
F
Nov. 29
No Class: Thanksgiving Break

Week 13

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

Week 14

M
Dec. 09
Quiz 4
Due
Lab 7: TBD
No matching items

Final Exam

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



© Phil Chodrow, 2024