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.
All displayed hypotheses are required. Powers and positive differences are actual existential outputs. The proof constructs second-order correction identities and iterates the prime step; no binomial expansion or LTE oracle is assumed. The 2-adic variants remain separate open targets.
Exact theorem in conservative defined notation
∀ p. ∀ b. ∀ n. ∀ B. ¬p = 1 ∧ (∀ x. ∀ y. p = x · y → x = 1 ∨ y = 1) → ¬Dvd(p,b) → Pow(b,n,B) → ¬Dvd(p,B)
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete tactic proof in conservative notation
All 51 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
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 (1)
01Fix variables and assumptionsL1–3
02Induction on nL4–9
03Establish hBL10–19
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply pow zero.
04Calculate and transport equalitiesL20–20
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L20
rewrite hB at hdiv
05Use earlier factsL21–21
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L21
exact hdiv
06Fix variables and assumptionsL22–26
07Establish hprevL27–34
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply pow successor decompose.
- L27
have hprev : ∃ r. Pow(b,n,r) ∧ B = r · bDefinitions: Pow(b,n,r)Original native command in the exact edition - L28
specialize pow_successor_decompose (b) - L29
specialize pow_successor_decompose (n) - L30
specialize pow_successor_decompose (S n) - L31
specialize pow_successor_decompose (B) - L32
apply pow_successor_decompose - L33
refl - L34
exact hpow
08Separate the logical casesL35–36
09Use earlier factsL37–41
10Fix variables and assumptionsL42–42
Work with arbitrary variables or the premises of the current implication.
- L42
intro hfactor
11Use earlier factsL43–49
12Calculate and transport equalitiesL50–50
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L50
rewrite hprev_witness_right at hdiv
13Use earlier factsL51–51
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L51
exact hdiv
Original defined command ledger · 51 lines
- 0001
intro p - 0002
intro b - 0003
intro n - 0004
induction n - 0005
intro B - 0006
intro hp - 0007
intro hnot - 0008
intro hpow - 0009
intro hdiv - 0010
have hB : B = 1 - 0011
specialize pow_zero (b) - 0012
specialize pow_zero (0) - 0013
specialize pow_zero (B) - 0014
apply pow_zero - 0015
refl - 0016
exact hpow - 0017
specialize lte_prime_nondivisor_one (p) - 0018
apply lte_prime_nondivisor_one - 0019
exact hp - 0020
rewrite hB at hdiv - 0021
exact hdiv - 0022
intro B - 0023
intro hp - 0024
intro hnot - 0025
intro hpow - 0026
intro hdiv - 0027
have hprev : ∃ r. Pow(b,n,r) ∧ B = r · b - 0028
specialize pow_successor_decompose (b) - 0029
specialize pow_successor_decompose (n) - 0030
specialize pow_successor_decompose (S n) - 0031
specialize pow_successor_decompose (B) - 0032
apply pow_successor_decompose - 0033
refl - 0034
exact hpow - 0035
cases hprev - 0036
cases hprev_witness - 0037
specialize prime_nondivisor_mul (p) - 0038
specialize prime_nondivisor_mul (x) - 0039
specialize prime_nondivisor_mul (b) - 0040
apply prime_nondivisor_mul - 0041
exact hp - 0042
intro hfactor - 0043
specialize IH (x) - 0044
apply IH - 0045
exact hp - 0046
exact hnot - 0047
exact hprev_witness_left - 0048
exact hfactor - 0049
exact hnot - 0050
rewrite hprev_witness_right at hdiv - 0051
exact hdiv