hex

11.1. Introduction🔗

HexPolyFp specializes the executable dense polynomials to coefficients in Hex.ZMod64 p. Where HexPoly is generic over any coefficient type with a Zero and a DecidableEq, HexPolyFp fixes the coefficients to machine-word residues modulo a prime p and adds the operations that only make sense over `Fₚ`: modular exponentiation and composition in `Fₚ[x] / (f)`, the Frobenius-power maps X ↦ X^(pᵏ), square-free (Yun) decomposition, and the quotient by a modulus, which becomes a field exactly when the modulus is irreducible.

Hex.FpPoly is a thin abbrev over Hex.DensePoly, so the entire constructor, arithmetic, and Euclidean API documented in the HexPoly chapter is available unchanged. This chapter covers only what the prime-field specialization adds on top. HexPolyFp is Mathlib-free. It depends on HexPoly for the representation and on HexModArith for the ZMod64 p coefficient arithmetic. See Cross-references.