Everything You Always Wanted to Know About Blocked Sets (But Were Afraid to Ask) Tom´ aˇ s Balyo, Andreas Fr¨ ohlich, Marijn J. H. Heule, Armin Biere Charles University, Prague Johannes Kepler University, Linz The University of Texas, Austin SAT 2014 Balyo, Fr¨ ohlich, Heule, Biere Blocked Sets SAT 2014 1 / 23
Overview Definitions 1 Properties of Blocked Sets 2 Solving Blocked Sets 3 Blocked Clause Decomposition 4 Reencoding 5 Experiments 6 Balyo, Fr¨ ohlich, Heule, Biere Blocked Sets SAT 2014 2 / 23
Satisfiability CNF formula A Boolean variable has two values: True and False A literal is Boolean variables or its negation A clause is a disjunction (or) of literals A CNF formula is a conjunction (and) of clauses F = ( x 1 ∨ x 2 ∨ x 3 ) ∧ ( x 1 ∨ x 3 ) ∧ ( x 2 ∨ x 3 ) ∧ ( x 3 ) Satisfiability A CNF formula is satisfiable it has a satisfying assignment. The problem of satisfiability (SAT) is to determine whether a given CNF formula is satisfiable. Balyo, Fr¨ ohlich, Heule, Biere Blocked Sets SAT 2014 3 / 23
Resolution Resolution Rule C 1 = ( l ∨ D 1 ) C 2 = ( ¬ l ∨ D 2 ) C 1 ⊗ l C 2 = ( D 1 ∨ D 2 ) By C 1 ⊗ l C 2 we denote the resolution of C 1 and C 2 on the literal l . The clauses D 1 and D 2 must not contain a pair of complementary literals ( C 1 ⊗ l C 2 would be a tautology). Balyo, Fr¨ ohlich, Heule, Biere Blocked Sets SAT 2014 4 / 23
Resolution Resolution Rule C 1 = ( l ∨ D 1 ) C 2 = ( ¬ l ∨ D 2 ) C 1 ⊗ l C 2 = ( D 1 ∨ D 2 ) By C 1 ⊗ l C 2 we denote the resolution of C 1 and C 2 on the literal l . The clauses D 1 and D 2 must not contain a pair of complementary literals ( C 1 ⊗ l C 2 would be a tautology). If C 1 or C 2 is a unit (one-literal) clause we call it a unit resolution . Balyo, Fr¨ ohlich, Heule, Biere Blocked Sets SAT 2014 4 / 23
Resolution Resolution Rule C 1 = ( l ∨ D 1 ) C 2 = ( ¬ l ∨ D 2 ) C 1 ⊗ l C 2 = ( D 1 ∨ D 2 ) By C 1 ⊗ l C 2 we denote the resolution of C 1 and C 2 on the literal l . The clauses D 1 and D 2 must not contain a pair of complementary literals ( C 1 ⊗ l C 2 would be a tautology). If C 1 or C 2 is a unit (one-literal) clause we call it a unit resolution . Unit Propagation If a unit clause C = ( x ) or C = ( x ) is part of a formula F , then F is equivalent to F x =1 or F x =0 , respectively, and can be replaced by it. This process is called unit propagation . By UP ( F ) we denote the fixpoint obtained by iteratively performing unit propagation until no more unit clauses are part of the formula. Balyo, Fr¨ ohlich, Heule, Biere Blocked Sets SAT 2014 4 / 23
Blocked Sets Literal blocks a clauses A literal l blocks a clause C , l ∈ C w.r.t. a CNF formula F if for each clause C ′ ∈ F with l ∈ C ′ , C ⊗ l C ′ is a tautology. Balyo, Fr¨ ohlich, Heule, Biere Blocked Sets SAT 2014 5 / 23
Blocked Sets Literal blocks a clauses A literal l blocks a clause C , l ∈ C w.r.t. a CNF formula F if for each clause C ′ ∈ F with l ∈ C ′ , C ⊗ l C ′ is a tautology. Blocked clauses A clause C is blocked w.r.t. a CNF formula F if it is a tautology or it has a literal l ∈ C that blocks it (blocking literal). Balyo, Fr¨ ohlich, Heule, Biere Blocked Sets SAT 2014 5 / 23
Blocked Sets Literal blocks a clauses A literal l blocks a clause C , l ∈ C w.r.t. a CNF formula F if for each clause C ′ ∈ F with l ∈ C ′ , C ⊗ l C ′ is a tautology. Blocked clauses A clause C is blocked w.r.t. a CNF formula F if it is a tautology or it has a literal l ∈ C that blocks it (blocking literal). Blocked Clause Elimination Blocked clause elimination (BCE) is the process of removing blocked clauses from a formula F until fixpoint. The obtained formula is denoted by BCE ( F ). Balyo, Fr¨ ohlich, Heule, Biere Blocked Sets SAT 2014 5 / 23
Blocked Sets Literal blocks a clauses A literal l blocks a clause C , l ∈ C w.r.t. a CNF formula F if for each clause C ′ ∈ F with l ∈ C ′ , C ⊗ l C ′ is a tautology. Blocked clauses A clause C is blocked w.r.t. a CNF formula F if it is a tautology or it has a literal l ∈ C that blocks it (blocking literal). Blocked Clause Elimination Blocked clause elimination (BCE) is the process of removing blocked clauses from a formula F until fixpoint. The obtained formula is denoted by BCE ( F ). Blocked Set A CNF formula F is a blocked set if BCE ( F ) = ∅ . Balyo, Fr¨ ohlich, Heule, Biere Blocked Sets SAT 2014 5 / 23
Blocked Sets Example F = ( x 1 ∨ x 2 ∨ x 3 ) ∧ ( x 1 ∨ x 3 ) ∧ ( x 2 ∨ x 3 ) ∧ ( x 3 ) The first literal of each clause is the blocking literal. The clauses are removed from left to right. Basic properties: Removing a blocked clause preserves satisfiability. Blocked sets are always satisfiable. We define the class of all blocked sets BS := { F | BCE ( F ) = ∅} . If G ⊂ F and C is blocked w.r.t. F , then C is blocked w.r.t. G If F ∈ BS and G ⊆ F then G ∈ BS . BCE is confluent, i.e., the order of blocked clause removal is not important Pure literal elimination is a special case of BCE. Balyo, Fr¨ ohlich, Heule, Biere Blocked Sets SAT 2014 6 / 23
BS not closed under (unit) resolution Proposition Blocked sets are not closed under resolution, not even unit resolution. Proof: This is a blocked set. ( x 1 ∨ x 2 ∨ x 3 ) ∧ ( x 1 ∨ x 3 ) ∧ ( x 2 ∨ x 3 ) ∧ ( x 3 ) This is a unit resolvent. ( x 1 ∨ x 2 ) = ( x 1 ∨ x 2 ∨ x 3 ) ⊗ ( x 3 ) This is not a blocked set. ( x 1 ∨ x 2 ∨ x 3 ) ∧ ( x 1 ∨ x 3 ) ∧ ( x 2 ∨ x 3 ) ∧ ( x 3 ) ∧ ( x 1 ∨ x 2 ) Balyo, Fr¨ ohlich, Heule, Biere Blocked Sets SAT 2014 7 / 23
BS not closed under partial assignments Proposition Blocked sets are not closed under partially assigning variables, furthermore, a blocked set may become non-blocked even in the subspace where this formula remains satisfiable. Proof: F = ( x 3 ∨ x 1 ∨ x 4 ) ∧ ( x 3 ∨ x 2 ∨ x 4 ) ∧ ( x 2 ∨ x 1 ) ∧ ( x 1 ∨ x 4 ) ∧ ( x 1 ∨ x 5 ) ∧ ( x 5 ∨ x 4 ) This formula F is a blocked set, however, neither F x 3 =0 nor F x 3 =1 is a blocked set. F x 3 =0 = ( x 2 ∨ x 4 ) ∧ ( x 2 ∨ x 1 ) ∧ ( x 1 ∨ x 4 ) ∧ ( x 1 ∨ x 5 ) ∧ ( x 5 ∨ x 4 ) ( x 1 ∨ x 4 ) ∧ ( x 2 ∨ x 1 ) ∧ ( x 1 ∨ x 4 ) ∧ ( x 1 ∨ x 5 ) ∧ ( x 5 ∨ x 4 ) F x 3 =1 = Balyo, Fr¨ ohlich, Heule, Biere Blocked Sets SAT 2014 8 / 23
BS closed under unit propagation Proposition Blocked sets are closed under unit propagation ( F ∈ BS → UP ( F ) ∈ BS ). Proof (sketch): The clauses in UP ( F ) can be eliminated in the same order as in F . Examine all possible (3) cases. Balyo, Fr¨ ohlich, Heule, Biere Blocked Sets SAT 2014 9 / 23
Solving Blocked Sets Balyo, Fr¨ ohlich, Heule, Biere Blocked Sets SAT 2014 10 / 23
Solving Blocked Sets Example: ( x 1 ∨ x 2 ) ∧ ( x 3 ∨ x 2 ) ∧ ( x 3 ∨ x 2 ∨ x 1 ) start with [*,*,*] Balyo, Fr¨ ohlich, Heule, Biere Blocked Sets SAT 2014 10 / 23
Solving Blocked Sets Example: ( x 1 ∨ x 2 ) ∧ ( x 3 ∨ x 2 ) ∧ ( x 3 ∨ x 2 ∨ x 1 ) start with [*,*,*] ( x 3 ∨ x 2 ∨ x 1 ) is not satisfied, V = { x 1 , x 2 , x 3 } , select x 1 , [F,*,*] Balyo, Fr¨ ohlich, Heule, Biere Blocked Sets SAT 2014 10 / 23
Solving Blocked Sets Example: ( x 1 ∨ x 2 ) ∧ ( x 3 ∨ x 2 ) ∧ ( x 3 ∨ x 2 ∨ x 1 ) start with [*,*,*] ( x 3 ∨ x 2 ∨ x 1 ) is not satisfied, V = { x 1 , x 2 , x 3 } , select x 1 , [F,*,*] ( x 3 ∨ x 2 ) is not satisfied, V = { x 2 , x 3 } select x 2 , [F,F,*] Balyo, Fr¨ ohlich, Heule, Biere Blocked Sets SAT 2014 10 / 23
Solving Blocked Sets Example: ( x 1 ∨ x 2 ) ∧ ( x 3 ∨ x 2 ) ∧ ( x 3 ∨ x 2 ∨ x 1 ) start with [*,*,*] ( x 3 ∨ x 2 ∨ x 1 ) is not satisfied, V = { x 1 , x 2 , x 3 } , select x 1 , [F,*,*] ( x 3 ∨ x 2 ) is not satisfied, V = { x 2 , x 3 } select x 2 , [F,F,*] ( x 1 ∨ x 2 ) is not satisfied, V = ∅ flip x 1 , [T,F,*] Balyo, Fr¨ ohlich, Heule, Biere Blocked Sets SAT 2014 10 / 23
Solving Blocked Sets Properties: The algorithm can find partial satisfying assignments. It runs in linear time. The algorithm is non-deterministic (select on line S7). All the solutions can be found (by doing proper selections). Balyo, Fr¨ ohlich, Heule, Biere Blocked Sets SAT 2014 11 / 23
Smells Like Local Search What if WalkSat always flipped the blocking literal? 1000 100 10 Time [s] 1 flip blit 0.1 CCA 2013 ProbSat Sparrow 0.01 0 10 20 30 40 50 60 70 80 90 100 Problems Balyo, Fr¨ ohlich, Heule, Biere Blocked Sets SAT 2014 12 / 23
Getting Blocked Sets Are blocked sets commonly found among application formulas? Balyo, Fr¨ ohlich, Heule, Biere Blocked Sets SAT 2014 13 / 23
Getting Blocked Sets Are blocked sets commonly found among application formulas? NO. Balyo, Fr¨ ohlich, Heule, Biere Blocked Sets SAT 2014 13 / 23
Getting Blocked Sets Are blocked sets commonly found among application formulas? NO. ... among competition benchmarks? Balyo, Fr¨ ohlich, Heule, Biere Blocked Sets SAT 2014 13 / 23
Getting Blocked Sets Are blocked sets commonly found among application formulas? NO. ... among competition benchmarks? NO. Balyo, Fr¨ ohlich, Heule, Biere Blocked Sets SAT 2014 13 / 23
Getting Blocked Sets Are blocked sets commonly found among application formulas? NO. ... among competition benchmarks? NO. Where can we get some blocked sets? Balyo, Fr¨ ohlich, Heule, Biere Blocked Sets SAT 2014 13 / 23
Recommend
More recommend