CSE 331 Autumn 2025 Schedule

September
MondayTuesdayWednesdayThursdayFriday
Lecture
Procedural Abstraction
Lecture
Formal Specifications
Lecture
Testing
Section
HW1 start
Lecture
Calculation
Lecture
Proof by Cases
18:00 HW1 at home due
October
MondayTuesdayWednesdayThursdayFriday
Lab
HW1 in class
Video: Induction
Section
HW2 start
Lecture
Data Abstraction
Lecture
Abstraction Functions
18:00 HW2 at home due
Lab
HW2 in class
Video: Representation Invariants
Section
HW3 start
Lecture
Floyd Logic for Assignments
Lecture
Floyd Logic for Conditionals
18:00 HW3 at home due
Lab
HW3 in class
Video: Floyd Logic for Loops
Section
HW4 start
Lecture
Module Design
Lecture
Aliasing
18:00 HW4 at home due
Lab
HW4 in class
Video: Subclasses
Section
HW5 start
Lecture
Correctness of Immutable ADTs
Lecture
Correctness of Mutable ADTs
18:00 HW5 at home due
November
MondayTuesdayWednesdayThursdayFriday
Lab
HW5 in class
Video: Defensive Programming
Section
HW6 start
Lecture
Impossible by Design
Lecture
Rust Type System
18:00 HW6 at home due
Lab
HW6 in class
Video: TypeScript Type System
Veteran's Day
Lecture
Arrays
Lecture
Array Loops
18:00 HW7 at home due
Lab
HW7 in class
Video: Invariant to Code
Section
HW8 start
Lecture
Subtypes
Lecture
Generics
18:00 HW8 at home due
Lab
HW8 in class
Video: More Generics
Section
HW9 start
Day Before Thanksgiving
Thanksgiving
Native American Heritage Day
December
MondayTuesdayWednesdayThursdayFriday
Lecture
Drawing Array Invariants
18:00 HW9 at home due
Section
Final review
Lab
HW9 in class
Lecture
Tail Recursion
12:30-14:20 Final exam