Finite descriptions of semifilter covers #
The quadratic compiler only needs inclusion flags, not the actual subsets in a pair cover.
A t-pair cover over n inputs has a description of (2*t+1)*(n+t+1) bits. Decode the
flags by synchronous propagation and the target is recovered. This gives an unconditional
count of the sets having a small cover, for any fixed supplied input family.
Main definitions #
Cslib.Circuits.Fusion.CoverCode: the finite inclusion-pattern description.Cslib.Circuits.Fusion.CoverCode.decode: recover the output set from a description.
Main results #
Cslib.Circuits.Fusion.PairCover.exists_code: every cover admits a finite description.Cslib.Circuits.Fusion.card_small_covers_le: a bound on all targets of small cover complexity.
References #
@[reducible, inline]
Each of the two operands per pair and the final output records a top flag, an input mask, and a pair-value mask. No ambient subsets occur in this finite description.
Instances For
theorem Cslib.Circuits.Fusion.PairClosureCompiler.read_encode {U : Type u} {n : ℕ} (target : Set U) (input : Fin n → Set U) (pairs : List (Set ↑targetᶜ × Set ↑targetᶜ)) (state : Fin pairs.length → Set U) (i : Fin (pairs.length + pairs.length + 1)) :
(encode target input pairs).read input state i = (readState target input pairs state) (coordinate target pairs i)
Encoded reads are the original compiler's reconstructed closure coordinates.
theorem Cslib.Circuits.Fusion.PairCover.exists_code_of_length_le {U : Type u} {n : ℕ} {target : Set U} {input : Fin n → Set U} (c : PairCover target input) {t : ℕ} (h : (c.pairs fun (x : Semifilter ↑targetᶜ) => True).length ≤ t) :
A cover fitting a budget has a description of the budget's fixed length.