Documentation

Complexitylib.Algebraic.LowerBound.Cutwidth.Extractor.Strong.Block.Recursion.Scheduled.Boolean

Strong extraction by the actual Boolean program #

The input and uniformly sampled seed are Boolean vectors of their exact prescribed widths. Output coordinates are read from the actual bit program in block order. The canonical codec identifies this map with the specified recursive extractor, and bijective transport preserves its retained-seed guarantee and source XOR additivity.

The recursive construction and parameter bounds are credited in Scheduled. This layer adds only finite representation transport. Its statements require no caller-supplied field enumeration instances; those are constructed from the proved binary quotient cardinalities.

theorem Algebraic.Cutwidth.Extractor.scheduledBlockBooleanExtractor_eq (n h Q E ell : ℕ) (x : Fin n → Bool) (seed : Fin (scheduledBlockSeedBits n h Q E ell) → Bool) (i : Fin (recursiveBlockCount 1 h)) (j : Fin ell) :
scheduledBlockBooleanExtractor n h Q E ell x seed i j = decide (scheduledBlockExtractor n h Q E ell x (decodeScheduledBlockSeeds n h Q E ell (List.ofFn seed)) i j = 1)

Each actual output bit agrees with the corresponding semantic coordinate at decoded seeds.

theorem Algebraic.Cutwidth.Extractor.scheduledBlockBooleanExtractor_xor (n h Q E ell : ℕ) (x x' : Fin n → Bool) (seed : Fin (scheduledBlockSeedBits n h Q E ell) → Bool) :
scheduledBlockBooleanExtractor n h Q E ell (fun (i : Fin n) => x i ^^ x' i) seed = fun (i : Fin (recursiveBlockCount 1 h)) (j : Fin ell) => scheduledBlockBooleanExtractor n h Q E ell x seed i j ^^ scheduledBlockBooleanExtractor n h Q E ell x' seed i j

For any fixed Boolean seed, input XOR becomes pointwise output XOR.

The actual program is a strong extractor with its full uniformly sampled Boolean seed.

The explicit reserve gives error 2^(-e) for the actual Boolean-seed program.