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
forall a b n. (b + a) + n = n -> a + n = nEvery 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
0 occurrences
In local proof propositions
0 occurrences
Exact expanded native-PA statement
forall a b n. (b + a) + n = n -> a + n = nProof 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 (3)
01Fix variables and assumptionsL1–1
Work with arbitrary variables or the premises of the current implication.
- L1
intro a
02Induction on bL2–9
03Separate the logical casesL10–10
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L10
exfalso
04Use earlier factsL11–15
05Calculate and transport equalitiesL16–16
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L16
rewrite add_succ_left at h
06Use earlier factsL17–17
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L17
exact h
Original defined command ledger · 17 lines
- 0001
intro a - 0002
induction b - 0003
intro n - 0004
intro h - 0005
specialize zero_add a - 0006
rewrite zero_add at h - 0007
exact h - 0008
intro n - 0009
intro h - 0010
exfalso - 0011
specialize no_succ_add_fixed (b + a) - 0012
specialize no_succ_add_fixed n - 0013
apply no_succ_add_fixed - 0014
specialize add_succ_left b - 0015
specialize add_succ_left a - 0016
rewrite add_succ_left at h - 0017
exact h