Resolution and CDCL
SAT is NP-complete (The Cook–Levin theorem) yet solvers handle millions of variables.
SAT is NP-complete (The Cook–Levin theorem) yet solvers handle millions of variables.
Reasoning about programs as a proof system; loop invariants as the hard part, and why they can't be inferred in general.
Programs are proofs, types are propositions, evaluation is proof simplification. The most beautiful idea in the series.
Why P vs NP has resisted for fifty years, stated as two theorems about which proof techniques cannot work.
SAT is NP-complete: circuits encode computation. The technical heart of the whole field.
Any sufficiently strong consistent system has true statements it can't prove, and can't prove its own consistency.
Any program can obtain its own source. Quines aren't a party trick; self-reference is guaranteed by the model.
No program decides termination for all programs. The ancestor of every other undecidability result.
Some infinities are bigger; there are more problems than programs. The proof technique that The Halting problem and Godel's incompleteness theorems both reuse.