PE0003

least_prime_above_exists

Euclid unboundedness terminates the finite least-prime scan without any unbounded-search axiom.

Alpha v34 checked-use · first admitted v28 · independently kernel and Lean verified; not Stable

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.

Every successor is the globally least prime above its predecessor. This is not a sparse Bertrand chain. The bound theorem constructs the list and both power witnesses from k≠0 alone; the separate total-list theorem includes k=0.

Exact theorem in conservative defined notation

∀ a. ∃ p. NextPrime(a,p)

Every linked abbreviation expands hygienically to the identical original native formula.

Definition DAG

Actual proof prerequisites

prime_unbounded · checked external prerequisiteleast_prime_above_finite_scanlt_not_le · checked external prerequisitele_add_left · checked external prerequisite
Original expanded first-order statement
forall a. exists p. ((~(p = 1) /\ forall bpr_left_pc_pen_next_exists_prime bpr_right_pc_pen_next_exists_prime. p = bpr_left_pc_pen_next_exists_prime * bpr_right_pc_pen_next_exists_prime -> bpr_left_pc_pen_next_exists_prime = 1 \/ bpr_right_pc_pen_next_exists_prime = 1)) /\ ((exists pc_lt_pen_next_exists_greater. pc_lt_pen_next_exists_greater + S (a) = (p)) /\ forall pen_comparison_next_exists. ((~(pen_comparison_next_exists = 1) /\ forall bpr_left_pc_pen_next_exists_comparison bpr_right_pc_pen_next_exists_comparison. pen_comparison_next_exists = bpr_left_pc_pen_next_exists_comparison * bpr_right_pc_pen_next_exists_comparison -> bpr_left_pc_pen_next_exists_comparison = 1 \/ bpr_right_pc_pen_next_exists_comparison = 1)) -> (exists pc_lt_pen_next_exists_above. pc_lt_pen_next_exists_above + S (a) = (pen_comparison_next_exists)) -> (exists pc_le_pen_next_exists_minimal. pc_le_pen_next_exists_minimal + (p) = (pen_comparison_next_exists)))

Complete tactic proof in conservative notation

All 25 original proof lines are preserved. Only local proposition formulas are abbreviated; every abbreviation has an exact binder-safe expansion check. The linked exact edition contains the unchanged replay script.

Read the argument

Proof checkpoints

25 script commands · 9 reading checkpoints · 3 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.

Definition notation is shown below. Open the paired exact edition for the original native formulas. Source pairing is not a new equivalence certificate.

Named ingredients (1)
01Fix variables and assumptionsL1–1

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

  1. L1
    intro a
02Establish huL2–4

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

  1. L2
    have hu : ∃ p. Lt(a,p) ∧ Prime(p)Definitions: Lt(a,p)Prime(p)Original native command in the exact edition
  2. L3
    specialize prime_unbounded a
  3. L4
    apply prime_unbounded
03Separate the logical casesL5–6

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

  1. L5
    cases hu
  2. L6
    cases hu_witness
04Establish hsL7–10

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

  1. L7
    have hs : (∃ y. NextPrime(a,y)) ∨ (∀ y. Prime(y) → Lt(a,y) → Lt(a + x,y))Definitions: NextPrime(a,y)Prime(y)Lt(a,y)Lt(a + x,y)Original native command in the exact edition
  2. L8
    specialize least_prime_above_finite_scan a
  3. L9
    specialize least_prime_above_finite_scan x
  4. L10
    apply least_prime_above_finite_scan
05Separate the logical casesL11–11

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

  1. L11
    cases hs
06Use earlier factsL12–12

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

  1. L12
    exact hs_left
07Separate the logical casesL13–13

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

  1. L13
    exfalso
08Establish hltL14–23

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

  1. L14
  2. L15
    specialize hs_right x
  3. L16
    apply hs_right
  4. L17
    exact hu_witness_right
  5. L18
    exact hu_witness_left
  6. L19
    specialize lt_not_le (a + x)
  7. L20
    specialize lt_not_le x
  8. L21
    apply lt_not_le
  9. L22
    exact hlt
  10. L23
    specialize le_add_left x
09Use earlier factsL24–25

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

  1. L24
    specialize le_add_left a
  2. L25
    apply le_add_left

Library-wide reading audit

Original defined command ledger · 25 lines
  1. 0001intro a
  2. 0002have hu : ∃ p. Lt(a,p)Prime(p)
  3. 0003specialize prime_unbounded a
  4. 0004apply prime_unbounded
  5. 0005cases hu
  6. 0006cases hu_witness
  7. 0007have hs : (∃ y. NextPrime(a,y)) ∨ (∀ y. Prime(y)Lt(a,y)Lt(a + x,y))
  8. 0008specialize least_prime_above_finite_scan a
  9. 0009specialize least_prime_above_finite_scan x
  10. 0010apply least_prime_above_finite_scan
  11. 0011cases hs
  12. 0012exact hs_left
  13. 0013exfalso
  14. 0014have hlt : Lt(a + x,x)
  15. 0015specialize hs_right x
  16. 0016apply hs_right
  17. 0017exact hu_witness_right
  18. 0018exact hu_witness_left
  19. 0019specialize lt_not_le (a + x)
  20. 0020specialize lt_not_le x
  21. 0021apply lt_not_le
  22. 0022exact hlt
  23. 0023specialize le_add_left x
  24. 0024specialize le_add_left a
  25. 0025apply le_add_left