Documentation

CslibFrontier.Computability.Complexity.Problems.PlanarThreeSATThree

Planar 3SAT with three literal occurrences per variable #

Clauses have width at most three, including binary clauses, and each variable has at most three literal occurrences. Planarity is witnessed by a finite integer orthogonal incidence drawing: routes are simple, avoid nonincident vertices, and intersect only at shared endpoints, with all contacts interpreted on full real segments. Parallel literal incidences are retained.

DrawnPlanarThreeSATThree supplies the drawing as part of the input. PlanarThreeSATThree requires its existence. The total compiler rejects inputs outside the syntactic restrictions by returning one empty clause and a one-vertex drawing.

The compiler is parsimonious: its paired implications force equality along each wire, and the local rings and crossover have unique extensions. Counts refer only to occurring variables.

Main definitions #

Main results #

References #

The paired-port tiling, degree-three templates and explicit grid bounds are original. The fixed crossover's source credit is documented in Crossover.

An instance of DrawnPlanarThreeSATThree: a CNF formula paired with a finite integer orthogonal drawing of its incidence graph.

Instances For
    theorem Cslib.Complexity.encDrawnPlanarThreeSATThree_mk_inO {γ : Type} {encIn : γ ↪ List Bool} {x0 : γ → Logic.PL.CNF ℕ} {T0 S0 : γ → ℕ} {x1 : γ → Graph.OrthogonalDrawing} {T1 S1 : γ → ℕ} (h0 : Turing.MultiTapeTM.ComputableInO x0 encIn encCNF T0 S0) (h1 : Turing.MultiTapeTM.ComputableInO x1 encIn Graph.encOrthogonalDrawing T1 S1) :
    Turing.MultiTapeTM.ComputableInO (fun (x : γ) => { formula := x0 x, drawing := x1 x }) encIn encDrawnPlanarThreeSATThree (fun (x : γ) => T0 x + T1 x) fun (x : γ) => S0 x + S1 x
    theorem Cslib.Complexity.encDrawnPlanarThreeSATThree_mk_budget {γ : Type} {encIn : γ ↪ List Bool} {budget : γ → ℕ} {x0 : γ → Logic.PL.CNF ℕ} {x1 : γ → Graph.OrthogonalDrawing} (h0 : Turing.MultiTapeTM.ComputableInSpace x0 encIn encCNF budget) (h1 : Turing.MultiTapeTM.ComputableInSpace x1 encIn Graph.encOrthogonalDrawing budget) :
    Turing.MultiTapeTM.ComputableInSpace (fun (x : γ) => { formula := x0 x, drawing := x1 x }) encIn encDrawnPlanarThreeSATThree budget

    Binary encoding of a CNF formula and its supplied orthogonal incidence drawing.

    Instances For
      theorem Cslib.Complexity.encDrawnPlanarThreeSATThree_formula_budget {γ✝ : Type} {encIn✝ : γ✝ ↪ List Bool} {S✝ : γ✝ → ℕ} {g✝ : γ✝ → DrawnPlanarThreeSATThreeInstance} :

      Satisfiable width-three, occurrence-three formulas whose actual incidence graph admits an integer orthogonal drawing with continuous endpoint-only contacts.

      Instances For

        The same problem with finite vertex positions and incidence routes supplied explicitly.

        Instances For

          A total compiler, including an explicit drawing. Invalid syntactic inputs produce the unsatisfiable empty clause with its isolated clause vertex.

          Instances For

            Forget the drawing emitted by the total compiler.

            Instances For

              The total formula output has width at most three, including on rejected inputs.

              The actual total output has at most three literal positions for every variable.

              Valid width-three, occurrence-three inputs preserve their exact number of models.

              The total planar compiler preserves syntax-guarded counts, including rejected inputs.

              The total output is satisfiable exactly on the source 3SAT-3 language.

              Native polynomial-time reduction to a formula admitting an orthogonal drawing.

              Orthogonal planar 3SAT-3 with the drawing supplied is NP-hard under binary encodings.

              Satisfiability of occurrence-three, width-three formulas admitting an integer orthogonal incidence drawing is NP-hard under the ordinary binary formula encoding.

              Explicit linear grid sides for the total supplied-drawing compiler.

              Explicit quadratic formula, incidence-route, segment and Manhattan wire bounds.

              The original 3SAT input first passes through the linear occurrence splitter.

              Instances For

                Formula projection of the total compiler from original 3SAT instances.

                Instances For

                  Formula output from original 3SAT is computed in native polynomial time.

                  Occurrence splitting and planarization preserve all models of width-three inputs.

                  The total output is satisfiable exactly when the original input belongs to 3SAT.

                  The composed output has its actual orthogonal drawing for every original CNF input.

                  The original 3SAT language reduces to the supplied-drawing target by the composed compiler.

                  The composed formula output belongs to the existential-drawing target exactly on 3SAT.

                  Linear grid sides are measured against the original formula's clause/literal size.

                  theorem Cslib.Complexity.toDrawnPlanarThreeSAT_costs (φ : Logic.PL.CNF ℕ) :
                  have out := toDrawnPlanarThreeSAT φ; have s := List.length φ + φ.vars.length + 1; List.length out.formula ≤ 245000 * s ^ 2 ∧ out.formula.vars.length ≤ 490000 * s ^ 2 ∧ out.drawing.2.length ≤ 490000 * s ^ 2 ∧ Graph.drawingSegmentCount out.drawing ≤ 588000 * s ^ 2 ∧ Graph.drawingWireLength out.drawing ≤ 19600000 * s ^ 2

                  All output formula and drawing costs are quadratic in the original clause/literal size.