Conjunction of deciders runs in sum of polynomial bounds
ProvedCookLevin.polyTimeDecidable_and_sumcomplexity-theorypolynomial-timeturing-machineverifier
Given two polynomial-time decidable binary predicates and , there exists a multi-tape Turing machine that decides their boolean conjunction
with step count bounded by the sum of two polynomial bounds .
The machine sequentially executes the decision procedure for and, upon acceptance, the decision procedure for , writing the conjunction of their verdicts to the verdict tape.
Preamble
import Definitions.Def_CookLevin_Complexity
Formal statement
namespace CookLevin
theorem polyTimeDecidable_and_sum (f g : List Bool → List Bool → Bool)
(hf : PolyTimeDecidable f) (hg : PolyTimeDecidable g) :
∃ (M : Machine) (k G c1 d1 c2 d2 : Nat),
TuringMachine k G M ∧
∀ x w : List Bool,
DecidesIn M k (boolsToSymbols x) (boolsToSymbols w)
(polyBound c1 d1 (x.length + w.length) + polyBound c2 d2 (x.length + w.length))
(f x w && g x w) := by sorry
end CookLevinSource