Skip to main content
OCMEBilingual mathematics & derivations繁體中文

OCME · Bilingual mathematics & derivations

Concept derivation guides

299 concept teaching guides, separate from the 36,000 individual question derivations.

Search all questions & derivations →

Concept guide

Formal statements in a proof assistant: reading a Lean statement layer by layer and separating 'is a statement' from 'is proved'

Take the source string s: `∀ (a b : Nat), a ≤ b → a < b + 1` as a teaching object and, in an environment E that is fixed explicitly but never executed, explain layer by layer: its bound variables and their types, its hypothesis and conclusion, the core term S that elaboration would have to produce if it succeeded, why S would have type Prop, and what a proof term would have to establish; then give an informal proof of its mathematical content and contrast it with s′: `∀ (a : Nat), a - 1 < a` (a Prop, but false) and s″: `∀ (a : Int), a - 1 < a` (true). Lean is not run at any point, and nothing here claims that any text parses, elaborates, compiles or is proved by Lean.

Formal statements in a proof assistant

derivation-mko-lean-formal-statement-01