Current library: Alpha v34, 4,223 checked-use theorems; Stable remains 432. Historical first admissions, original proof editions, and non-admitted aliases are preserved. Exact original first-admission records.
Statement with defined notation
∀ r. ∀ m. ∀ a. ∀ b. Lt(r,m) → ¬r = a + m + bEvery purple notation token opens its conservative definition. Expanding the displayed statement recovers the exact first-order Peano-arithmetic formula checked by the unchanged kernel.
Definitions used by this theorem
In the theorem statement
1 occurrences
In local proof propositions
0 occurrences
Exact expanded native-PA statement
forall r m a b. (exists k. k + S r = m) -> ~(r = (a + m) + b)Proof neighborhood
Direct theorem prerequisites
Direct theorem dependents
Definition-aware tactic body
Only local propositions introduced by have or suffices are compacted. Every changed line has an exact-AST conservative-expansion receipt; the kernel still receives the immutable original tactic script.
Read the argument
Proof checkpoints
This is a reading aid, not a new proof or a proof-tree certificate. Checkpoint groups are consecutive commands, not inferred branch boundaries. Every step links to the preserved script.
Named ingredients (1)
01Establish hbadL1–2
02Induction on zL3–12
03Use earlier factsL13–13
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L13
specialize add_succ_left b
04Calculate and transport equalitiesL14–14
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L14
rewrite add_succ_left at hz
05Use earlier factsL15–15
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L15
exact hz
06Fix variables and assumptionsL16–19
07Use earlier factsL20–24
08Calculate and transport equalitiesL25–26
09Use earlier factsL27–28
10Calculate and transport equalitiesL29–29
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L29
rewrite add_succ_left at hz
11Use earlier factsL30–30
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L30
exact hz
12Fix variables and assumptionsL31–36
13Separate the logical casesL37–37
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L37
cases hr
14Use earlier factsL38–42
15Calculate and transport equalitiesL43–43
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L43
rewrite <- hr_witness at heq
16Use earlier factsL44–44
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L44
exact heq
Original defined command ledger · 44 lines
- 0001
have hbad : forall z a w b. ~(z = (a + (w + S z)) + b) - 0002
intro z - 0003
induction z - 0004
intro a - 0005
intro w - 0006
intro b - 0007
intro hz - 0008
apply PA1 - 0009
symm - 0010
rewrite PA4 at hz - 0011
rewrite PA4 at hz - 0012
specialize add_succ_left (a + (w + 0)) - 0013
specialize add_succ_left b - 0014
rewrite add_succ_left at hz - 0015
exact hz - 0016
intro a - 0017
intro w - 0018
intro b - 0019
intro hz - 0020
specialize IH a - 0021
specialize IH w - 0022
specialize IH b - 0023
apply IH - 0024
apply PA2 - 0025
rewrite PA4 at hz - 0026
rewrite PA4 at hz - 0027
specialize add_succ_left (a + (w + S z)) - 0028
specialize add_succ_left b - 0029
rewrite add_succ_left at hz - 0030
exact hz - 0031
intro r - 0032
intro m - 0033
intro a - 0034
intro b - 0035
intro hr - 0036
intro heq - 0037
cases hr - 0038
specialize hbad r - 0039
specialize hbad a - 0040
specialize hbad x - 0041
specialize hbad b - 0042
apply hbad - 0043
rewrite <- hr_witness at heq - 0044
exact heq