Exact Fourier circuits: triangular #
Adapted from OpenAI's formalization at revision adc7f1241b42e322a6451854ab7e4b4c146bf78a.
Source: https://github.com/openai/math/blob/adc7f1241b42e322a6451854ab7e4b4c146bf78a/lean/OAI/Computability/FourierCircuit/Triangular.lean
Imports, namespaces, module visibility, documentation, and formatting are adapted for complexitylib. The source theorem statements and mathematical arguments are retained.
The literal upper block triangular conclusion, including empty blocks.
The lower triangular Toeplitz matrix acting on the first t coefficients.
Equations
- Complexity.ExactFourier.CoefficientTime.truncMatrix t F a b = if ↑b ≤ ↑a then (PowerSeries.coeff (↑a - ↑b)) F else 0
Instances For
Multiplication modulo z^t in the coefficient basis is a literal ring homomorphism.
Equations
- Complexity.ExactFourier.CoefficientTime.truncHom t = { toFun := Complexity.ExactFourier.CoefficientTime.truncMatrix t, map_one' := ⋯, map_mul' := ⋯, map_zero' := ⋯, map_add' := ⋯ }
Instances For
Repeated invertible constant term makes the time coefficient matrix invertible.
Truncate a matrix of formal series into a finite matrix with time-first coordinates.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Stack the first t coefficient matrices of a rectangular matrix of series.
Equations
- Complexity.ExactFourier.CoefficientTime.coefficientColumns t V a b = (PowerSeries.coeff ↑a.1) (V a.2 b)
Instances For
A matrix series acts on vectors of truncated coefficients by the literal coefficient product. This is the state-response and boundary-quotient interface.
The scalar Toeplitz factor acts identically on every spatial coordinate.
The scalar prefix change of basis leaves the suffix literally fixed. Its prefix-to-suffix block is zero because the convolution is lower triangular.
Equations
- Complexity.ExactFourier.CoefficientTime.prefixScalar t T f a b = if ↑a < T then Complexity.ExactFourier.CoefficientTime.truncMatrix t f a b else 1 a b
Instances For
On an early row the partial scalar convolution is a full coefficient convolution; on a late row it leaves the original series coefficient unchanged.