Documentation

HexNumberFieldTowerMathlib.Adjoin

Successful executable evaluation of tower coordinates preserves their fixed complex value.

Coordinate evaluation succeeds for every validated tower element.

theorem Hex.NumberTower.Evaluation.evalPoly?_sound (T : NumberTower) (f : T.Poly) (candidate result : AlgebraicRoot) (h : evalPoly? f candidate = some result) :

Successful exact tower-polynomial evaluation agrees with semantic polynomial evaluation.

The bounded zero test returns a Boolean for every public tower polynomial.

The total public zero test returns true exactly at a semantic root.

Evaluate a base-tower polynomial at an extension element after embedding its coefficients.

Equations
Instances For

    Every element of the result is generated by the old tower and the distinguished generator.

    Equations
    Instances For

      The candidate value was already present in the old fixed embedding.

      Equations
      Instances For

        Mathematical meaning of a checked adjoining result.

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

          Lifting an integer polynomial into a tower preserves its complex coefficient polynomial.

          theorem Hex.NumberTower.factor_fsts_pairwise {T : NumberTower} {f : T.Poly} (r : T.Factorization f) (hsound : r.Sound) :
          List.Pairwise (fun (a b : T.Poly × ) => a.1 b.1) r.factors.toList

          Strict canonical factor ordering makes the public factor polynomials pairwise distinct.

          theorem Hex.NumberTower.selectFactor?_sound (T : NumberTower) (candidate : AlgebraicRoot) (factors : Array (T.Poly × )) {selected : T.Poly} (hirreducible : entryfactors.toList, T.PolynomialIrreducible entry.1) (h : T.selectFactor? candidate factors = some selected) :
          T.PolynomialIrreducible selected Polynomial.eval candidate.toComplex (T.toPolynomial selected) = 0

          A selected relative factor is irreducible and vanishes at the requested absolute candidate under the fixed embedding.

          Horner evaluation in a checked extension agrees with ordinary semantic evaluation at its distinguished root.

          theorem Hex.NumberTower.adjoin?_sound (T : NumberTower) (candidate : AlgebraicRoot) {E : T.Extension} (h : T.adjoin? candidate = some E) :
          Extension.Sound candidate E

          Every returned adjoining payload satisfies the fixed-embedding, generation, and identity-extension contracts.

          theorem Hex.NumberTower.adjoin?_isSome (T : NumberTower) (candidate : AlgebraicRoot) :
          (T.adjoin? candidate).isSome = true

          Factor selection and evaluation disambiguation always produce the checked extension containing the requested algebraic root.