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
∀ p. Prime(p) → ∃ x. p = S S xEvery 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 p. ((~(p = 1) /\ forall qrbu_factor_left_prime_p qrbu_factor_right_prime_p. p = qrbu_factor_left_prime_p * qrbu_factor_right_prime_p -> qrbu_factor_left_prime_p = 1 \/ qrbu_factor_right_prime_p = 1)) -> exists k. p = S (S k)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 (2)
01Fix variables and assumptionsL1–2
02Establish hp0L3–8
03Establish hpsL9–12
04Separate the logical casesL13–13
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L13
cases hps
05Establish hx0L14–15
06Separate the logical casesL16–16
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L16
cases hp
07Use earlier factsL17–17
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L17
apply hp_left
08Calculate and transport equalitiesL18–20
09Establish hxsL21–24
10Separate the logical casesL25–25
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L25
cases hxs
11Construct an explicit witnessL26–26
Supply the displayed value, then prove that it has the required property.
- L26
exists x1
Original defined command ledger · 29 lines
- 0001
intro p - 0002
intro hp - 0003
have hp0 : ~(p = 0) - 0004
intro hpzero - 0005
specialize prime_nonzero p - 0006
apply prime_nonzero - 0007
exact hp - 0008
exact hpzero - 0009
have hps : exists k. p = S k - 0010
specialize nonzero_is_succ p - 0011
apply nonzero_is_succ - 0012
exact hp0 - 0013
cases hps - 0014
have hx0 : ~(x = 0) - 0015
intro hx0 - 0016
cases hp - 0017
apply hp_left - 0018
rewrite hps_witness - 0019
rewrite hx0 - 0020
refl - 0021
have hxs : exists k. x = S k - 0022
specialize nonzero_is_succ x - 0023
apply nonzero_is_succ - 0024
exact hx0 - 0025
cases hxs - 0026
exists x1 - 0027
rewrite hps_witness - 0028
rewrite hxs_witness - 0029
refl