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
∀ s. Lt(s · s,S s · S s)Every 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
2 occurrences
Exact expanded native-PA statement
forall s. exists k. k + S (s * s) = S s * S sProof neighborhood
Direct theorem prerequisites
BT000X le_succ_self BT001M mul_le_mul_right BT000C succ_ne_zero BT001N mul_lt_mul_succ_left_nonzero BT001E lt_of_le_of_ltDirect 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 (5)
01Fix variables and assumptionsL1–1
Work with arbitrary variables or the premises of the current implication.
- L1
intro s
02Establish hleftL2–4
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply mul le mul right.
- L2
have hleft : Le(s · s,S s · s)Definitions: Le(s · s,S s · s)Original native command in the exact edition - L3
apply mul_le_mul_right - L4
apply le_succ_self
03Establish hrightL5–14
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply mul lt mul succ left nonzero.
- L5
have hright : Lt(S s · s,S s · S s)Definitions: Lt(S s · s,S s · S s)Original native command in the exact edition - L6
apply mul_lt_mul_succ_left_nonzero - L7
intro hz - L8
specialize succ_ne_zero s - L9
apply succ_ne_zero - L10
exact hz - L11
specialize lt_of_le_of_lt (s * s) - L12
specialize lt_of_le_of_lt (S s * s) - L13
specialize lt_of_le_of_lt (S s * S s) - L14
apply lt_of_le_of_lt
Original defined command ledger · 16 lines
- 0001
intro s - 0002
have hleft : Le(s · s,S s · s)Exact native replay line
have hleft : exists k. k + s * s = S s * s - 0003
apply mul_le_mul_right - 0004
apply le_succ_self - 0005
have hright : Lt(S s · s,S s · S s)Exact native replay line
have hright : exists k. k + S (S s * s) = S s * S s - 0006
apply mul_lt_mul_succ_left_nonzero - 0007
intro hz - 0008
specialize succ_ne_zero s - 0009
apply succ_ne_zero - 0010
exact hz - 0011
specialize lt_of_le_of_lt (s * s) - 0012
specialize lt_of_le_of_lt (S s * s) - 0013
specialize lt_of_le_of_lt (S s * S s) - 0014
apply lt_of_le_of_lt - 0015
exact hleft - 0016
exact hright