Documentation

Complexitylib.Algebraic.LowerBound.Cutwidth.Extractor.Strong.Block.Recursion.Scheduled.Matched.Internal

Flattening the actual program and retaining padded seed bits #

The flat output is a bijective rearrangement of the scheduled Boolean blocks. The exact seed prefix is then extended by independent unused bits, using the checked strong seed-padding theorem. The finite numerical bounds are those of Scheduled.BoundedDepth; no field instances are supplied.

theorem Algebraic.Cutwidth.Extractor.Internal.matchedBlockExtractor_xor (n h L e : ℕ) (x x' : Fin n → Bool) (seed : Fin (matchedBlockSeedBits L) → Bool) :
matchedBlockExtractor n h L e (fun (i : Fin n) => x i ^^ x' i) seed = fun (j : Fin (matchedBlockOutputBits h L)) => matchedBlockExtractor n h L e x seed j ^^ matchedBlockExtractor n h L e x' seed j
theorem Algebraic.Cutwidth.Extractor.Internal.matchedBlockExtractor_seedBits_le (n h L e : ℕ) (length : Nat.clog 2 (n + 1) ≤ L) (room : 64 ≤ L) (depth : h ≤ 64) (error : e + h + 2 ≤ L) :
theorem Algebraic.Cutwidth.Extractor.Internal.matchedBlockExtractor_weighted (n h L e : ℕ) (length : Nat.clog 2 (n + 1) ≤ L) (room : 64 ≤ L) (depth : h ≤ 64) (error : e + h + 2 ≤ L) :
theorem Algebraic.Cutwidth.Extractor.Internal.matchedBlockExtractor_depth24 (n L e : ℕ) (length : Nat.clog 2 (n + 1) ≤ L) (room : 64 ≤ L) (error : e + 24 + 2 ≤ L) :
theorem Algebraic.Cutwidth.Extractor.Internal.matchedBlockExtractor_depth64 (n L e : ℕ) (length : Nat.clog 2 (n + 1) ≤ L) (room : 64 ≤ L) (error : e + 64 + 2 ≤ L) :