BT00AW

prime_is_succ_succ

Stable checked-use theorem · independently kernel verified

Every prime natural is the second successor of a natural.

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.

Exact expanded 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)

Structural proof guide

Every prime natural is the second successor of a natural.

Direct prerequisites: prime_nonzero, nonzero_is_succ. The authored body proceeds by case analysis (3), intermediate claims (4), equality transport (4).

Proof neighborhood

Direct dependencies

Direct dependents

Formal native tactic body

Dependencies are hypotheses of the historical Alpha-v12 body receipt. The complete historical Alpha-v18 proof bundle independently checks every dependency; current Alpha v25 preserves that checked theorem use without changing Stable membership.

Read the argument

Proof checkpoints

29 script commands · 12 reading checkpoints · 4 local claims

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

Work with arbitrary variables or the premises of the current implication.

  1. L1
    intro p
  2. L2
    intro hp
02Establish hp0L3–8

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply prime nonzero.

  1. L3
    have hp0 : ~(p = 0)
  2. L4
    intro hpzero
  3. L5
    specialize prime_nonzero p
  4. L6
    apply prime_nonzero
  5. L7
    exact hp
  6. L8
    exact hpzero
03Establish hpsL9–12

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply nonzero is succ.

  1. L9
    have hps : exists k. p = S k
  2. L10
    specialize nonzero_is_succ p
  3. L11
    apply nonzero_is_succ
  4. L12
    exact hp0
04Separate the logical casesL13–13

Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.

  1. L13
    cases hps
05Establish hx0L14–15

Establish this local claim before using it. It is not an additional assumption.

  1. L14
    have hx0 : ~(x = 0)
  2. L15
    intro hx0
06Separate the logical casesL16–16

Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.

  1. L16
    cases hp
07Use earlier factsL17–17

Instantiate or apply named facts and discharge the corresponding proof obligations.

  1. L17
    apply hp_left
08Calculate and transport equalitiesL18–20

Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.

  1. L18
    rewrite hps_witness
  2. L19
    rewrite hx0
  3. L20
    refl
09Establish hxsL21–24

Establish this local claim before using it. It is not an additional assumption. The following proof commands apply nonzero is succ.

  1. L21
    have hxs : exists k. x = S k
  2. L22
    specialize nonzero_is_succ x
  3. L23
    apply nonzero_is_succ
  4. L24
    exact hx0
10Separate the logical casesL25–25

Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.

  1. L25
    cases hxs
11Construct an explicit witnessL26–26

Supply the displayed value, then prove that it has the required property.

  1. L26
    exists x1
12Calculate and transport equalitiesL27–29

Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.

  1. L27
    rewrite hps_witness
  2. L28
    rewrite hxs_witness
  3. L29
    refl

Library-wide reading audit

Original exact command ledger · 29 lines
  1. 0001intro p
  2. 0002intro hp
  3. 0003have hp0 : ~(p = 0)
  4. 0004intro hpzero
  5. 0005specialize prime_nonzero p
  6. 0006apply prime_nonzero
  7. 0007exact hp
  8. 0008exact hpzero
  9. 0009have hps : exists k. p = S k
  10. 0010specialize nonzero_is_succ p
  11. 0011apply nonzero_is_succ
  12. 0012exact hp0
  13. 0013cases hps
  14. 0014have hx0 : ~(x = 0)
  15. 0015intro hx0
  16. 0016cases hp
  17. 0017apply hp_left
  18. 0018rewrite hps_witness
  19. 0019rewrite hx0
  20. 0020refl
  21. 0021have hxs : exists k. x = S k
  22. 0022specialize nonzero_is_succ x
  23. 0023apply nonzero_is_succ
  24. 0024exact hx0
  25. 0025cases hxs
  26. 0026exists x1
  27. 0027rewrite hps_witness
  28. 0028rewrite hxs_witness
  29. 0029refl