Documentation

MIPRE.Background.LIDT.Bridge.Polynomial

Bridge, part 2: polynomial answer alphabets #

Our answer alphabets are coefficient vectors (LinePoly F n := Fin (n+1) → F) and coefficient tables (LowIndDegPoly := (Fin m → Fin (d+1)) → F); the MIPStarRE development uses subtypes of Mathlib's Polynomial and MvPolynomial with degree bounds (AxisLinePolynomial, DiagonalLinePolynomial, MIPStarRE.LDT.Polynomial). This file provides the equivalences between the two, and shows that evaluation is compatible with them through the field coding.

Univariate polynomials from coefficient vectors #

noncomputable def MIPRE.LIDT.Bridge.ofCoeffs {F : Type u_1} [Field F] {n : } (c : LinePoly F n) :

The univariate polynomial with the given coefficients.

Equations
Instances For
    theorem MIPRE.LIDT.Bridge.coeff_ofCoeffs {F : Type u_1} [Field F] {n : } (c : LinePoly F n) (i : Fin (n + 1)) :
    (ofCoeffs c).coeff i = c i
    theorem MIPRE.LIDT.Bridge.ofCoeffs_coeff {F : Type u_1} [Field F] {n : } (p : Polynomial F) (hp : p.natDegree n) :
    (ofCoeffs fun (i : Fin (n + 1)) => p.coeff i) = p
    theorem MIPRE.LIDT.Bridge.eval_ofCoeffs {F : Type u_1} [Field F] {n : } (c : LinePoly F n) (t : F) :

    Axis-line answers: coefficient vectors of length d + 1 versus polynomials of degree at most d.

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

      Diagonal-line answers: coefficient vectors of length m·d + 1 versus polynomials of degree at most m·d.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        @[simp]
        theorem MIPRE.LIDT.Bridge.axisEquiv_poly {F : Type u_1} [Field F] [Fintype F] [DecidableEq F] {m d : } [NeZero m] (c : LinePoly F d) :
        @[simp]
        theorem MIPRE.LIDT.Bridge.diagEquiv_poly {F : Type u_1} [Field F] [Fintype F] [DecidableEq F] {m d : } [NeZero m] (c : LinePoly F (m * d)) :
        theorem MIPRE.LIDT.Bridge.axisEquiv_apply_enc {F : Type u_1} [Field F] [Fintype F] [DecidableEq F] {m d : } [NeZero m] (c : LinePoly F d) (t : F) :
        (axisEquiv c).toFun (enc t) = enc (c.eval t)

        Evaluating an axis-line answer at a coded parameter.

        theorem MIPRE.LIDT.Bridge.diagEquiv_apply_enc {F : Type u_1} [Field F] [Fintype F] [DecidableEq F] {m d : } [NeZero m] (c : LinePoly F (m * d)) (t : F) :
        (diagEquiv c).toFun (enc t) = enc (c.eval t)

        Evaluating a diagonal-line answer at a coded parameter.

        Multivariate polynomials from coefficient tables #

        noncomputable def MIPRE.LIDT.Bridge.expo {m d : } (e : Fin mFin (d + 1)) :

        The exponent vector of a monomial index.

        Equations
        Instances For
          @[simp]
          theorem MIPRE.LIDT.Bridge.expo_apply {m d : } (e : Fin mFin (d + 1)) (i : Fin m) :
          (expo e) i = (e i)
          noncomputable def MIPRE.LIDT.Bridge.toMv {F : Type u_1} [Field F] {m d : } (c : LowIndDegPoly) :

          The multivariate polynomial with the given coefficient table.

          Equations
          Instances For
            theorem MIPRE.LIDT.Bridge.coeff_toMv {F : Type u_1} [Field F] {m d : } (c : LowIndDegPoly) (e : Fin mFin (d + 1)) :
            theorem MIPRE.LIDT.Bridge.coeff_toMv_of_not_le {F : Type u_1} [Field F] {m d : } (c : LowIndDegPoly) (s : Fin m →₀ ) (hs : ¬∀ (i : Fin m), s i d) :
            theorem MIPRE.LIDT.Bridge.toMv_coeff {F : Type u_1} [Field F] {m d : } (p : MvPolynomial (Fin m) F) (hp : ∀ (i : Fin m), MvPolynomial.degreeOf i p d) :
            (toMv fun (e : Fin mFin (d + 1)) => MvPolynomial.coeff (expo e) p) = p

            A polynomial of bounded individual degree is determined by its coefficient table.

            theorem MIPRE.LIDT.Bridge.polynomial_ext {F : Type u_1} [Field F] [Fintype F] [DecidableEq F] {m d : } [NeZero m] {g g' : MIPStarRE.LDT.Polynomial (lidtParams F m d)} (h : g.poly = g'.poly) :
            g = g'

            Extensionality for MIPStarRE's global polynomial answers.

            Global answers: coefficient tables versus polynomials of individual degree at most d.

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              theorem MIPRE.LIDT.Bridge.eval_toMv {F : Type u_1} [Field F] {m d : } (c : LowIndDegPoly) (u : Point F m) :
              theorem MIPRE.LIDT.Bridge.lowIndDegEquiv_apply_encP {F : Type u_1} [Field F] [Fintype F] [DecidableEq F] {m d : } [NeZero m] (c : LowIndDegPoly) (u : Point F m) :

              Evaluating a global answer at a coded point.