Documentation

HexBerlekampZassenhausMathlib.LatticeFactorization

theorem HexBerlekampZassenhausMathlib.irreducible_of_directSingleton (core : Hex.ZPoly) (data : Hex.PrimeChoiceData) (prime : DirectPrimeFacts core data) (hcore_pos : 0 < Hex.DensePoly.natDegree core) (hcore_prim : core.Primitive) (hsmall : data.factorsModP.size 1) :

A one-factor direct modular plan certifies irreducibility of a primitive positive-degree input.

A successful forward-adequate CLD split emits exactly one candidate for each normalized irreducible factor.

theorem HexBerlekampZassenhausMathlib.irreducible_of_directSingleClass (core : Hex.ZPoly) (B : ) (data : Hex.PrimeChoiceData) (hcore_lc_pos : 0 < Hex.DensePoly.leadingCoeff core) (hcore_pos : 0 < Hex.DensePoly.natDegree core) (hcore_prim : core.Primitive) (hcore_sqfree : Squarefree (HexPolyZMathlib.toPolynomial core)) (hval : ModPFactorization core data) (hB_floor : Hex.bhksRecoveryFloor core B) (hB_ne : B 0) (hsingle : Hex.bhksSingleAllOnesPartition core (core.directLiftData B data) = true) :

At a forward-adequate precision, the executable single-all-ones certificate implies that the primitive square-free part is irreducible.

theorem HexBerlekampZassenhausMathlib.latticeCoreFactorsWithBound_factor_irreducible (core : Hex.ZPoly) (B : ) (data : Hex.PrimeChoiceData) (prime : DirectPrimeFacts core data) (hcore_lc_pos : 0 < Hex.DensePoly.leadingCoeff core) (hcore_pos : 0 < Hex.DensePoly.natDegree core) (hcore_prim : core.Primitive) (hcore_sqfree : Squarefree (HexPolyZMathlib.toPolynomial core)) (hB_floor : Hex.bhksRecoveryFloor core B) (hB_ne : B 0) {coreFactors : Array Hex.ZPoly} (hlattice : Hex.latticeCoreFactorsWithBound core B data = some coreFactors) (factor : Hex.ZPoly) :
factor coreFactors.toListfactor.Irreducible

Every factor returned by the direct-coordinate CLD method is irreducible. Split success uses the forward count theorem; either all-ones arm uses the forward irreducibility certificate.

theorem HexBerlekampZassenhausMathlib.latticeCoreFactorsWithBound_ne_none (core : Hex.ZPoly) (B : ) (data : Hex.PrimeChoiceData) (prime : DirectPrimeFacts core data) (hcore_lc_pos : 0 < Hex.DensePoly.leadingCoeff core) (hcore_pos : 0 < Hex.DensePoly.natDegree core) (hcore_prim : core.Primitive) (hcore_sqfree : Squarefree (HexPolyZMathlib.toPolynomial core)) (hB_floor : Hex.bhksRecoveryFloor core B) (hB_ne : B 0) (hresultant : 2 * Hex.bhksBound core < (core.directLiftData B data).p ^ (core.directLiftData B data).k) :

At full resultant-adequate precision, the direct-coordinate CLD method is total for every successful prime plan. Exact span yields either a genuine multi-class recovery on the scheduled cap visit or the single-all-ones certificate.

Reassembling a successful direct CLD factorization of the square-free part covers the original input exactly.

Every recorded raw factor returned by CLD from a selected direct prime is irreducible.

Every recorded raw factor returned by the standalone direct CLD branch is irreducible.