fbpx
Wikipedia

Cook–Levin theorem

In computational complexity theory, the Cook–Levin theorem, also known as Cook's theorem, states that the Boolean satisfiability problem is NP-complete. That is, it is in NP, and any problem in NP can be reduced in polynomial time by a deterministic Turing machine to the Boolean satisfiability problem.

The theorem is named after Stephen Cook and Leonid Levin.

An important consequence of this theorem is that if there exists a deterministic polynomial-time algorithm for solving Boolean satisfiability, then every NP problem can be solved by a deterministic polynomial-time algorithm. The question of whether such an algorithm for Boolean satisfiability exists is thus equivalent to the P versus NP problem, which is still widely considered the most important unsolved problem in theoretical computer science as of 2023.

Contributions edit

The concept of NP-completeness was developed in the late 1960s and early 1970s in parallel by researchers in North America and the USSR. In 1971, Stephen Cook published his paper "The complexity of theorem proving procedures"[1] in conference proceedings of the newly founded ACM Symposium on Theory of Computing. Richard Karp's subsequent paper, "Reducibility among combinatorial problems",[2] generated renewed interest in Cook's paper by providing a list of 21 NP-complete problems. Karp also introduced the notion of completeness used in the current definition of NP-completeness (i.e., by polynomial-time many-one reduction). Cook and Karp each received a Turing Award for this work.

The theoretical interest in NP-completeness was also enhanced by the work of Theodore P. Baker, John Gill, and Robert Solovay who showed, in 1975, that solving NP-problems in certain oracle machine models requires exponential time. That is, there exists an oracle A such that, for all subexponential deterministic-time complexity classes T, the relativized complexity class NPA is not a subset of TA. In particular, for this oracle, PA ≠ NPA.[3]

In the USSR, a result equivalent to Baker, Gill, and Solovay's was published in 1969 by M. Dekhtiar.[4] Later Leonid Levin's paper, "Universal search problems",[5] was published in 1973, although it was mentioned in talks and submitted for publication a few years earlier.

Levin's approach was slightly different from Cook's and Karp's in that he considered search problems, which require finding solutions rather than simply determining existence. He provided six such NP-complete search problems, or universal problems. Additionally he found for each of these problems an algorithm that solves it in optimal time (in particular, these algorithms run in polynomial time if and only if P = NP).

Definitions edit

A decision problem is in NP if it can be decided by a non-deterministic Turing machine in polynomial time.

An instance of the Boolean satisfiability problem is a Boolean expression that combines Boolean variables using Boolean operators. Such an expression is satisfiable if there is some assignment of truth values to the variables that makes the entire expression true.

Idea edit

Given any decision problem in NP, construct a non-deterministic machine that solves it in polynomial time. Then for each input to that machine, build a Boolean expression that computes whether when that specific input is passed to the machine, the machine runs correctly, and the machine halts and answers "yes". Then the expression can be satisfied if and only if there is a way for the machine to run correctly and answer "yes", so the satisfiability of the constructed expression is equivalent to asking whether or not the machine will answer "yes".

Proof edit

This proof is based on the one given by Garey & Johnson 1979, pp. 38–44, Section 2.6.

There are two parts to proving that the Boolean satisfiability problem (SAT) is NP-complete. One is to show that SAT is an NP problem. The other is to show that every NP problem can be reduced to an instance of a SAT problem by a polynomial-time many-one reduction.

