Documentation

HexBerlekampZassenhausMathlib.FactorTransport

toPolynomial sends the executable X (the dense coefficient array #[0, 1]) to Mathlib's Polynomial.X.

The decide-slot form of checkIrreducibleCertLinear soundness concluding in the free layer: the same four Boolean hypotheses as irreducible_of_checkIrreducibleCertLinear, with the Mathlib-free Hex.ZPoly.Irreducible conclusion transported back through the unconditional Irreducible_iff_polynomialIrreducible.

Kernel-decidable check that a multi-prime certificate witnesses irreducibility of f: primality of the recorded block primes, content one, positive executable degree, and the incremental pow-chain replay checkIrreducibleCertLinear; the four hypothesis slots of zpolyIrreducible_of_checkIrreducibleCertLinear as one Boolean.

Equations
  • One or more equations did not get rendered due to their size.
Instances For

    Bulk kernel-decidable irreducibility for a ZPoly factor list with repetition, mixing witness kinds: certified carries free-layer IrredWitness entries, multiPrime carries multi-prime degree-obstruction certificates for balanced factors, and every factor must match one of the two lists by beqCoeffs.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For

      A passing checkMultiPrimeCover forces free-layer irreducibility of every listed factor.

      Decide-slot endpoint for the irreducibility! kernel fallback on Hex.ZPoly: the kernel replays the full factorizer through Hex.ZPoly.instDecidableIrreducible. Emitted only by the bang forms; see their docstrings for the cost and import all closure caveats.

      theorem Hex.ZPoly.forall_irreducible_of_decide (l : List ZPoly) (h : decide (∀ ql, q.Irreducible) = true) (q : ZPoly) :
      q lq.Irreducible

      Bulk decide-slot endpoint for the factor_poly! kernel fallback on Hex.ZPoly: one kernel factorizer replay per listed factor.

      Decide-slot endpoint for the irreducibility! kernel fallback on Polynomial: the free-layer kernel replay transported through the unconditional iff and the parser-built translation equality.

      Single-polynomial endpoint for the irreducibility extension on Polynomial: the cover check on the singleton factor list accepts either witness kind, and hP is the parser-built translation equality.

      noncomputable def Hex.FactoredPoly.ofZ (P : Polynomial ) (f : ZPoly) (s : ) (factors : List ZPoly) (certified : List (ZPoly × ZPoly.IrredWitness)) (multiPrime : List (ZPoly × ZPolyIrreducibilityCertificate)) (hmul : (DensePoly.C s * factors.prod).beqCoeffs f = true) (hcover : HexBerlekampZassenhausMathlib.checkMultiPrimeCover factors certified multiPrime = true) (hP : HexPolyZMathlib.toPolynomial f = P) :

      One-shot assembler for the factor_poly extension on Polynomial: every certification slot is a Boolean check on reified literal data (filled by Eq.refl true in emitted terms), and hP is the parser-built translation equality tying the reified executable polynomial to the user's Mathlib polynomial.

      Equations
      Instances For
        noncomputable def Hex.FactoredPoly.ofZDecide (P : Polynomial ) (f : ZPoly) (s : ) (factors : List ZPoly) (hmul : (DensePoly.C s * factors.prod).beqCoeffs f = true) (hirr : decide (∀ qfactors, q.Irreducible) = true) (hP : HexPolyZMathlib.toPolynomial f = P) :

        Decide-slot assembler for the factor_poly! kernel fallback on Polynomial: the factors_irred slot replays the full factorizer in the kernel once per factor. Emitted only by the bang forms.

        Equations
        Instances For