Documentation

Complexitylib.SAT.ThreeSAT.Verifier

Exact-3 syntax on paired verifier inputs #

The SAT verifier receives pair(z, α), where every bit of z is doubled and the pair separator is 01. This module gives a small finite-state scanner that feeds the decoded left component into ThreeSAT.Syntax and ignores the witness suffix. It recognizes pair(z, α) exactly when z passes the exact-3 syntax checker.

Main results #

State of the paired-input scanner. first and second decode the doubled left component, right ignores the witness suffix, and reject is absorbing.

Instances For
    Equations
    Instances For
      @[implicit_reducible]
      Equations
      • One or more equations did not get rendered due to their size.

      Regular language of paired words whose left component has exact-3 syntax.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        @[simp]

        A canonical pair belongs to the paired syntax language exactly when its left component belongs to the exact-3 syntax language.

        Zero-work-tape scanner for exact-3 syntax on paired inputs.

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For

          The paired syntax scanner decides its language in exactly n + 2 steps.

          Exact-3 syntax on paired inputs is decidable in linear time.