Documentation

Complexitylib.Circuits.DepthThree.LowerBound.Internal.AlgebraPolynomial

Unrestricted depth-three lower bound: algebra polynomial #

Adapted from OpenAI's formalization at revision adc7f1241b42e322a6451854ab7e4b4c146bf78a. Source: https://github.com/openai/math/blob/adc7f1241b42e322a6451854ab7e4b4c146bf78a/lean/OAI/Computability/DepthThree/AlgebraPolynomial.lean

Imports, namespaces, module visibility, documentation, and formatting are adapted for complexitylib. The source theorem statements and mathematical proofs are retained.

Pack a finite vector of field elements as polynomial coefficients.

Equations
Instances For
    @[simp]
    theorem Complexity.DepthThreeLowerBound.BinaryAlgebra.coeff_pack {r : ℕ} (v : Fin r → ZMod 2) (i : Fin r) :
    (pack v).coeff ↑i = v i
    theorem Complexity.DepthThreeLowerBound.BinaryAlgebra.coeff_pack_nat {r : ℕ} (v : Fin r → ZMod 2) (j : ℕ) :
    (pack v).coeff j = if h : j < r then v ⟨j, h⟩ else 0
    @[simp]
    @[simp]
    theorem Complexity.DepthThreeLowerBound.BinaryAlgebra.pack_smul {r : ℕ} (c : ZMod 2) (v : Fin r → ZMod 2) :
    pack (c • v) = c • pack v

    The monic input polynomial specified by Boolean coefficient bits.

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