Unique extensions through the fixed crossover #
The fixed clause tables have exactly one satisfying full assignment for each pair of incoming
bits. The explicit Boolean extension and its uniqueness are preserved by the internal splitting
rings. Construction and source credit are documented in Crossover and CrossoverSplit.
Main definitions #
Cslib.Logic.PL.CNF.Crossover.canonicalExtension: the original full assignment from two bits.Cslib.Logic.PL.CNF.Crossover.canonicalSplitExtension: its lift to all internal copies.
Main results #
Cslib.Logic.PL.CNF.Crossover.existsUnique_holds: uniqueness before splitting.Cslib.Logic.PL.CNF.Crossover.existsUnique_split_holds: uniqueness after splitting.
References #
The construction adapts [Lichtenstein1982, Figs. 4–5] and [Tromino2025, Fig. 8(b)]. Unique extension is the parsimony condition of [HuntMaratheRadhakrishnanStearns1998, Definition 3.1]. Their Theorem 3.2 proves that property for Lichtenstein's crossover; kernel evaluation checks the adapted 13-variable table here.
The full satisfying assignment determined by the left and top input values. The explicit Boolean expressions describe all nine internal values as well as the outputs.
Instances For
The explicit extension satisfies all 26 clauses for every pair of inputs.
Satisfying assignments agreeing on the incoming ports agree on every variable.
The explicit full split assignment: every local copy receives its original variable's canonical value, determined by the left and top inputs.
Instances For
The canonical split extension satisfies all 74 clauses.
Every satisfying split assignment is the explicit extension of its incoming values. The implication rings identify the six copies before applying the original uniqueness result; no enumeration of assignments to the 53 split variables is needed.
Satisfying split assignments agreeing on the two incoming ports agree everywhere.
Each pair of incoming values extends uniquely to a satisfying full split assignment.