Documentation

Complexity.Logics.Propositional.CNF.Planar.PairedCrossover

A crossover with two attachment ports per side #

Each old terminal is replaced by two ports and one implication between them. Together with its two old incidences this forms an implication chain between two equal internal copies. Consequently both ports have the old terminal's uniquely determined value. Each port has two internal incidences and room for one external incidence. The unchanged internal core comes from Lichtenstein's crossover [Lichtenstein1982, Figs. 4–5], as drawn in [Tromino2025, Fig. 8(b)].

Main definitions #

Main results #

References #

The paired-terminal replacement and its uniqueness proof are original.

Eight boundary ports, the unsplit center, and the old 48 internal copies.

Instances For

    The eight attachment ports in left/right/bottom/top geometric order, with two lanes per side. The source variables .bTop and .bBottom retain their historical names.

    Instances For

      Forget the lane of a boundary port.

      Instances For

        Choose lane zero as the representative of each old terminal.

        Instances For

          Replace each old boundary literal by the port at that incidence's geometric lane.

          Instances For

            One directed implication joins the paired ports on each side.

            Instances For

              Preserve the old 74 clauses with their terminal incidences separated, then add four bridges.

              Instances For

                The internal copy at the start of each terminal's implication chain.

                Instances For

                  The internal copy at the end of each terminal's implication chain.

                  Instances For

                    The first lane in each directed chain.

                    Instances For

                      Three existing clauses form a chain between two equal internal copies.

                      Instances For

                        Exact semantics: the old split formula together with agreement of each paired terminal.

                        The explicit unique full assignment, including both lanes on every side.

                        Instances For

                          The explicit full assignment satisfies the paired-port formula.

                          Both lanes on the left and right carry a; both lanes on the top and bottom carry b.

                          Every satisfying full assignment is determined by the left and top lane-zero inputs.

                          theorem Cslib.Logic.PL.CNF.PairedCrossover.terminal_value_of_holds {σ : Variable → Bool} (h : eval σ formula = true) (s : Fin 4) (l : Fin 2) :
                          σ (terminal s l) = if ↑s < 2 then σ (terminal 0 0) else σ (terminal 2 0)

                          All satisfying terminal values are the horizontal or vertical input value.

                          Projecting a satisfying paired assignment recovers a satisfying old split assignment.

                          Every two-bit input has exactly one satisfying full assignment.

                          The template uses exactly 57 variables.

                          The template has exactly 78 clauses.

                          All clauses have width at most three.

                          Every variable has at most three internal incidences.

                          Each of the eight ports has exactly two internal incidences.