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. ∀ k. PrimeValuationSupport(n,pb,pc,eb,ec,vb,vc,l) → PrimeExponentPrefixGCD(eb,ec,l,g) → ¬k = 0 → ((∃ x. Pow(x,k,n)) → Dvd(k,g)) ∧ (Dvd(k,g) → ∃ x. Pow(x,k,n))
Every linked abbreviation expands hygienically to the identical original native formula.
Definition DAG
Actual proof prerequisites
Complete tactic proof in conservative notation
All 48 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 (3)
01Fix variables and assumptionsL1–10
02Fix variables and assumptionsL11–13
03Establish hcriterionL14–23
Establish this local claim before using it. It is not an additional assumption.
- L14
have hcriterion : (Dvd(k,g) → PrimeValuationsDivisible(n,k)) ∧ (PrimeValuationsDivisible(n,k) → Dvd(k,g))Definitions: Dvd(k,g)PrimeValuationsDivisible(n,k)Original native command in the exact edition - L15
specialize prime_support_exponent_gcd_divisor_criterion (n) - L16
specialize prime_support_exponent_gcd_divisor_criterion (pb) - L17
specialize prime_support_exponent_gcd_divisor_criterion (pc) - L18
specialize prime_support_exponent_gcd_divisor_criterion (eb) - L19
specialize prime_support_exponent_gcd_divisor_criterion (ec) - L20
specialize prime_support_exponent_gcd_divisor_criterion (vb) - L21
specialize prime_support_exponent_gcd_divisor_criterion (vc) - L22
specialize prime_support_exponent_gcd_divisor_criterion (l) - L23
specialize prime_support_exponent_gcd_divisor_criterion (g)
04Use earlier factsL24–27
05Separate the logical casesL28–30
06Fix variables and assumptionsL31–31
Work with arbitrary variables or the premises of the current implication.
- L31
intro hroot
07Separate the logical casesL32–32
Follow the explicit conjunction, disjunction, witness, or contradiction step recorded below.
- L32
cases hroot
08Use earlier factsL33–40
Instantiate or apply named facts and discharge the corresponding proof obligations.
- L33
apply hcriterion_right - L34
specialize positive_power_prime_valuations_divisible (n) - L35
specialize positive_power_prime_valuations_divisible (k) - L36
specialize positive_power_prime_valuations_divisible (x) - L37
apply positive_power_prime_valuations_divisible - L38
exact hsupport_left - L39
exact hk - L40
exact hroot_witness
09Fix variables and assumptionsL41–41
Work with arbitrary variables or the premises of the current implication.
- L41
intro hdiv
10Use earlier factsL42–48
Instantiate or apply named facts and discharge the corresponding proof obligations.
Original defined command ledger · 48 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 k - 0011
intro hsupport - 0012
intro hgcd - 0013
intro hk - 0014
have hcriterion : (Dvd(k,g) → PrimeValuationsDivisible(n,k)) ∧ (PrimeValuationsDivisible(n,k) → Dvd(k,g)) - 0015
specialize prime_support_exponent_gcd_divisor_criterion (n) - 0016
specialize prime_support_exponent_gcd_divisor_criterion (pb) - 0017
specialize prime_support_exponent_gcd_divisor_criterion (pc) - 0018
specialize prime_support_exponent_gcd_divisor_criterion (eb) - 0019
specialize prime_support_exponent_gcd_divisor_criterion (ec) - 0020
specialize prime_support_exponent_gcd_divisor_criterion (vb) - 0021
specialize prime_support_exponent_gcd_divisor_criterion (vc) - 0022
specialize prime_support_exponent_gcd_divisor_criterion (l) - 0023
specialize prime_support_exponent_gcd_divisor_criterion (g) - 0024
specialize prime_support_exponent_gcd_divisor_criterion (k) - 0025
apply prime_support_exponent_gcd_divisor_criterion - 0026
exact hsupport - 0027
exact hgcd - 0028
cases hcriterion - 0029
cases hsupport - 0030
split - 0031
intro hroot - 0032
cases hroot - 0033
apply hcriterion_right - 0034
specialize positive_power_prime_valuations_divisible (n) - 0035
specialize positive_power_prime_valuations_divisible (k) - 0036
specialize positive_power_prime_valuations_divisible (x) - 0037
apply positive_power_prime_valuations_divisible - 0038
exact hsupport_left - 0039
exact hk - 0040
exact hroot_witness - 0041
intro hdiv - 0042
specialize prime_valuation_divisible_power_root_exists (n) - 0043
specialize prime_valuation_divisible_power_root_exists (k) - 0044
apply prime_valuation_divisible_power_root_exists - 0045
exact hsupport_left - 0046
exact hk - 0047
apply hcriterion_left - 0048
exact hdiv