satisfiability sat and 3sat
play

Satisfiability Sat and 3sat Consider a set of boolean variables x 1 , - PowerPoint PPT Presentation

CS500 CS500 Satisfiability Sat and 3sat Consider a set of boolean variables x 1 , x 2 , . . . x n . Sat : Instance: A CNF formula . A literal is either a boolean variable x i or its negation x i . Question: Is there a truth assignment to the


  1. CS500 CS500 Satisfiability Sat and 3sat Consider a set of boolean variables x 1 , x 2 , . . . x n . Sat : Instance: A CNF formula φ . A literal is either a boolean variable x i or its negation ¬ x i . Question: Is there a truth assignment to the variables of φ such that φ evaluates to true? A clause is a disjunction of literals. For example, x 1 ∨ x 2 ∨ ¬ x 4 is a clause. 3sat : A formula in conjunctive normal form (CNF) is propositional Instance: A 3CNF formula φ . formula which is a conjunction of clauses: Question: Is there a truth assignment to the variables of φ such that φ evaluates to true? ( x 1 ∨ x 2 ∨ ¬ x 4 ) ∧ ( x 2 ∨ ¬ x 3 ) ∧ x 5 ( x 1 ∨ x 2 ∨ ¬ x 4 ) ∧ ( x 2 ∨ ¬ x 3 ) ∧ x 5 is satisfiable; take A CNF formula such that every clause has exactly 3 literals is a x 1 , x 2 , . . . x 5 to be all true 3CNF formula. ( x 1 ∨ ¬ x 2 ) ∧ ( ¬ x 1 ∨ x 2 ) ∧ ( ¬ x 1 ∨ ¬ x 2 ) ∧ ( x 1 ∨ x 2 ) is not ( x 1 ∨ x 2 ∨ ¬ x 4 ) ∧ ( x 2 ∨ ¬ x 3 ∨ x 1 ) satisfiable. CS500 CS500 Importance of Satisfiability Sat and 3sat • Sat and 3sat are basic constraint satisfaction problems. Clearly we have 3sat ≤ Sat • Many different problems can be reduced to SAT . But we also have Sat ≤ 3sat • Arise naturally in many applications involving hardware and software verification and correctness. Given ϕ a CNF formula we create a 3CNF formula ϕ ′ such that • As we will see, it is a fundamental problem in the theory of • ϕ is satisfiable iff ϕ ′ is satisfiable. NP-completeness. • ϕ ′ can be constructed from ϕ in time polynomial in | ϕ | . Idea: if a clause of ϕ is not of length 3 , replace it with several clauses of length exactly 3 .

  2. CS500 CS500 One and two literals More than 3 literals Clause with 2 literals: Let c = ℓ 1 ∨ ℓ 2 . Let c = ℓ 1 ∨ · · · ∨ ℓ k . Let u be a new variable and let Let u 1 , . . . u k − 3 be new variables. Consider c ′ = ( ℓ 1 ∨ ℓ 2 ∨ u ) ∧ ( ℓ 1 ∨ ℓ 2 ∨ ¬ u ) . c ′ =( ℓ 1 ∨ ℓ 2 ∨ u 1 ) ∧ ( ℓ 3 ∨ ¬ u 1 ∨ u 2 ) ∧ Then c is satisfiable iff c ′ is satisfiable ( ℓ 4 ∨ ¬ u 2 ∨ u 3 ) ∧ Clause with 1 literal: Let c = ℓ 1 . · · · ∧ Let u and v be new variables and let ( ℓ k − 2 ∨ ¬ u k − 4 ∨ u k − 3 ) ∧ c ′ = ( ℓ 1 ∨ u ∨ v ) ∧ ( ℓ 1 ∨ u ∨ ¬ v ) ( ℓ k − 1 ∨ ℓ k ∨ ¬ u k − 3 ) . ∧ ( ℓ 1 ∨ ¬ u ∨ v ) ∧ ( ℓ 1 ∨ ¬ u ∨ ¬ v ) . c is satisfiable if and only if c ′ is satisfiable. Then c is satisfiable iff c ′ is satisfiable CS500 CS500 2sat 3Sat ≤ 3Coloring What about 2sat ? Reduction converts a formula φ in 3CNF into a graph G . It can be solved in polynomial time (even linear time). φ is satisfiable iff G can be colored with three colors. N Compare: truth gadget F T 2Coloring 3Coloring . . . ¬ x 1 ¬ x 2 ¬ x 3 ¬ x n 2Sat 3Sat x 1 x 2 x 3 x n We have one variable gadget for each variable. x i and ¬ x i must have different colors. Easy Hard All x i and ¬ x i vertices are connected to N, so they cannot be blue. So either x i is green (and ¬ x i red), or x i is red (and ¬ x i green).

  3. CS500 CS500 Clause gadgets Clause gadgets For each clause c = ℓ 1 ∨ ℓ 2 ∨ ℓ 3 we build a gadget that can be For each clause c = ℓ 1 ∨ ℓ 2 ∨ ℓ 3 we build a gadget that can be colored iff at least one of the ℓ i nodes is green. colored iff at least one of the ℓ i nodes is green. ℓ 1 ℓ 1 T T ℓ 2 ℓ 2 ℓ 3 ℓ 3 CS500 CS500 Clause gadgets Complete construction For each clause c = ℓ 1 ∨ ℓ 2 ∨ ℓ 3 we build a gadget that can be We create a clause gadget for each clause. colored iff at least one of the ℓ i nodes is green. N F T ℓ 1 T . . . ℓ 2 ¬ x 1 ¬ x 2 ¬ x 3 ¬ x n x 1 x 2 x 3 x n ℓ 3 x 1 ∨ ¬ x 2 ∨ x n ¬ x 2 ∨ ¬ x 3 ∨ ¬ x n

  4. CS500 Reduction Summary Planar3Coloring Sat 3Sat 3Coloring IndependentSet VertexCover Clique HamiltonianCycle SetCover SubsetSum HamiltonianPath Partition LongestPath So Sat ≤ X, for all these problems X.

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend