2SAT is NL-complete

Lax485149.TwoSatNLComplete · concepts/Lax485149/TwoSatNLComplete.lean · lax-485149

proven

Loading review…

Sign in with ORCID

Community review

Flags

Each flag is tied to a public ORCID identity and explains why this concept may be incorrect.

No flags have been submitted.

    Community review

    Flag this concept

    State precisely what appears incorrect. This explanation will be public under your ORCID name.

    No source line selected.

    Natural Language Statement

    Theorem

    2SAT is NL-complete under first-order reductions. It is SO-Krom definable, the guessed relation being the satisfying assignment and the width bound a first-order guard; and every SO-Krom definable problem reduces to it by an ordered first-order reduction that emits one 2-clause per clause of the program and per valuation of its first-order variables.

    Concept map
    20 concepts
    100%
    Proven claimDefinitionThis conceptRelated conceptA → B: B builds on A
    Evidence

    Each proof establishes this claim relative to its assumptions.

    Lean source view on GitHub

    1import Lax904597.Problems
    2import Lax904597.Interpretations
    3import Lax904597.Relativized
    4import Lax904597.SecondOrder
    5import Lax904597.Classes
    6import Lax904597.Sat
    7import Lax485149.Problems
    8import Lax485149.Complement
    9import Lax485149.SecondOrderAtoms
    10import Lax485149.KromFragment
    11import Lax485149.TransitiveClosure
    12import Lax485149.DeterministicTransitiveClosure
    13import Lax485149.FirstOrderDefinability
    14import Lax485149.HeadAutomata
    15import Lax485149.Reachability
    16import Lax485149.DeterministicReachability
    17import Lax485149.TwoSat
    18import Lax485149.ClassNL
    19import Lax485149.ClassL
    20
    21/-!
    22---
    23title: 2SAT is NL-complete
    24type: theorem
    25---
    262SAT is NL-complete under first-order reductions. It is SO-Krom definable,
    27the guessed relation being the satisfying assignment and the width bound a
    28first-order guard; and every SO-Krom definable problem reduces to it by an
    29ordered first-order reduction that emits one 2-clause per clause of the
    30program and per valuation of its first-order variables.
    31-/
    32
    33namespace Lax485149.TwoSatNLComplete
    34
    35open FirstOrder FirstOrder.Language
    36open Lax904597.Problems Lax904597.Interpretations Lax904597.Relativized Lax904597.SecondOrder
    37open Lax904597.Classes Lax904597.Sat
    38open Lax485149.Problems Lax485149.Complement Lax485149.SecondOrderAtoms Lax485149.KromFragment
    39open Lax485149.TransitiveClosure Lax485149.DeterministicTransitiveClosure
    40open Lax485149.FirstOrderDefinability Lax485149.HeadAutomata Lax485149.Reachability
    41open Lax485149.DeterministicReachability Lax485149.TwoSat Lax485149.ClassNL Lax485149.ClassL
    42
    43/-- 2SAT is NL-complete. -/
    44axiom twoSat_NL_complete : NL.Complete TwoSAT
    45
    46end Lax485149.TwoSatNLComplete
    47
    Show Proof

    Discussion

    Ask a question or add context. Endorsements and structured flags are kept in the review panel above.

    Loading discussion…