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.
For n>1 the exponent gcd and a real beta table classify and witness all positive root degrees. The unit n=1 has a separate uniform certificate for every positive degree. Zero is excluded. NaturalSquarefreeDecomposition is deliberately distinct from the unrelated polynomial definition.
Exact theorem in conservative defined notation
∀ n. ∀ pb. ∀ pc. ∀ eb. ∀ ec. ∀ vb. ∀ vc. ∀ l. ∀ g. PrimeValuationSupport(n,pb,pc,eb,ec,vb,vc,l) → ¬n = 1 → PrimeExponentPrefixGCD(eb,ec,l,g) → ¬g = 0
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete tactic proof in conservative notation
All 59 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–10
02Fix variables and assumptionsL11–13
03Establish hboundL14–23
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply one le of ne zero.
- L14
- L15
specialize one_le_of_ne_zero (l) - L16
apply one_le_of_ne_zero - L17
intro hlzero - L18
specialize prime_valuation_support_nonempty (n) - L19
specialize prime_valuation_support_nonempty (pb) - L20
specialize prime_valuation_support_nonempty (pc) - L21
specialize prime_valuation_support_nonempty (eb) - L22
specialize prime_valuation_support_nonempty (ec) - L23
specialize prime_valuation_support_nonempty (vb)
04Use earlier factsL24–29
05Separate the logical casesL30–33
06Establish hrowL34–37
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hsupport right right left.
- L34
have hrow : ∃ p. ∃ e. ∃ v. BetaAt(pb,pc,0,p) ∧ (BetaAt(eb,ec,0,e) ∧ (BetaAt(vb,vc,0,v) ∧ (Prime(p) ∧ (¬e = 0 ∧ (BoundedPowerValuation(p,n,n,e) ∧ Pow(p,e,v))))))Definitions: BetaAt(pb,pc,0,p)BetaAt(eb,ec,0,e)BetaAt(vb,vc,0,v)Prime(p)BoundedPowerValuation(p,n,n,e)Pow(p,e,v)Original native command in the exact edition - L35
specialize hsupport_right_right_left (0) - L36
apply hsupport_right_right_left - L37
exact hbound
07Separate the logical casesL38–47
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L38
cases hrow - L39
cases hrow_witness - L40
cases hrow_witness_witness - L41
cases hrow_witness_witness_witness - L42
cases hrow_witness_witness_witness_right - L43
cases hrow_witness_witness_witness_right_right - L44
cases hrow_witness_witness_witness_right_right_right - L45
cases hrow_witness_witness_witness_right_right_right_right - L46
cases hrow_witness_witness_witness_right_right_right_right_right - L47
cases hgcd
08Establish hdivL48–53
Establish this local claim before using it. It is not an additional assumption. The following proof commands apply hgcd left.
09Separate the logical casesL54–54
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L54
cases hdiv
10Use earlier factsL55–55
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L55
apply hrow_witness_witness_witness_right_right_right_right_left
11Calculate and transport equalitiesL56–56
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L56
trans g * x3
12Use earlier factsL57–57
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L57
exact hdiv_witness
13Calculate and transport equalitiesL58–58
Carry out the recorded arithmetic or equality steps; inspect the exact commands for their direction and premises.
- L58
rewrite hgzero
14Use earlier factsL59–59
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L59
apply mul_zero_left
Original defined command ledger · 59 lines
- 0001
intro n - 0002
intro pb - 0003
intro pc - 0004
intro eb - 0005
intro ec - 0006
intro vb - 0007
intro vc - 0008
intro l - 0009
intro g - 0010
intro hsupport - 0011
intro hunit - 0012
intro hgcd - 0013
intro hgzero - 0014
have hbound : Lt(0,l) - 0015
specialize one_le_of_ne_zero (l) - 0016
apply one_le_of_ne_zero - 0017
intro hlzero - 0018
specialize prime_valuation_support_nonempty (n) - 0019
specialize prime_valuation_support_nonempty (pb) - 0020
specialize prime_valuation_support_nonempty (pc) - 0021
specialize prime_valuation_support_nonempty (eb) - 0022
specialize prime_valuation_support_nonempty (ec) - 0023
specialize prime_valuation_support_nonempty (vb) - 0024
specialize prime_valuation_support_nonempty (vc) - 0025
specialize prime_valuation_support_nonempty (l) - 0026
apply prime_valuation_support_nonempty - 0027
exact hsupport - 0028
exact hunit - 0029
exact hlzero - 0030
cases hsupport - 0031
cases hsupport_right - 0032
cases hsupport_right_right - 0033
cases hsupport_right_right_right - 0034
have hrow : ∃ p. ∃ e. ∃ v. BetaAt(pb,pc,0,p) ∧ (BetaAt(eb,ec,0,e) ∧ (BetaAt(vb,vc,0,v) ∧ (Prime(p) ∧ (¬e = 0 ∧ (BoundedPowerValuation(p,n,n,e) ∧ Pow(p,e,v)))))) - 0035
specialize hsupport_right_right_left (0) - 0036
apply hsupport_right_right_left - 0037
exact hbound - 0038
cases hrow - 0039
cases hrow_witness - 0040
cases hrow_witness_witness - 0041
cases hrow_witness_witness_witness - 0042
cases hrow_witness_witness_witness_right - 0043
cases hrow_witness_witness_witness_right_right - 0044
cases hrow_witness_witness_witness_right_right_right - 0045
cases hrow_witness_witness_witness_right_right_right_right - 0046
cases hrow_witness_witness_witness_right_right_right_right_right - 0047
cases hgcd - 0048
have hdiv : Dvd(g,x1) - 0049
specialize hgcd_left (0) - 0050
specialize hgcd_left (x1) - 0051
apply hgcd_left - 0052
exact hbound - 0053
exact hrow_witness_witness_witness_right_left - 0054
cases hdiv - 0055
apply hrow_witness_witness_witness_right_right_right_right_left - 0056
trans g * x3 - 0057
exact hdiv_witness - 0058
rewrite hgzero - 0059
apply mul_zero_left