Assumption Surfacing¶
Why It Matters¶
Hidden assumptions are the root of most reasoning failures. When conclusions turn out wrong, it's usually because an unstated assumption was false, not because the logic was faulty. Making assumptions explicit lets you evaluate their plausibility, test them independently, and know which conclusions collapse if an assumption fails.
The Key Move¶
When analyzing any system or argument, maintain a running list labeled "Assumptions." For each significant claim, ask: "What must be true for this to hold?" Write it down. For each assumption, ask: "How confident am I? How could I test this? What breaks if this is wrong?" Link conclusions to their dependencies.
Classic Application¶
Soundness proofs in verification. To prove a verification tool is sound (if it says "verified," the property truly holds), you must state all assumptions: the language semantics, the axioms, the property specification, the abstraction correctness. Hidden assumptions about, say, compiler behavior can invalidate the entire proof.
Surprising Application¶
Medical decision-making. A treatment recommendation rests on assumptions: disease diagnosis is correct, patient physiology is typical, drug interactions are known, compliance will be good. Making these explicit helps identify which to verify (run another test) versus accept (benefits exceed risk of being wrong).
Failure Modes¶
Assumption proliferation - listing everything imaginable rather than focusing on crucial, plausible-to-violate assumptions. False precision - stating assumptions at inappropriate specificity. Meta-regress - assumptions about assumptions about assumptions. Paralysis from discovering you can't prove foundational assumptions.
Go Deeper¶
Clarke & Wing, "Formal Methods: State of the Art and Future Directions" (1996); Lamport, "Who Builds a House without Drawing Blueprints?" (2015)