Documentation

Complexitylib.Algebraic.LowerBound.Cutwidth.Extractor.CorrelationBreaker.Affine.Iteration.Program

Uniform execution of repeated actual affine rounds #

The semantic correspondence reads the same original source words at every round. The polynomial-time certificate bounds the complete encoded state, including the original words, unary parameters, and arbitrary initial row. It is unconditional on malformed inputs and invalid numerical parameters.

theorem Algebraic.Cutwidth.Extractor.affineRoundsRuntime_succ (t L e i : ℕ) (x y row : List Bool) :
affineRoundsRuntime t L e (i + 1) x y row = affineRoundRuntime t L e x y (affineRoundsRuntime t L e i x y row)

One further iteration performs the actual round on the current row.

An encoded step preserves the original context exactly.

Every encoded iterate contains the original context and the actual evolving row.

theorem Algebraic.Cutwidth.Extractor.affineRoundsRuntime_length_le (t L e i : ℕ) (x y row : List Bool) :
(affineRoundsRuntime t L e i x y row).length ≤ row.length + 2 ^ 65 * (t + 1) * L

Every iterate is bounded by the initial row and one round output bound.

The complete encoded state includes both original sources and all unary parameters.

Canonical words follow exactly the semantic iteration on the same original sources.

Encoding the immutable source context and unary parameters is polynomial-time.

One total encoded step is polynomial-time on every word.

theorem Algebraic.Cutwidth.Extractor.affineRoundsRuntime_mem_FP {t L e i : List Bool → ℕ} {x y row : List Bool → List Bool} (ht : Complexity.UnaryFn t) (hL : Complexity.UnaryFn L) (he : Complexity.UnaryFn e) (hi : Complexity.UnaryFn i) (hx : x ∈ Complexity.FP) (hy : y ∈ Complexity.FP) (hrow : row ∈ Complexity.FP) :
(fun (z : List Bool) => affineRoundsRuntime (t z) (L z) (e z) (i z) (x z) (y z) (row z)) ∈ Complexity.FP

A unary number of actual rounds is uniformly polynomial-time with no validity promise.

The single evaluator decodes the original sources, row, parameters, and round count.

One total polynomial-time evaluator runs the complete repeated-round program.

The full evaluator has a quadratic output bound, including the zero-round input row.