Current library: Alpha v34, 4,223 checked-use theorems; Stable remains 432. Historical first admissions, original proof editions, and non-admitted aliases are preserved.
Mobius(n,z) is positive-domain only, independently defined from squarefreeness and actual prime-factor parity. Signed codes 0, 2 and 1 represent zero, +1 and -1. This family proves values and prime-adjunction laws; the separate Möbius-inversion family supplies the complete G007 endpoint.
Exact theorem in conservative defined notation
∀ n. ∀ b. ∀ c. ∀ l. ∀ p. PrimeFactorList(n,b,c,l) → Prime(p) → ∃ x. ∃ y. PrimeFactorList(n · p,x,y,S l)
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete tactic proof in conservative notation
All 53 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.
01Fix variables and assumptionsL1–7
02Separate the logical casesL8–9
03Establish hextL10–17
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply beta factor prefix product append.
- L10
have hext : ∃ d. ∃ e. BetaAt(d,e,l,p) ∧ ((∀ x. ∀ y. Lt(x,l) → BetaAt(b,c,x,y) → BetaAt(d,e,x,y)) ∧ Product(d,e,S l,n · p))Definitions: BetaAt(d,e,l,p)Lt(x,l)BetaAt(b,c,x,y)BetaAt(d,e,x,y)Product(d,e,S l,n · p)Original native command in the exact edition - L11
specialize beta_factor_prefix_product_append (b) - L12
specialize beta_factor_prefix_product_append (c) - L13
specialize beta_factor_prefix_product_append (l) - L14
specialize beta_factor_prefix_product_append (n) - L15
specialize beta_factor_prefix_product_append (p) - L16
apply beta_factor_prefix_product_append - L17
exact hf_right_left
04Separate the logical casesL18–21
05Construct an explicit witnessL22–23
06Separate the logical casesL24–24
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L24
split
07Fix variables and assumptionsL25–25
Work with arbitrary variables or the premises of the current implication.
- L25
intro hz
08Use earlier factsL26–29
09Fix variables and assumptionsL30–30
Work with arbitrary variables or the premises of the current implication.
- L30
intro hpz
10Use earlier factsL31–35
11Separate the logical casesL36–36
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L36
split
12Use earlier factsL37–46
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L37
exact hext_witness_witness_right_right - L38
specialize all_prime_succ_intro (x) - L39
specialize all_prime_succ_intro (x1) - L40
specialize all_prime_succ_intro (l) - L41
specialize all_prime_succ_intro (p) - L42
apply all_prime_succ_intro - L43
specialize all_prime_transport (b) - L44
specialize all_prime_transport (c) - L45
specialize all_prime_transport (x) - L46
specialize all_prime_transport (x1)
13Use earlier factsL47–50
14Separate the logical casesL51–51
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L51
split
Original defined command ledger · 53 lines
- 0001
intro n - 0002
intro b - 0003
intro c - 0004
intro l - 0005
intro p - 0006
intro hf - 0007
intro hp - 0008
cases hf - 0009
cases hf_right - 0010
have hext : ∃ d. ∃ e. BetaAt(d,e,l,p) ∧ ((∀ x. ∀ y. Lt(x,l) → BetaAt(b,c,x,y) → BetaAt(d,e,x,y)) ∧ Product(d,e,S l,n · p)) - 0011
specialize beta_factor_prefix_product_append (b) - 0012
specialize beta_factor_prefix_product_append (c) - 0013
specialize beta_factor_prefix_product_append (l) - 0014
specialize beta_factor_prefix_product_append (n) - 0015
specialize beta_factor_prefix_product_append (p) - 0016
apply beta_factor_prefix_product_append - 0017
exact hf_right_left - 0018
cases hext - 0019
cases hext_witness - 0020
cases hext_witness_witness - 0021
cases hext_witness_witness_right - 0022
exists x - 0023
exists x1 - 0024
split - 0025
intro hz - 0026
specialize mul_ne_zero (n) - 0027
specialize mul_ne_zero (p) - 0028
apply mul_ne_zero - 0029
exact hf_left - 0030
intro hpz - 0031
specialize prime_nonzero (p) - 0032
apply prime_nonzero - 0033
exact hp - 0034
exact hpz - 0035
exact hz - 0036
split - 0037
exact hext_witness_witness_right_right - 0038
specialize all_prime_succ_intro (x) - 0039
specialize all_prime_succ_intro (x1) - 0040
specialize all_prime_succ_intro (l) - 0041
specialize all_prime_succ_intro (p) - 0042
apply all_prime_succ_intro - 0043
specialize all_prime_transport (b) - 0044
specialize all_prime_transport (c) - 0045
specialize all_prime_transport (x) - 0046
specialize all_prime_transport (x1) - 0047
specialize all_prime_transport (l) - 0048
apply all_prime_transport - 0049
exact hf_right_right - 0050
exact hext_witness_witness_right_left - 0051
split - 0052
exact hext_witness_witness_left - 0053
exact hp