CS 227 — Interactive Readings

Short readings with activities you work as you go — one per class session. Each activity gives instant, targeted feedback (with answer options shuffled each visit), and your progress is saved in this browser. Every reading ends with an Exam practice section (easy / medium / challenge) for review.

1 · Why prove?

Testing vs. verification; the greedy-scheduling motivation; counterexamples.

5 activities · interactive greedy explorer · 12 exam-practice problems

2 · Conditions and Types

Predicates, types, arguments, arity.

5 activities · 15 exam-practice problems

3 · Truth, Entailment, and Complementation

Satisfiable / falsifiable / tautological / contradictory; entailment; complements.

5 activities · 18 exam-practice problems

4 · Sets, Functions, and Basic Counting

Ordered tuples and Cartesian products; the product rule and sum rule; functions and strings.

7 activities · 18 exam-practice problems

5 · Permutations and Combinations

Selections without repetition; factorials; ordered versus unordered outcomes; permutations and combinations.

11 activities · 20 exam-practice problems

6 · Predicate Logic and Formalization

∀ and ∃; English↔logic; ∀-with-→ / ∃-with-∧; quantifier order.

11 activities · includes matching · 25 exam-practice problems

7 · Implication, up close

Truth conditions; vacuous truth; the converse.

6 activities · 12 exam-practice problems

8 · Proofs I: Instantiation and Detachment

The Known/Goal method; using what you know — with a guided proof builder.

5 activities · guided proof · 24 exam-practice problems

9 · Proofs II: Make-believe and Generalization

Attacking the goal; proving implications and universals.

5 activities · Parsons · 24 exam-practice problems

10 · Algebra in Proofs

Equational reasoning and algebra as legal steps; proving mathematical facts.

5 activities · Parsons · 23 exam-practice problems

11 · Structural Induction on Strings and Trees

Inductively-defined objects; constructors → recursion → structural induction.

5 activities · interactive tree + Parsons · 30 exam-practice problems

12 · Induction on the Natural Numbers

ℕ as the simplest inductive structure; the base/step rule; closed forms.

8 activities · recursion widget + Parsons · 29 exam-practice problems

13 · Existentials and Conjunction

Existential generalization, naming a witness, the rules for “and.”

10 activities · Parsons · 27 exam-practice problems

14 · Eventuality

“Eventually greater than”; the ∃-then-∀ pattern; transitivity and thresholds.

5 activities · 16 exam-practice problems

15 · Negation and Refutation

Pushing ¬ through quantifiers and →; refuting by counterexample.

5 activities · includes matching · 16 exam-practice problems

16 · Disjunction, DeMorgan, and Cases

DeMorgan; proving vs. using “or”; proof by cases; a constructor as a disjunction.

6 activities · 19 exam-practice problems

17 · Proof by Contradiction

Assume the opposite; parity arguments; non-existence claims.

6 activities · Parsons · 25 exam-practice problems

18 · Max, Min, and Tree Height

Max/min axioms; max<z ↔ ∧, min<z ↔ ∨; tree height as max.

6 activities · 24 exam-practice problems

Built to sit alongside the class notes (book.tex), the guided-inquiry activities, and the in-class problem sets. Readings are consolidation and practice — assign each one after its class activity so it doesn’t pre-empt the in-class discovery. Logical connectives appear only after they’re introduced in class (∀/∃/∧/→ from Reading 6; negation from 15; ∨, DeMorgan, and proof by cases from 16; contradiction from 17). Structural induction (11) precedes induction on ℕ (12). The Exam-practice sections (384 problems in all) are not graded and don’t affect the progress bar.