Case Study of the Proof of Cook’s theorem
- Interpretation of A(w)
Yu LI
[email protected]
MIS, Université de Picardie Jules Verne, 33 rue Saint-Leu, 80090 Amiens, France
Abstract
Cook’s theorem is commonly expressed such as any polynomial time-verifiable problem can be reduced to the SAT problem. The proof of Cook’s theorem consists in constructing a propositional formula A(w) to simulate a computation of TM, and such A(w) is claimed to be CNF to represent a polynomial time-verifiable problem w. In this paper, we investigate A(w) through a very simple example and show that, A(w) has just an appearance of CNF, but not a true logical form. This case study suggests that there exists the begging the question in Cook’s theorem.
\setvolume
8 \setyear2012 \setpagerange18 \setheadauthorX. Liu et al. \setissn1553–9105 \setpubdateJanuary 2012 \setno1
{premaker}
1 Introduction
Cook’s theorem [1] is now expressed as any polynomial time-verifiable problem can be reduced to the SAT (SATisfiability) problem. The proof of Cook’s theorem consists in simulating a computation of TM (Turing Machine) by constructing a propositional formula A(w) that is claimed to be CNF (Conjonctive Normal Form) to represent the polynomial time-verifiable problem [1].
In this paper we investigate whether this A(w) is a true logical form to represent a problem through a very simple example.
2 Example
2.1 Polynomial time-verifiable problem and Turing Machine
A polynomial time-verifiable problem refers to a problem w for which there exists a Turing Machine M to verify a certificat u in polynomial time, that is, check whether u is a solution to w.
Let us study a very simple polynomial time-verifiable problem :
Given a propositional formula w=¬x for which there exists a Turing Machine M to verify whether a truth value u of x is a solution to w.
The transition function of M can be represented as follows:
[TABLE]
where N means that the tape head does not move, and R means that the tape head moves to right; qY refers to the state where M stops and indicates that u is a solution to w, and qN refers to the state where M stops and indicates that u is not a solution to w.
2.2 Computation of Turing Machine
A computation of M consists of a sequence of configurations: C(1),C(2),...,C(T), where T=Q(∣w∣) and Q(n) is a polynomial function. A configuration C(t) represents the situation of M at time t where M is in a state, with some symbols on its tape, with its head scanning a square, and the next configuration is determined by the transition function of M.
Fig.1 and Fig. 2 illustrate two computations of M on inputs : x=0 and x=1.
3 Form of A(w)
According to the proof of Cook’s theorem [1][2], the formula A(w) is built by simulating a computation of M, such as A(w)=B∧C∧D∧E∧F∧G∧H∧I. A(w) is claimed to represent a problem w.
We construct A(w) for the above example.
3.1 Basic elements
The machine M possesses:
4 states : {q0,q1,q2=qY,q3=qN}, where q0 is the initial state, and q2, q3 are two final states.
3 symbols : {σ1=b,σ2=0,σ3=1}, where σ1 is the blank symbol.
2 square numbers : {s=1,s=2}.
4 rules.
n is the input size, n=2; p(n) is a polynomial function of n, and p(2)=3.
3 times (t=1,t=2,t=3) et 2 steps to verify a certificat u of w, where t=1 corresponds to the time for the initial state of the machine.
3.2 Proposition symbols
Three types of proposition symbols to represent a configuration of M :
Ps,ti for 1≤i≤3, 1≤s≤2, 1≤t≤3. Ps,ti is true iff at step t the square number s contains the symbol σi.
Qti for 1≤i≤4, 1≤t≤3. Qti is true iff at step t the machine is in state qi.
Ss,t for 1≤s≤2, 1≤t≤3 is true iff at step t the tape head scans square number s.
3.3 Propositions
- E=E1∧E2∧E3, where Et represents the truth values of Ps,ti, Qti and Ss,t at time t:
E1=Q10∧S1,1∧P1,12∧P2,11 (x=0(σ2)); E1=Q10∧S1,1∧P1,13∧P2,11 (x=1(σ3))
E2 and E2 are determined by the transition function of M
- B=B1∧B2∧B3, where Bt asserts that at time t one and only one square is scanned :
B1=(S1,1∨S2,1)∧(¬S1,1∨¬S2,1)
B2=(S1,2∨S2,2)∧(¬S1,2∨¬S2,2)
B3=(S1,3∨S2,3)∧(¬S1,3∨¬S2,3)
- C=C1∧C2∧C3, where Ct asserts that at time t there is one and only one symbol at each square. Ct is the conjunction of all the Ci,t.
C1=C1,1∧C2,1:
C1,1=(P1,11∨P1,12∨P1,13)∧(¬P1,11∨¬P1,12)∧(¬P1,11∨¬P1,13)∧(¬P1,12∨¬P1,13)
C2,1=(P2,11∨P2,12∨P2,13)∧(¬P2,11∨¬P2,12)∧(¬P2,11∨¬P2,13)∧(¬P2,12∨¬P2,13)
C2=C1,2∧C2,2:
C1,2=(P1,21∨P1,22∨P1,23)∧(¬P1,21∨¬P1,22)∧(¬P1,21∨¬P1,23)∧(¬P1,22∨¬P1,23)
C2,2=(P2,21∨P2,22∨P2,23)∧(¬P2,21∨¬P2,22)∧(¬P2,21∨¬P2,23)∧(¬P2,22∨¬P2,23)
C3=C1,3∧C2,3:
C1,3=(P1,31∨P1,32∨P1,33)∧(¬P1,31∨¬P1,32)∧(¬P1,31∨¬P1,33)∧(¬P1,32∨¬P1,33)
C2,3=(P2,31∨P2,32∨P2,33)∧(¬P2,31∨¬P2,32)∧(¬P2,31∨¬P2,33)∧(¬P2,32∨¬P2,33)
- D=D1∧D2∧D3, where Dt asserts that at time t the machine is in one and only one state.
D1=(Q10∨Q11∨Q12∨Q13)∧(¬Q10∨¬Q11)∧(¬Q10∨¬Q12)∧(¬Q10∨¬Q13)∧(¬Q11∨¬Q12)∧(¬Q11∨¬Q13)∧(¬Q12∨¬Q13)
D2=(Q20∨Q21∨Q22∨Q23)∧(¬Q20∨¬Q21)∧(¬Q20∨¬Q22)∧(¬Q20∨¬Q23)∧(¬Q21∨¬Q22)∧(¬Q21∨¬Q23)∧(¬Q22∨¬Q23)
D3=(Q30∨Q31∨Q32∨Q33)∧(¬Q30∨¬Q31)∧(¬Q30∨¬Q32)∧(¬Q30∨¬Q33)∧(¬Q31∨¬Q32)∧(¬Q31∨¬Q33)∧(¬Q32∨¬Q33)
- F, G, and H assert that for each time t the values of the Ps,ti, Qti and Ss,t are updated properly.
F=F1∧F2, where Ft is the conjunction over all i and j of Fi,jt, where Fi,jt asserts that at time t the machine is in state qi scanning symbol σj, then at time t+1 σj is changed into σl, where σl is the symbol given by the transition function for M.
F1=F0,21∧F0,31 :
F0,21=(¬Q10∨¬S1,1∨¬P1,12∨P1,23), with the rule (q0,0→1,N,q1)
F0,31=(¬Q10∨¬S1,1∨¬P1,13∨P1,22), with the rule (q0,1→0,N,q1)
F2=F1,22∧F1,32 :
F1,22=(¬Q21∨¬S1,2∨¬P1,22∨P1,22), with the rule (q1,0→0,R,qN)
F1,32=(¬Q21∨¬S1,2∨¬P1,23∨P1,33), with the rule (q1,1→1,R,qY)
G=G1∧G2, where Gt is the conjunction over all i and j of Gi,jt, where Gi,jt asserts that at time t the machine is in state qi scanning symbol σj, then at time t+1 the machine is in state qk, where qk is the state given by the transition function for M.
G1=G0,21∧G0,31 :
G0,21=(¬Q10∨¬S1,1∨¬P1,12∨Q21), with the rule (q0,0→1,N,q1)
G0,31=(¬Q10∨¬S1,1∨¬P1,13∨Q21), with the rule (q0,1→0,N,q1)
G2=G1,22∧G1,32 :
G1,22=(¬Q21∨¬S1,2∨¬P1,22∨Q33), with the rule (q1,0→0,R,qN)
G1,32=(¬Q21∨¬S1,2∨¬P1,33∨Q32), with the rule (q1,1→1,R,qY)
H=H1∧H2, where Ht is the conjunction over all i and j of Gi,jt, where Hi,jt asserts that at time t the machine is in state qi scanning symbol σj, then at time t+1 the tape head moves according to the transition function for M.
H1=H0,21∧H0,31 :
H0,21=(¬Q10∨¬S1,1∨¬P1,12∨S1,2), with the rule (q0,0→1,N,q1)
H0,31=(¬Q10∨¬S1,1∨¬P1,13∨S1,2), with the rule (q0,1→0,N,q1)
H2=H1,22∧H1,32 :
H1,22=(¬Q21∨¬S1,2∨¬P1,22∨S2,3), with the rule (q1,0→0,R,qN)
H1,32=(¬Q21∨¬S1,2∨¬P1,33∨S2,3), with the rule (q1,1→1,R,qY)
- I=(Q32∨Q33)∧(Q32∨¬Q33)∧(¬Q32∨Q33), asserts that the machine reaches the state qy or qN at time 3.
Finally, A(w)=B∧C∧D∧E∧F∧G∧H∧I.
4 Conjunctive form of A(w)
We develop A(w) as a computation of M for x=0 as input (see Fig. 1) in order to clarify the real sense of A(w).
Let us define the configuration and the transition of configurations of M :
C(t) : the truth values of Ps,ti, Qti, Ss,t and their constraints.
C(t)→C(t+1) : C(t) is changed to C(t+1) according to the transition function of M.
- At t=1, C(1)=E1∧B1∧C1∧D1 :
E1=Q10∧S1,1∧P1,12∧P2,11, representing the initial configuration where M is in q0, the tape head scans the square of number 1, and a string 0b is on the tape.
B1=(S1,1∨S2,1)∧(¬S1,1∨¬S2,1).
C1=C1,1∧C2,1:
C1,1=(P1,11∨P1,12∨P1,13)∧(¬P1,11∨¬P1,12)∧(¬P1,11∨¬P1,13)∧(¬P1,12∨¬P1,13)
C2,1=(P2,11∨P2,12∨P2,13)∧(¬P2,11∨¬P2,12)∧(¬P2,11∨¬P2,13)∧(¬P2,12∨¬P2,13)
D1=(Q10∨Q11∨Q12∨Q13)∧(¬Q10∨¬Q11)∧(¬Q10∨¬Q12)∧(¬Q10∨¬Q13)∧(¬Q11∨¬Q12)∧(¬Q11∨¬Q13)∧(¬Q12∨¬Q13)
- At t=2, C(2)=E2∧B2∧C2∧D2 is obtained from C(1)∧(C(1)→C(2)).
C(1)→C(2) is represented by F, G and H at t=1 :
-
F0,21=(¬Q10∨¬S1,1∨¬P1,12∨P1,23), with the rule (q0,0→1,N,q1)
-
G0,21=(¬Q10∨¬S1,1∨¬P1,12∨Q21), with the rule (q0,0→1,N,q1)
-
H0,21=(¬Q10∨¬S1,1∨¬P1,12∨S1,2), with the rule (q0,0→1,N,q1)
-
•
E2=Q21∧S1,1∧P1,23∧P2,21, with Q21=1, S1,2=1, P1,23=1, P2,21=1, and other proposition symbols concerning t=2 are assigned with 0.
B2=(S1,2∨S2,2)∧(¬S1,2∨¬S2,2)
C2=C1,2∧C2,2:
C1,2=(P1,21∨P1,22∨P1,23)∧(¬P1,21∨¬P1,22)∧(¬P1,21∨¬P1,23)∧(¬P1,22∨¬P1,23)
C2,2=(P2,21∨P2,22∨P2,23)∧(¬P2,21∨¬P2,22)∧(¬P2,21∨¬P2,23)∧(¬P2,22∨¬P2,23)
D2=(Q20∨Q21∨Q22∨Q23)∧(¬Q20∨¬Q21)∧(¬Q20∨¬Q22)∧(¬Q20∨¬Q23)∧(¬Q21∨¬Q22)∧(¬Q21∨¬Q23)∧(¬Q22∨¬Q23)
- At t=3, C(3)=E3∧B3∧C3∧D3 is obtained from C(2)∧(C(2)→C(3)).
C(2)→C(3) is represented by F, G and H at t=2 :
F1,32=(¬Q21∨¬S1,2∨¬P1,23∨P1,33), with the rule (q1,1→1,R,qY)
G1,32=(¬Q21∨¬S1,2∨¬P1,33∨Q32), with the rule (q1,1→1,R,qY)
H1,32=(¬Q21∨¬S1,2∨¬P1,33∨S2,3), with the rule (q1,1→1,R,qY)
E3=Q32∧S2,3∧P1,33∧P2,31, with Q32=1, S2,3=1, P1,33=1, P2,31=1 , and other proposition symbols concerning t=3 are assigned with 0.
B3=(S1,3∨S2,3)∧(¬S1,3∨¬S2,3)
C3=C1,3∧C2,3:
C1,3=(P1,31∨P1,32∨P1,33)∧(¬P1,31∨¬P1,32)∧(¬P1,31∨¬P1,33)∧(¬P1,32∨¬P1,33)
C2,3=(P2,31∨P2,32∨P2,33)∧(¬P2,31∨¬P2,32)∧(¬P2,31∨¬P2,33)∧(¬P2,32∨¬P2,33)
D3=(Q30∨Q31∨Q32∨Q33)∧(¬Q30∨¬Q31)∧(¬Q30∨¬Q32)∧(¬Q30∨¬Q33)∧(¬Q31∨¬Q32)∧(¬Q31∨¬Q33)∧(¬Q32∨¬Q33)
Therefore, the computation of M for x=0 as input can be represented as :
C(1)∧(C(1)→C(2))∧(C(2)→C(3))=C(1)∧C(2)∧C(3)=(E1∧B1∧C1∧D1)∧(E2∧B2∧C2∧D2)∧(E3∧B3∧C3∧D3)=E∧B∧C∧D=A(w)
It can be seen that A(w) is just the conjonction of all configurations of M to simulate a concret computation of M for verifying a certificat u of w. Given an input u (x=0 or x=1 in this example), whether M accepts it or not, A(w) is always true. Obviously, A(w) has just an appearance of conjunctive form, but not a true logical form.
5 Conclusion
In fact, a true CNF formula is implied in the transition function of M corresponding to F, G, H as well as C(t)→C(t+1), however the transition function of M is based on the expressible logical structure of a problem.
Therefore, it is not that any polynomial time-verifiable problem can be reduced to the SAT problem, but any polynomial time-verifiable problem itself asserts that such problem is representable by a CNF formula. In other words, there exists the begging the question in Cook’s theorem.
Acknowledgements
Thanks to Mr Chumin LI for his suggestion to use this simple example to study A(w).