SAT is in NP because any assignment of Boolean values to Boolean variables that is claimed to satisfy the given expression can be verified in polynomial time by a deterministic Turing machine. (The statements verifiable in polynomial time by a deterministic Turing machine and solvable in polynomial time by a non-deterministic Turing machine are equivalent, and the proof can be found in many textbooks, for example Sipser's Introduction to the Theory of Computation, section 7.3., as well as in the Wikipedia article on NP).

 
Commutative diagram showing Cook's reduction of   to SAT. Data sizes and program runtimes are colored in orange and green, respectively.
 
Schematized accepting computation by the machine  .

Now suppose that a given problem in NP can be solved by the nondeterministic Turing machine  , where   is the set of states,   is the alphabet of tape symbols,   is the initial state,   is the set of accepting states, and   is the transition relation. Suppose further that   accepts or rejects an instance of the problem after at most   computation steps, where   is the size of the instance and   is a polynomial function.

For each input,  , specify a Boolean expression   that is satisfiable if and only if the machine   accepts  .

The Boolean expression uses the variables set out in the following table. Here,   is a machine state,   is a tape position,   is a tape symbol, and   is the number of a computation step.

Variables Intended interpretation How many?[6]
  True if tape cell   contains symbol   at step   of the computation.  
  True if  's read/write head is at tape cell   at step   of the computation.  
  True if   is in state   at step   of the computation.  

Define the Boolean expression   to be the conjunction of the sub-expressions in the following table, for all   and  :

Expression Conditions Interpretation How many?
  Tape cell   initially contains symbol   Initial contents of the tape. For   and  , outside of the actual input  , the initial symbol is the special default/blank symbol.  
  Initial state of  . 1
  Initial position of read/write head. 1
    At most one symbol per tape cell.  
  At least one symbol per tape cell.  
    Tape remains unchanged unless written by head.  
    At most one state at a time.  
  At least one state at a time.  
    At most one head position at a time.  
  At least one head position at a time.  
    Possible transitions at computation step   when head is at position  .  
  Must finish in an accepting state, not later than in step  . 1

If there is an accepting computation for   on input  , then   is satisfiable by assigning  ,   and   their intended interpretations. On the other hand, if   is satisfiable, then there is an accepting computation for   on input   that follows the steps indicated by the assignments to the variables.

There are   Boolean variables, each encodable in space  . The number of clauses is  [7] so the size of   is  . Thus the transformation is certainly a polynomial-time many-one reduction, as required.

Only the first table row ( ) actually depends on the input string  . The remaining lines depend only on the input length   and on the machine  ; they formalize a generic computation of   for up to   steps.

The transformation makes extensive use of the polynomial  . As a consequence, the above proof is not constructive: even if   is known, witnessing the membership of the given problem in NP, the transformation cannot be effectively computed, unless an upper bound   of  's time complexity is also known.

Complexity edit

While the above method encodes a non-deterministic Turing machine in complexity  , the literature describes more sophisticated approaches in complexity  .[8][9][10][11][12] The quasilinear result first appeared seven years after Cook's original publication.

The use of SAT to prove the existence of an NP-complete problem can be extended to other computational problems in logic, and to completeness for other complexity classes. The quantified Boolean formula problem (QBF) involves Boolean formulas extended to include nested universal quantifiers and existential quantifiers for its variables. The QBF problem can be used to encode computation with a Turing machine limited to polynomial space complexity, proving that there exists a problem (the recognition of true quantified Boolean formulas) that is PSPACE-complete. Analogously, dependency quantified boolean formulas encode computation with a Turing machine limited to logarithmic space complexity, proving that there exists a problem that is NL-complete.[13][14]

Consequences edit

The proof shows that every problem in NP can be reduced in polynomial time (in fact, logarithmic space suffices) to an instance of the Boolean satisfiability problem. This means that if the Boolean satisfiability problem could be solved in polynomial time by a deterministic Turing machine, then all problems in NP could be solved in polynomial time, and so the complexity class NP would be equal to the complexity class P.

The significance of NP-completeness was made clear by the publication in 1972 of Richard Karp's landmark paper, "Reducibility among combinatorial problems", in which he showed that 21 diverse combinatorial and graph theoretical problems, each infamous for its intractability, are NP-complete.[2]

Karp showed each of his problems to be NP-complete by reducing another problem (already shown to be NP-complete) to that problem. For example, he showed the problem 3SAT (the Boolean satisfiability problem for expressions in conjunctive normal form (CNF) with exactly three variables or negations of variables per clause) to be NP-complete by showing how to reduce (in polynomial time) any instance of SAT to an equivalent instance of 3SAT.[15]

Garey and Johnson presented more than 300 NP-complete problems in their book Computers and Intractability: A Guide to the Theory of NP-Completeness,[16] and new problems are still being discovered to be within that complexity class.

Although many practical instances of SAT can be solved by heuristic methods, the question of whether there is a deterministic polynomial-time algorithm for SAT (and consequently all other NP-complete problems) is still a famous unsolved problem, despite decades of intense effort by complexity theorists, mathematical logicians, and others. For more details, see the article P versus NP problem.

References edit

  1. ^ Cook, Stephen (1971). "The complexity of theorem proving procedures". Proceedings of the Third Annual ACM Symposium on Theory of Computing. pp. 151–158. doi:10.1145/800157.805047. ISBN 9781450374644. S2CID 7573663.
  2. ^ a b Karp, Richard M. (1972). "Reducibility Among Combinatorial Problems". In Raymond E. Miller; James W. Thatcher (eds.). Complexity of Computer Computations. New York: Plenum. pp. 85–103. ISBN 0-306-30707-3.
  3. ^ T. P. Baker; J. Gill; R. Solovay (1975). "Relativizations of the P = NP question". SIAM Journal on Computing. 4 (4): 431–442. doi:10.1137/0204037.
  4. ^ Dekhtiar, M. (1969). "On the impossibility of eliminating exhaustive search in computing a function relative to its graph". Proceedings of the USSR Academy of Sciences (in Russian). 14: 1146–1148.
  5. ^ Levin, Leonid (1973). "Универсальные задачи перебора" [Universal search problems]. Problems of Information Transmission (in Russian). 9 (3): 115–116. Translated into English by Trakhtenbrot, B. A. (1984). "A survey of Russian approaches to perebor (brute-force searches) algorithms". Annals of the History of Computing. 6 (4): 384–400. doi:10.1109/MAHC.1984.10036. S2CID 950581. Translation see appendix, p.399-400.
  6. ^ This column uses the big O notation.
  7. ^ The number of literals in each clause does not depend on  , except for the last table row, which leads to a clause with   literals.
  8. ^ Claus-Peter Schnorr (Jan 1978). "Satisfiability is quasilinear complete in NQL" (PDF). Journal of the ACM. 25 (1): 136–145. doi:10.1145/322047.322060. S2CID 1929802.
  9. ^ Nicholas Pippenger and Michael J. Fischer (Apr 1979). "Relations among complexity measures" (PDF). Journal of the ACM. 26 (2): 361–381. doi:10.1145/322123.322138. S2CID 2432526.
  10. ^ John Michael Robson (Feb 1979). A new proof of the NP completeness of satisfiability. Proceedings of the 2nd Australian Computer Science Conference. pp. 62–70.
  11. ^ John Michael Robson (May 1991). "An   reduction from RAM computations to satisfiability". Theoretical Computer Science. 82 (1): 141–149. doi:10.1016/0304-3975(91)90177-4.
  12. ^ Stephen A. Cook (Jan 1988). "Short propositional formulas represent nondeterministic computations" (PDF). Information Processing Letters. 26 (5): 269–270. doi:10.1016/0020-0190(88)90152-4.
  13. ^ Gary L. Peterson; John H. Reif (1979). "Multiple-person alternation". In Ronald V. Book; Paul Young (eds.). Proc. 20th Annual Symposium on Foundations of Computer Science (SFCS). IEEE. pp. 348–363.
  14. ^ Gary Peterson; John Reif; Salman Azhar (Apr 2001). "Lower bounds for multiplayer noncooperative games of incomplete information". Computers & Mathematics with Applications. 41 (7–8): 957–992. doi:10.1016/S0898-1221(00)00333-3.
  15. ^ First modify the proof of the Cook–Levin theorem, so that the resulting formula is in conjunctive normal form, then introduce new variables to split clauses with more than 3 atoms. For example, the clause   can be replaced by the conjunction of clauses  , where   is a new variable that will not be used anywhere else in the expression. Clauses with fewer than three atoms can be padded; for example,   can be replaced by  .
  16. ^ Garey, Michael R.; Johnson, David S. (1979). Computers and Intractability: A Guide to the Theory of NP-Completeness. Series of Books in the Mathematical Sciences (1st ed.). New York: W. H. Freeman and Company. ISBN 9780716710455. MR 0519066. OCLC 247570676.

cook, levin, theorem, computational, complexity, theory, also, known, cook, theorem, states, that, boolean, satisfiability, problem, complete, that, problem, reduced, polynomial, time, deterministic, turing, machine, boolean, satisfiability, problem, theorem, . In computational complexity theory the Cook Levin theorem also known as Cook s theorem states that the Boolean satisfiability problem is NP complete That is it is in NP and any problem in NP can be reduced in polynomial time by a deterministic Turing machine to the Boolean satisfiability problem The theorem is named after Stephen Cook and Leonid Levin An important consequence of this theorem is that if there exists a deterministic polynomial time algorithm for solving Boolean satisfiability then every NP problem can be solved by a deterministic polynomial time algorithm The question of whether such an algorithm for Boolean satisfiability exists is thus equivalent to the P versus NP problem which is still widely considered the most important unsolved problem in theoretical computer science as of 2023 update Contents 1 Contributions 2 Definitions 3 Idea 4 Proof 5 Complexity 6 Consequences 7 ReferencesContributions editThe concept of NP completeness was developed in the late 1960s and early 1970s in parallel by researchers in North America and the USSR In 1971 Stephen Cook published his paper The complexity of theorem proving procedures 1 in conference proceedings of the newly founded ACM Symposium on Theory of Computing Richard Karp s subsequent paper Reducibility among combinatorial problems 2 generated renewed interest in Cook s paper by providing a list of 21 NP complete problems Karp also introduced the notion of completeness used in the current definition of NP completeness i e by polynomial time many one reduction Cook and Karp each received a Turing Award for this work The theoretical interest in NP completeness was also enhanced by the work of Theodore P Baker John Gill and Robert Solovay who showed in 1975 that solving NP problems in certain oracle machine models requires exponential time That is there exists an oracle A such that for all subexponential deterministic time complexity classes T the relativized complexity class NPA is not a subset of TA In particular for this oracle PA NPA 3 In the USSR a result equivalent to Baker Gill and Solovay s was published in 1969 by M Dekhtiar 4 Later Leonid Levin s paper Universal search problems 5 was published in 1973 although it was mentioned in talks and submitted for publication a few years earlier Levin s approach was slightly different from Cook s and Karp s in that he considered search problems which require finding solutions rather than simply determining existence He provided six such NP complete search problems or universal problems Additionally he found for each of these problems an algorithm that solves it in optimal time in particular these algorithms run in polynomial time if and only if P NP Definitions editA decision problem is in NP if it can be decided by a non deterministic Turing machine in polynomial time An instance of the Boolean satisfiability problem is a Boolean expression that combines Boolean variables using Boolean operators Such an expression is satisfiable if there is some assignment of truth values to the variables that makes the entire expression true Idea editGiven any decision problem in NP construct a non deterministic machine that solves it in polynomial time Then for each input to that machine build a Boolean expression that computes whether when that specific input is passed to the machine the machine runs correctly and the machine halts and answers yes Then the expression can be satisfied if and only if there is a way for the machine to run correctly and answer yes so the satisfiability of the constructed expression is equivalent to asking whether or not the machine will answer yes Proof editThis proof is based on the one given by Garey amp Johnson 1979 pp 38 44 Section 2 6 There are two parts to proving that the Boolean satisfiability problem SAT is NP complete One is to show that SAT is an NP problem The other is to show that every NP problem can be reduced to an instance of a SAT problem by a polynomial time many one reduction SAT is in NP because any assignment of Boolean values to Boolean variables that is claimed to satisfy the given expression can be verified in polynomial time by a deterministic Turing machine The statements verifiable in polynomial time by a deterministic Turing machine and solvable in polynomial time by a non deterministic Turing machine are equivalent and the proof can be found in many textbooks for example Sipser s Introduction to the Theory of Computation section 7 3 as well as in the Wikipedia article on NP nbsp Commutative diagram showing Cook s reduction of M displaystyle M nbsp to SAT Data sizes and program runtimes are colored in orange and green respectively nbsp Schematized accepting computation by the machine M displaystyle M nbsp Now suppose that a given problem in NP can be solved by the nondeterministic Turing machine M Q S s F d displaystyle M Q Sigma s F delta nbsp where Q displaystyle Q nbsp is the set of states S displaystyle Sigma nbsp is the alphabet of tape symbols s Q displaystyle s in Q nbsp is the initial state F Q displaystyle F subseteq Q nbsp is the set of accepting states and d Q F S Q S 1 1 displaystyle delta subseteq Q setminus F times Sigma times Q times Sigma times 1 1 nbsp is the transition relation Suppose further that M displaystyle M nbsp accepts or rejects an instance of the problem after at most p n displaystyle p n nbsp computation steps where n displaystyle n nbsp is the size of the instance and p displaystyle p nbsp is a polynomial function For each input I displaystyle I nbsp specify a Boolean expression B displaystyle B nbsp that is satisfiable if and only if the machine M displaystyle M nbsp accepts I displaystyle I nbsp The Boolean expression uses the variables set out in the following table Here q Q displaystyle q in Q nbsp is a machine state p n i p n displaystyle p n leq i leq p n nbsp is a tape position j S displaystyle j in Sigma nbsp is a tape symbol and 0 k p n displaystyle 0 leq k leq p n nbsp is the number of a computation step Variables Intended interpretation How many 6 T i j k displaystyle T i j k nbsp True if tape cell i displaystyle i nbsp contains symbol j displaystyle j nbsp at step k displaystyle k nbsp of the computation O p n 2 displaystyle O p n 2 nbsp H i k displaystyle H i k nbsp True if M displaystyle M nbsp s read write head is at tape cell i displaystyle i nbsp at step k displaystyle k nbsp of the computation O p n 2 displaystyle O p n 2 nbsp Q q k displaystyle Q q k nbsp True if M displaystyle M nbsp is in state q displaystyle q nbsp at step k displaystyle k nbsp of the computation O p n displaystyle O p n nbsp Define the Boolean expression B displaystyle B nbsp to be the conjunction of the sub expressions in the following table for all p n i p n displaystyle p n leq i leq p n nbsp and 0 k p n displaystyle 0 leq k leq p n nbsp Expression Conditions Interpretation How many T i j 0 displaystyle T i j 0 nbsp Tape cell i displaystyle i nbsp initially contains symbol j displaystyle j nbsp Initial contents of the tape For i gt n 1 displaystyle i gt n 1 nbsp and i lt 0 displaystyle i lt 0 nbsp outside of the actual input I displaystyle I nbsp the initial symbol is the special default blank symbol O p n displaystyle O p n nbsp Q s 0 displaystyle Q s 0 nbsp Initial state of M displaystyle M nbsp 1H 0 0 displaystyle H 0 0 nbsp Initial position of read write head 1 T i j k T i j k displaystyle neg T i j k lor neg T i j k nbsp j j displaystyle j neq j nbsp At most one symbol per tape cell O p n 2 displaystyle O p n 2 nbsp j S T i j k displaystyle bigvee j in Sigma T i j k nbsp At least one symbol per tape cell O p n 2 displaystyle O p n 2 nbsp T i j k T i j k 1 H i k displaystyle T i j k land T i j k 1 rightarrow H i k nbsp j j displaystyle j neq j nbsp Tape remains unchanged unless written by head O p n 2 displaystyle O p n 2 nbsp Q q k Q q k displaystyle lnot Q q k lor lnot Q q k nbsp q q displaystyle q neq q nbsp At most one state at a time O p n displaystyle O p n nbsp q Q Q q k displaystyle bigvee q in Q Q q k nbsp At least one state at a time O p n displaystyle O p n nbsp H i k H i k displaystyle lnot H i k lor lnot H i k nbsp i i displaystyle i neq i nbsp At most one head position at a time O p n 3 displaystyle O p n 3 nbsp p n i p n H i k displaystyle bigvee p n leq i leq p n H i k nbsp At least one head position at a time O p n 2 displaystyle O p n 2 nbsp H i k Q q k T i s k q s q s d d H i d k 1 Q q k 1 T i s k 1 displaystyle begin array l H i k land Q q k land T i sigma k to bigvee q sigma q sigma d in delta H i d k 1 land Q q k 1 land T i sigma k 1 end array nbsp k lt p n displaystyle k lt p n nbsp Possible transitions at computation step k displaystyle k nbsp when head is at position i displaystyle i nbsp O p n 2 displaystyle O p n 2 nbsp 0 k p n f F Q f k displaystyle bigvee 0 leq k leq p n bigvee f in F Q f k nbsp Must finish in an accepting state not later than in step p n displaystyle p n nbsp 1If there is an accepting computation for M displaystyle M nbsp on input I displaystyle I nbsp then B displaystyle B nbsp is satisfiable by assigning T i j k displaystyle T i j k nbsp H i k displaystyle H i k nbsp and Q i k displaystyle Q i k nbsp their intended interpretations On the other hand if B displaystyle B nbsp is satisfiable then there is an accepting computation for M displaystyle M nbsp on input I displaystyle I nbsp that follows the steps indicated by the assignments to the variables There are O p n 2 displaystyle O p n 2 nbsp Boolean variables each encodable in space O log p n displaystyle O log p n nbsp The number of clauses is O p n 3 displaystyle O p n 3 nbsp 7 so the size of B displaystyle B nbsp is O log p n p n 3 displaystyle O log p n p n 3 nbsp Thus the transformation is certainly a polynomial time many one reduction as required Only the first table row T i j 0 displaystyle T i j 0 nbsp actually depends on the input string I displaystyle I nbsp The remaining lines depend only on the input length n displaystyle n nbsp and on the machine M displaystyle M nbsp they formalize a generic computation of M displaystyle M nbsp for up to p n displaystyle p n nbsp steps The transformation makes extensive use of the polynomial p n displaystyle p n nbsp As a consequence the above proof is not constructive even if M displaystyle M nbsp is known witnessing the membership of the given problem in NP the transformation cannot be effectively computed unless an upper bound p n displaystyle p n nbsp of M displaystyle M nbsp s time complexity is also known Complexity editWhile the above method encodes a non deterministic Turing machine in complexity O log p n p n 3 displaystyle O log p n p n 3 nbsp the literature describes more sophisticated approaches in complexity O p n log p n displaystyle O p n log p n nbsp 8 9 10 11 12 The quasilinear result first appeared seven years after Cook s original publication The use of SAT to prove the existence of an NP complete problem can be extended to other computational problems in logic and to completeness for other complexity classes The quantified Boolean formula problem QBF involves Boolean formulas extended to include nested universal quantifiers and existential quantifiers for its variables The QBF problem can be used to encode computation with a Turing machine limited to polynomial space complexity proving that there exists a problem the recognition of true quantified Boolean formulas that is PSPACE complete Analogously dependency quantified boolean formulas encode computation with a Turing machine limited to logarithmic space complexity proving that there exists a problem that is NL complete 13 14 Consequences editThe proof shows that every problem in NP can be reduced in polynomial time in fact logarithmic space suffices to an instance of the Boolean satisfiability problem This means that if the Boolean satisfiability problem could be solved in polynomial time by a deterministic Turing machine then all problems in NP could be solved in polynomial time and so the complexity class NP would be equal to the complexity class P The significance of NP completeness was made clear by the publication in 1972 of Richard Karp s landmark paper Reducibility among combinatorial problems in which he showed that 21 diverse combinatorial and graph theoretical problems each infamous for its intractability are NP complete 2 Karp showed each of his problems to be NP complete by reducing another problem already shown to be NP complete to that problem For example he showed the problem 3SAT the Boolean satisfiability problem for expressions in conjunctive normal form CNF with exactly three variables or negations of variables per clause to be NP complete by showing how to reduce in polynomial time any instance of SAT to an equivalent instance of 3SAT 15 Garey and Johnson presented more than 300 NP complete problems in their book Computers and Intractability A Guide to the Theory of NP Completeness 16 and new problems are still being discovered to be within that complexity class Although many practical instances of SAT can be solved by heuristic methods the question of whether there is a deterministic polynomial time algorithm for SAT and consequently all other NP complete problems is still a famous unsolved problem despite decades of intense effort by complexity theorists mathematical logicians and others For more details see the article P versus NP problem References edit Cook Stephen 1971 The complexity of theorem proving procedures Proceedings of the Third Annual ACM Symposium on Theory of Computing pp 151 158 doi 10 1145 800157 805047 ISBN 9781450374644 S2CID 7573663 a b Karp Richard M 1972 Reducibility Among Combinatorial Problems In Raymond E Miller James W Thatcher eds Complexity of Computer Computations New York Plenum pp 85 103 ISBN 0 306 30707 3 T P Baker J Gill R Solovay 1975 Relativizations of the P NP question SIAM Journal on Computing 4 4 431 442 doi 10 1137 0204037 Dekhtiar M 1969 On the impossibility of eliminating exhaustive search in computing a function relative to its graph Proceedings of the USSR Academy of Sciences in Russian 14 1146 1148 Levin Leonid 1973 Universalnye zadachi perebora Universal search problems Problems of Information Transmission in Russian 9 3 115 116 Translated into English by Trakhtenbrot B A 1984 A survey of Russian approaches to perebor brute force searches algorithms Annals of the History of Computing 6 4 384 400 doi 10 1109 MAHC 1984 10036 S2CID 950581 Translation see appendix p 399 400 This column uses the big O notation The number of literals in each clause does not depend on n displaystyle n nbsp except for the last table row which leads to a clause with O p n displaystyle O p n nbsp literals Claus Peter Schnorr Jan 1978 Satisfiability is quasilinear complete in NQL PDF Journal of the ACM 25 1 136 145 doi 10 1145 322047 322060 S2CID 1929802 Nicholas Pippenger and Michael J Fischer Apr 1979 Relations among complexity measures PDF Journal of the ACM 26 2 361 381 doi 10 1145 322123 322138 S2CID 2432526 John Michael Robson Feb 1979 A new proof of the NP completeness of satisfiability Proceedings of the 2nd Australian Computer Science Conference pp 62 70 John Michael Robson May 1991 An O T log T displaystyle O T log T nbsp reduction from RAM computations to satisfiability Theoretical Computer Science 82 1 141 149 doi 10 1016 0304 3975 91 90177 4 Stephen A Cook Jan 1988 Short propositional formulas represent nondeterministic computations PDF Information Processing Letters 26 5 269 270 doi 10 1016 0020 0190 88 90152 4 Gary L Peterson John H Reif 1979 Multiple person alternation In Ronald V Book Paul Young eds Proc 20th Annual Symposium on Foundations of Computer Science SFCS IEEE pp 348 363 Gary Peterson John Reif Salman Azhar Apr 2001 Lower bounds for multiplayer noncooperative games of incomplete information Computers amp Mathematics with Applications 41 7 8 957 992 doi 10 1016 S0898 1221 00 00333 3 First modify the proof of the Cook Levin theorem so that the resulting formula is in conjunctive normal form then introduce new variables to split clauses with more than 3 atoms For example the clause A B C D displaystyle A lor B lor C lor D nbsp can be replaced by the conjunction of clauses A B Z Z C D displaystyle A lor B lor Z land lnot Z lor C lor D nbsp where Z displaystyle Z nbsp is a new variable that will not be used anywhere else in the expression Clauses with fewer than three atoms can be padded for example A B displaystyle A lor B nbsp can be replaced by A B B displaystyle A lor B lor B nbsp Garey Michael R Johnson David S 1979 Computers and Intractability A Guide to the Theory of NP Completeness Series of Books in the Mathematical Sciences 1st ed New York W H Freeman and Company ISBN 9780716710455 MR 0519066 OCLC 247570676 Retrieved from https en wikipedia org w index php title Cook Levin theorem amp oldid 1184138602, wikipedia, wiki, book, books, library,

article

, read, download, free, free download, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, picture, music, song, movie, book, game, games.