Unrestricted depth-three lower bound: language bit arithmetic #
Adapted from OpenAI's formalization at revision adc7f1241b42e322a6451854ab7e4b4c146bf78a.
Source: https://github.com/openai/math/blob/adc7f1241b42e322a6451854ab7e4b4c146bf78a/lean/OAI/Computability/DepthThree/LanguageBitArithmetic.lean
Imports, namespaces, module visibility, documentation, and formatting are adapted for complexitylib. The source theorem statements and mathematical proofs are retained.
Freeze a bit-word representation for the arithmetic evaluator.
Equations
Instances For
@[simp]
theorem
Complexity.DepthThreeLowerBound.wordPoly_cancelStep_mod
{r m : ℕ}
(p : BitWord r)
(k : ℕ)
(a : BitWord m)
:
Iterate high-coefficient cancellation to compute a remainder.
Equations
Instances For
theorem
Complexity.DepthThreeLowerBound.wordPoly_reduceLoop_mod
{r m : ℕ}
(p : BitWord r)
(k : ℕ)
(a : BitWord m)
:
Resize a bit word, truncating or padding with false bits.
Equations
Instances For
Reduce a bit-word polynomial modulo the monic modulus.
Equations
Instances For
Multiply bit-word polynomials and reduce modulo the modulus.