Formula well-formedness decided in quadratic time by unary Turing machine
ProvedCookLevin.isFormulaStringB_machine_unaryisformulastringbquadratic-timeturing-machineunaryverifier
There exists a multi-tape Turing machine with tape count and alphabet size that decides whether an input string is a valid binary encoding of a CNF formula within a step count depending solely on the length of :
within at most steps for a constant .
The predicate isFormulaStringB x checks whether . Because this check is a property only of the instance and completely ignores the certificate on tape 1, the computation does not depend on the length of . The multi-tape machine decodes , re-encodes it on a work tape, and compares the strings in steps.
Preamble
import Definitions.Def_CookLevin_Verifier
Formal statement
namespace CookLevin
theorem isFormulaStringB_machine_unary :
∃ (M : Machine) (k G : Nat) (c0 : Nat),
TuringMachine k G M ∧
∀ x w : List Bool,
DecidesIn M k (boolsToSymbols x) (boolsToSymbols w)
(c0 * (x.length + 1) ^ 2)
(isFormulaStringB x) := by sorry
end CookLevinSource