Structural modular power: k multiplications, each followed by reduction.
A proof helper for induction; executable certificate replay uses powMod.
Equations
- Hex.Conway.linPowMod f hm x 0 = 1
- Hex.Conway.linPowMod f hm x k.succ = f.modByMonic (Hex.Conway.linPowMod f hm x k * x) hm
Instances For
The structural linear helper agrees with the polynomial library's power.
A reduced representative of the generator raised to a supplied exponent.
Equations
- Hex.Conway.powerResidue f hm k = f.modByMonic (Hex.Conway.powMod Hex.FpPoly.X f hm k) hm
Instances For
The product of qs raised to the matching multiplicities in es.
Equations
- Hex.Conway.primePowerProduct [] x✝ = 1
- Hex.Conway.primePowerProduct x✝ [] = 1
- Hex.Conway.primePowerProduct (q :: qs) (e :: es) = q ^ e * Hex.Conway.primePowerProduct qs es
Instances For
The Tier 2 primitivity check validates the factorization of p^n - 1
and checks the full power and each prime-divided power. Primality of the
supplied factors is carried separately by Primitive.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The committed entry C(p, n) is primitive: the residue of x has
multiplicative order exactly p^n - 1, witnessed by the supplied
factorization and power data.
The supplied divisors are prime. Together with the product check inside
primitiveCheckthis ensures they include every prime divisor ofp^n - 1.The arithmetic and the two power conditions, all decidable.