Document 13986700

advertisement
Symboli Tehniques in Satisability Solving Guoqiang Pan and Moshe Y. Vardi
Department of Computer Siene, Rie University, Houston, USA
(fgqpan,vardigs.rie.edu)
Reent work has shown how to use BDDs for satisability solving. The
idea of this approah, whih we all symboli quantier elimination, is to view an
instane of propositional satisability as an existentially quantied propositional
formula. Satisability solving then amounts to quantier elimination; one all quantiers have been eliminated we are left with either 1 or 0. Our goal in this work is
to study the eetiveness of symboli quantier elimination as an approah to satisability solving. To that end, we ondut a diret omparison with the DPLL-based
ZCha, as well as evaluate a variety of optimization tehniques for the symboli
approah. In omparing the symboli approah to ZCha, we evaluate salability
aross a variety of lasses of formulas. We nd that no approah dominates aross all
lasses. While ZCha dominates for many lasses of formulas, the symboli approah
is superior for other lasses of formulas.
One we have demonstrated the viability of the symboli approah, we fous
on optimization tehniques for this approah. We study tehniques from onstraint
satisfation for nding a good plan for performing the symboli operations of onjuntion and of existential quantiation. We also study various variable-ordering
heuristis, nding that while no heuristi seems to dominate aross all lasses of
formulas, the maximum-ardinality searh heuristi seems to oer the best overall
performane.
Abstrat.
Keywords:
Satisability, Binary Deision Diagram, Symboli Deision Proedure
1.
Introdution
Propositional-satisability solving has been an ative area of researh
throughout the last 40 years, starting from the resolution-based algorithm in [24℄ and the searh-based algorithm in [23℄. The latter
approah, referred to as the DPLL approah, has sine been the method
of hoie for satisability solving. In the last ten years, muh progress
has been made in developing highly optimized DPLL solvers, leading to
eÆient solvers suh as ZCha [45℄ and BerkMin [33℄, all of whih use
advaned heuristis in hoosing variable splitting order, in performing
eÆient Boolean onstraint propagation, and in onit-driven learning
to prune unneessary searh branhes. These solvers are so eetive
that they are used as generi problem solvers, where problems suh as
A preliminary version of the paper was presented in SAT'04. Supported in
part by NSF grants CCR-9988322, CCR-0124077, CCR-0311326, IIS-9908435, IIS9978135, EIA-0086264, ANI-0216467, and by BSF grant 9800096.
2005 Kluwer Aademi Publishers.
Printed in the Netherlands.
pvsat05.tex; 3/05/2005; 16:09; p.1
2
bounded model heking [8℄, planning [39℄, sheduling [20℄, and many
others are typially solved by reduing them to satisability problems.
Another suessful approah to propositional reasoning is that of
deision diagrams, whih are used to represent propositional funtions.
An instane of the approah is that of ordered Boolean deision diagrams (BDDs) [12℄, whih are used suessfully in model heking [14℄
and planning [17℄. A BDD representation also enables easy satisability
heking, whih amounts to deiding whether it is dierent than the
empty BDD [12℄. Sine deision diagrams usually represent the set of
all satisfying truth assignments, they inur a signiant overhead over
searh tehniques that fous on nding a single satisfying assignment
[19℄. Thus, published omparisons between searh and BDD tehniques
[40, 55℄ used searh to enumerate all satisfying assignments. The onlusion of that omparison is that no approah dominates; for ertain
lasses of formulas searh is superior, and for other lasses of formulas
BDDs are superior.
Reent work has shown how to use BDDs for satisability solving
rather than enumeration [50℄. The idea of this approah, whih we
all symboli quantier elimination, is to view an instane of propositional satisability as an existentially quantied propositional formula.
Satisability solving then amounts to quantier elimination; one all
quantiers have been eliminated we are left with either 1 or 0. This
enables us to apply ideas about existential quantier elimination from
model heking [49℄ and onstraint satisfation [26℄. The fous in [50℄
is on expeted behavior on random instanes of 3-SAT rather than on
eÆieny. In partiular, only a minimal eort is made to optimize the
approah and no omparison to searh methods is reported. Nevertheless, the results in [50℄ show that BDD-based algorithms behave quite
dierently than searh-based algorithms, whih makes them worthy of
further investigation. (Other reent approahes reported using deision
diagrams in satisability solving [15, 22, 29, 46℄. We disuss these works
later).
Our goal in this paper is to study the eetiveness of symboli
quantier elimination as an approah to satisability solving. To that
end, we ondut a diret omparison with the DPLL-based ZCha, as
well as evaluate a variety of optimization tehniques for the symboli
approah. In omparing the symboli approah to ZCha we use a
variety of lasses of formulas. Unlike, however, the standard pratie
of omparing solver performane on benhmark suites [42℄, we fous
here on salability. That is, we fous on salable lasses of formulas and
evaluate how performane sales with formula size. As in [55℄ we nd
that no approah dominates aross all lasses. While ZCha dominates
pvsat05.tex; 3/05/2005; 16:09; p.2
3
for many lasses of formulas, the symboli approah is superior for other
lasses of formulas.
One we have demonstrated the viability of the symboli approah,
we fous on optimization tehniques. The key idea underlying [50℄
is that evaluating an existentially quantied propositional formula in
onjuntive-normal form requires performing several instanes of onjuntion and of existential quantiation. The goal is to nd a good
plan for these operations. We study two approahes to this problem.
The rst is Bouquet's method (BM) of [50℄ and the seond is the buketelimination (BE) approah of [26℄. BE aims at reduing the size of the
support set of the generated BDDs through quantier elimination and
it has the theoretial advantage of being, in priniple, able to attain
optimal support set size, whih is the treewidth of the input formula
[28℄. Nevertheless, we nd that for ertain lasses of formulas BM is
superior to BE.
The key to good performane in both BM and BE is in hoosing
a good variable order for quantiation and BDD order. Finding an
optimal order is by itself a diÆult problem (omputing the treewidth of
a given graph is NP-hard [4℄), so one has to resort to various heuristis,
f. [41℄. No heuristi seems to dominate aross all lasses of formulas,
but the maximal-ardinality-searh (MCS) heuristi seems to oer the
best overall performane.
Finally, we ontrast our symboli solvers with two other solvers,
using the MCS variable order. We re-implemented ZRes, the ZDDbased multi-resolution approah of [15℄, and ZCha, the DPLL-based
solver of [45℄ to use the MCS variable order. The goal is to have a
omparison of the dierent tehniques, using the same variable order.
See further disussion below.
We start the paper with a desription of symboli quantier elimination as well as the BM approah in Setion 2. We then desribe
the experimental setup in Setion 3. In Setion 4 we ompare ZCha
with BM and show that no approah dominates aross all lasses of
formulas. In Setion 5 we ompare BM with BE and study the impat
of various variable-ordering heuristis. In Setion 6 we ompare our
BDD-based algorithm with A ZDD-based algorithm based on ZRes[15℄
and ompare the dynami variable deision order used in ZCha with a
strutural-guided stati variable order. We onlude with a disussion
in Setion 7.
pvsat05.tex; 3/05/2005; 16:09; p.3
4
2.
Bakground
A binary deision diagram (BDD) is a rooted direted ayli graph
that has only two terminal nodes labeled 0 and 1. Every non-terminal
node is labeled with a Boolean variable and has two outgoing edges
labeled 0 and 1. An ordered binary deision diagram (BDD) is a BDD
with the onstraint that the input variables are ordered and every path
in the BDD visits the variables in asending order. We assume that
all BDDs are redued, whih means that where every node represents
a distint logi funtion. BDDs onstitute an eÆient way to represent
and manipulate Boolean funtions [12℄, in partiular, for a given variable order, BDDs oer a anonial representation. Cheking whether
a BDD is satisable is also easy; it requires heking that it diers
from the predened onstant 0 (the empty BDD). We used the CUDD
pakage for managing BDDs [53℄. The support set of a BDD is the set
of variables labeling its internal nodes.
In [19, 55℄, BDDs are used to onstrut a ompat representation
of the set of all satisfying truth assignments of CNF formulas. The
input formula ' is a onjuntion 1 ^ : : : ^ m of lauses. The algorithm
onstruts a BDD Ai for eah lause i . (Sine a lause exludes only
one assignments to its variables, Ai is of linear size.) A BDD for the set
of satisfying truth assignment is then onstruted inrementally; B1 is
A1 , while Bi+1 is the result of apply(Bi ; Ai ; ^), where apply(A; B; Æ)
is the result of applying a Boolean operator Æ to two BDDs A and B .
Finally, the resulting BDD Bm represents all satisfying assignments of
the input formula.
We an apply existential quantiation to a BDD B :
(9x)B = apply(B jx
1; B
jx
0;
_);
where B jx restrits B to truth assignments that assign the value
to the variable x. Note that quantifying x existentially eliminates
it from the support set of B . The satisability problem is to determine whether a given formula 1 ^ : : : ^ m is satisable. In other
words, the problem is to determine whether the existential formula
(9x1 ) : : : (9xn)(1 ^ : : : ^ m ) is true. Sine heking whether the nal
BDD Bm is equal to 0 an be done by CUDD in onstant time, it
makes little sense, however, to apply existential quantiation to Bm .
Suppose, however, that a variable xj does not our in the lauses
i+1 ; : : : ; m . Then the existential formula an be rewritten as
(9x1 ) : : : (9xj 1)(9xj +1 ) : : : (9xn )((9xj )(1 ^ : : : ^ i ) ^ (i+1 ^ : : : ^ m )):
Pursuing this rewriting strategy as aggressively as possible, we proess
the lauses in the order 1 ; : : : ; n , quanting variables existentially as
pvsat05.tex; 3/05/2005; 16:09; p.4
5
soon as possible (that is, a variable is quantied as soon as it does
not our anymore in the unproesses lauses). We refer to this as
early quantiation of variables. Note that dierent lause orders may
indue dierent orders of variable quantiation. Finding a good lause
order is a major fous of this paper.
This motivates the following hange in the earlier BDD-based satisability-solving algorithm [50℄: after onstruting the BDD Bi , quantify
existentially variables that do not our in the lauses i+1 ; : : : ; m .
In this ase we say that the quantier 9x has been eliminated. The
omputational advantage of quantier elimination stems from the fat
that reduing the size of the support set of a BDD typially (though not
neessarily) results in a redution of its size; that is, the size of (9x)B is
typially smaller than that of B . In a nutshell, this method, whih we
desribe as symboli quantier elimination, eliminates all quantiers
until we are left with the onstant BDD 1 or 0. Symboli quantier
elimination was rst applied to SAT solving in [34℄ (under the name of
hiding funtions ) and tried on random 3-SAT instanes. The work in
[50℄ studied this method further, and onsidered various optimizations.
The main interest there, however, is in the behavior of the method
on random 3-SAT instanes, rather in its omparison to DPLL-based
methods.1
So far we proessed the lauses of the input formula in a linear
fashion. Sine the main point of quantier elimination is to eliminate
variables as early as possible, reordering the lauses may enable us to
do more aggressive quantiation. That is, instead of proessing the
lauses in the order 1 ; : : : ; m , we an apply a permutation and
proess the lauses in the order (1) ; : : : ; (m) . The permutation should be hosen so as to minimize the number of variables in the
support sets of the intermediates BDDs. This observation was rst
made in the ontext of symboli model heking, f. [13, 9, 32, 36℄.
Unfortunately, nding an optimal permutation is by itself a diÆult
optimization problem, motivating heuristi approahes.
A partiular heuristi that was proposed in the ontext of symboli
model heking in [49℄ is that of lustering. In this approah, the lauses
are not proessed one at a time, but several lauses are rst partitioned
into several lusters. For eah luster C we rst apply onjuntion to all
the BDDs of the lauses in the C to obtain a BDD BC . The lusters are
then ombined, together with quantier elimination, as desribed earlier. Heuristis are required both for lustering the lauses and ordering
the lusters. Bouquet proposed the following heuristi in [11℄ (the fous
1 Note that symboli quantier elimination provides pure satisability solving;
the algorithm returns 0 or 1. To nd a satisfying truth assignment when the formula
is satisable, the tehnique of self-reduibility an be used, f. [5℄.
pvsat05.tex; 3/05/2005; 16:09; p.5
6
there is on enumerating prime impliants). Consider some order of the
variables. Let the rank (from 1 to n) of a variable x be rank(x), let the
rank rank(`) of a literal ` be the rank of its underlying variable, and let
the rank rank() of a lause be the maximum rank of its literals. The
lusters are the equivalene lasses of the relation dened by: 0 i
rank () = rank (0 ). The rank of a luster is the rank of its lauses. The
lusters are then ordered aording to inreasing rank. For example,
given the set of lauses fx1 _:x2 ; x1 _ x3 ; :x2 _ x3 ; x3 _ x4 g, The lusters
are C1 = fg; C2 = fx1 _:x2 g; C3 = fx1 _ x3 ; :x2 _ x3 g; C4 = fx3 _ x4 g.
Satisability solving using symboli quantier elimination is a ombination of lustering and early quantiation. We keep a set of ative variables as we onjoin lusters, in the order C1 ; : : : ; Cn . Starting
from an empty set, after eah luster Ci is proessed, we add all the
variables that our in Ci to the ative set. Then, a variable that
does not our in all Cj s where j > i an be removed from the ative set and eliminated via early quantiation. So, we are omputing
9Xn : : : (9X2(((9X1 )C1 ) ^ C2 ) : : : ^ Cn), where the quantied variable
set Xi onsists of the ative variables that an be quantied early
after Ci is proesses. (CUDD allows quantifying several variables in
funtion all.) When we use Bouquet's lustering, the method is referred to in [50℄ as Bouquet's Method, whih we abbreviate here is
as BM. For the example above, the BM quantiation shedule is
9x3x4((9x1 x2((C1 ^ C2) ^ C3)) ^ C4).
We still have to hose a variable order. An order that is often used in
onstraint satisfation [25℄ is the \maximum ardinality searh" (MCS)
order of [54℄, whih is based on the graph-theoreti struture
V of the
formula. The graph assoiated with a CNF formula ' = i i is G' =
(V; E ), where V is the set of variables in ' and an edge fxi ; xj g is in
E if there exists a lause k suh that xi and xj our in k . We refer
to G' as the Gaifman graph of '. MCS ranks the verties from 1 to
n in the following way: as the next vertex to rank, selet the vertex
adjaent to the largest number of previously ranked verties (ties an
be broken in various ways). The variable order used for the BDDs in
the omparisons unless otherwise mentioned is the inverse of the MCS
order2 (See Setion 5.2 for exeptions).
2 Using the MCS order or its inverse as the BDD variable order exhibits little performane dierene, so the inverse is preferred beause the BE approah presented
in Setion 5.1 is easier to implement on the inverse order.
pvsat05.tex; 3/05/2005; 16:09; p.6
7
3.
Experimental setup
We ompare symboli quantier elimination to ZCha aross a variety of lasses of formulas. Unlike the standard pratie of omparing
solver performane on benhmark suites [42℄, our fous here is not on
simple time omparison, but rather on salability. That is, we fous
on salable lasses of formulas and evaluate how performane sales
with formula size. We are interested in seeing whih method sales
better, i.e., polynomial vs. exponential salability, or dierent degrees
of exponential salability. Our test suite inludes both random and
nonrandom formulas (for random formulas we took 60 samples per
ase and reported median time). Experiments were performed using
x86 emulation on the Rie Terasale Cluster3, whih is a large Linux
luster of Itanium II proessors with 4GB of memory eah.
Our test suite inludes the following lasses of formulas:
Random 3-CNF: We hose uniformly k 3-lauses over n variables.
The density of an instane is dened as k=n. We generate instanes
at densities 1.5, 6, 10, and 15, with up to 200 variables, to allow
omparison for both under-onstrained and over-onstrained ases.
(It is known that the satisability threshold of suh formulas is
around 4.25 [52℄).
Random aÆne 3-CNF: AÆne 3-CNF formulas belongs to a polyno-
mial lass as lassied by Shaefer [51℄. Here, they are generated
in the same way as random 3-CNF formulas, exept that the
onstraints are not 3-lauses, but parity equations in the form
of l1 l2 l3 = 14 . Eah onstraint is then onverted into four
lauses l1 _ l2 _ l3 ; :l1 _:l2 _ l3 ; :l1 _ l2 _:l3 ; l1 _:l2 _:l3 , yielding
CNF formulas. The satisability threshold of suh formula is found
empirially to be around density (number of equations divided by
number of variables) 0.95. We generate instanes of density 0.5
and 1.5, with up to 400 variables.
Random bionditionals: Bionditional formulas, also known as Urqu-
hart formulas, form a lass of aÆne formulas that have provably
exponential resolution proofs. A bionditional formula has the form
l1 $ (l2 $ (: : : (lk 1 $ lk ) : : :)), where eah li is a positive literal.
Suh a formula is valid if either all variables our an even number of times or all variables our an odd number of times [56℄.
3 http://www.iti.rie.edu/rt/
4 This is equivalent to just hoosing three variables and generate x1 x2 x3 = p
where p = 0 or p = 1 with equal probability.
pvsat05.tex; 3/05/2005; 16:09; p.7
8
We generate valid formulas with up to 100 variables, where eah
variable ours 3 times on average.
Random hains: The lasses desribed so far all have an essentially
uniform random Gaifman graph, with no underlying struture. To
extend our omparison to strutured formulas, we generate random
hains [27℄. In a random hain, we form a long hain of random
3-CNF formulas, alled subtheories. (The hain struture is reminisent to the struture typially seen in satisability instanes
obtained from bounded model heking [8℄ and planning [39℄.) We
use a similar generation parameters as in [27℄, where there are 5
variables per sub-theory and 5-23 lauses per sub-theory, but that
we generate instanes with a muh bigger number of sub-theories,
saling up to > 20000 variables and > 4000 sub-theories.
Nonrandom formulas: As in [55℄, we onsidered a variety of formulas
with very spei salable struture:
The n-Rooks problem (satisable).
The n-Queens problem (satisable for n > 3).
The pigeon-hole problem with n + 1 pigeons and n holes
(unsatisable).
The mutilated-hekerboard problem, where an n n board
with two diagonal orner tiles removed is to be tiled with 1 2
tiles (unsatisable).
4.
Symboli vs. searh approahes
Our goal in this setion is to address the viability of symboli quantier
elimination. To that end we ompare the performane of BM against
ZCha5, a leading DPLL-based solver aross the lasses of formulas
desribed above, with a fous on salability. For now, we use the MCS
variable order.
In Figure 1A and 1B, we an see that BM is not very ompetitive
for random 3-CNF formulas. At density 1.5, ZCha sales polynomially,
while BM sales exponentially. At density 6.0 and at higher densities,
both methods sale exponentially, but ZCha sales exponentially better. (Note that above density 6.0 both methods sale better as the
density inreases. This is onsistent with the experimental results in
[19℄ and [50℄.) A similar pattern emerges for random aÆne formulas,
5 ZCha version 2004.5.13
pvsat05.tex; 3/05/2005; 16:09; p.8
20
18
18
16
16
log running time(ms)
20
14
12
BM,density=10
BM,density=15
ZChaff,density=10
ZChaff,density=15
14
12
10
2
10
2
log running time(ms)
9
8
6
4
2
0
8
6
BM,density=1.5
BM,density=6.0
ZChaff,density=1.5
ZChaff,density=6.0
50
4
100
Variables
150
200
Figure 1. Random 3-CNF
A.
2
0
50
100
Variables
150
B.
200
18
16
BM,density=0.5
BM,density=1.5
ZChaff,density=0.5
ZChaff,density=1.5
12
10
2
log running time(ms)
14
8
6
4
2
0
50
100
150
200
Variables
250
300
350
400
Figure 2. Random 3-AÆne
see Figure 2. Again, ZCha sales exponentially better than BM. (Note
that both methods sale exponentially at the higher density, while it
is known that aÆne satisability an be determined in polytime using
Gaussian elimination [51℄.)
The piture hanges for bionditional formulas, as shown in Figure 3A. Again, both methods are exponential, but BM sales exponentially better than ZCha. (This result is onsistent with the nding
in [15℄, whih ompares searh-based methods to ZDD-based multiresolution.)
16
20
BM
ZChaff
18
15
14
log2 running time(ms)
13
14
12
12
11
10
2
log running time(ms)
16
10
8
6
9
4
8
2
10
BM
ZChaff
20
30
40
50
60
Variables
70
80
90
100
A.
7 2
10
Figure 3. A) Random Bionditionals B) Random Chains
3
10
Variables
4
10
B.
pvsat05.tex; 3/05/2005; 16:09; p.9
10
20
20
BM
ZChaff
16
14
14
log Running Time
16
12
12
10
2
10
8
8
6
6
4
4
2
2
4
6
8
10
12
14
16
18
20
N
Figure 4. A) n-Rooks B) n-Queens
2
0
A.
20
50
100
150
200
N2
250
300
350
400
B.
20
BM
ZChaff
18
BM
ZChaff
18
16
14
14
log Running Time
16
12
12
10
2
10
2
log Running Time
BM
ZChaff
18
2
log Running Time
18
8
6
6
4
2
2
8
4
4
6
8
10
12
N
14
16
18
20
A.
2
2
4
6
8
10
12
N
Figure 5. A) Pigeon Hole B) Mutilated Chekerboard
14
16
18
20
B.
For random hains, see Figure 3B, whih uses a log-log sale. Both
methods sale polynomially on random hains. (Beause density for
the most diÆult problems hange as the size of the hains sales,
we seleted here the hardest density for eah problem size.) Here BM
sales polynomially better than ZCha. Note that for smaller instanes
ZCha outperforms BM, whih justies our fous on salability rather
than on straightforward benhmarking.
Finally, we ompare BM with ZCha on the non-random formulas
of [55℄. The n-Rooks problem is a simpler version of n-Queens problem,
where the diagonal onstraints are not used. For n-Rooks, the results
are as in Figure 4A. This problem have the property of being globally
onsistent, i.e., any onsistent partial solution an be extended to a
solution [25℄. Thus, the problem is trivial for searh-based solvers, as
no baktraking is need. In ontrast BM sales exponentially on this
problem. For n-Queens, see Figure 4B, BM sale exponentially in n2 ,
while ZCha seems to have better salability. Again, a dierent piture
emerges when we onsider the pigeon-hole problem and the mutilatedhekerboard problem, see Figure 5A and Figure 5B. On both problems
both BM and ZCha sale exponentially, but BM sales exponentially
better than ZCha.
pvsat05.tex; 3/05/2005; 16:09; p.10
11
As in [55℄, who ompared BDDs and DPLL for solution enumeration, we nd that no approah dominates aross all lasses. While
ZCha dominates for many lasses of formulas, the symboli approah
is superior for other lasses of formulas. This suggests that the symboli quantier elimination is a viable approah and deserves further
study. In the next setion of this work we fous on various optimization
strategies for the symboli approah.
5.
Optimizations
So far we have desribed one approah to symboli quantier elimination. There are, however, many hoies one needs to make to guide
an implementation. The order of variables is both used to guide lustering and quantier elimination, as well as to order the variables in
the underlying BDDs. Both lustering and luster proessing an be
performed in several ways. In this setion, we investigate the impat of
hoies in lustering, variable order, and quantier elimination in the
implementation of symboli algorithms. Our fous here is on measuring
the impat of variable order on BDD-based SAT solving; thus, the running time for variable ordering, whih is polynomial for all algorithms,
is not ounted in our gures.
5.1.
Cluster Ordering
As argued earlier, the purpose of quantier elimination is to redue
support-set size of intermediate BDDs. What is the best redution
one an hope for? This question has been studied in the ontext of
onstraint satisfation. It turns out that the optimal shedule of onjuntions and quantier eliminations redues the support-set size to
one plus the treewidth of the Gaifman graph of the input formula [21℄.
The treewidth of a graph is a measure of how lose this graph is to
being a tree [28℄. Computing the treewidth of a graph is known to be
NP-hard, whih is why heuristi approahes are employed [41℄. It turns
out that by proessing lusters in a dierent order we an attain the
optimal support-set size. Reall that BM proesses the lusters in order
of inreasing ranks. Buket elimination (BE), on the other hand, proesses lusters in order of dereasing ranks [26℄. Maximal support-size
set of BE with respet to optimal variable order is dened as the indued
width of the input instane, and the indued width is known to be equal
to the treewidth [26, 30℄. Thus, BE with respet to optimal variable order is guaranteed to have polynomial running time for input instanes of
logarithmi treewidth, sine this guarantees a polynomial upper bound
pvsat05.tex; 3/05/2005; 16:09; p.11
20
18
18
16
16
log running time(ms)
20
14
12
14
12
10
2
10
2
log running time(ms)
12
8
6
8
6
BM,density=1.5
BM,density=6.0
BE,density=1.5
BE,density=6.0
4
2
0
50
100
Variables
150
BM,density=10
BM,density=15
BE,density=10
BE,density=15
4
200
A.
2
0
Figure 6. Clustering Algorithms - Random 3-CNF
50
100
Variables
150
200
B.
18
16
12
10
2
log running time(ms)
14
8
6
4
BM,density=0.5
BM,density=1.5
BE,density=0.5
BE,density=1.5
2
0
50
100
150
200
Variables
250
300
350
400
Figure 7. Clustering Algorithms - Random AÆne
on BDD size. For BE, sine the maximum-ranked variable in eah
luster an not our in any lower-ranked lusters, omputing a quantiation shedule from the ontents of the lusters is not neessary. As
eah luster is proessed, the maximum-ranked variable is eliminated.
For example, for the formula presented in Setion 2, the quantiation
shedule would be 9x1 ((9x2 ((9x3 ((9x4 C4 ) ^ C3)) ^ C2 )) ^ C1 ), with one
variable eliminated per luster proessed. As shown, using the inverse
of variable rank as the BDD variable order allows us to always eliminate
the top variable in the BDD.
We now ompare BM and BE with respet to MCS variable order
(MCS is the preferred variable order also for BE).
The results for the omparison on random 3-CNF formulas is plotted
in Figure 6A and 6B. We see that the dierene between BM and BE
is density dependent, where BE exels in the low-density ase, whih
have low treewidth, and BM exels in the high-density ases, whih
has high treewidth. A similar density dependent behavior is shown
for the aÆne ase in Figure 7. The dierene of the two shemes on
bionditional formulas is quite small as shown in Figure 8A. For hains,
see Figure 8B. Beause the number of variables for these formulas are
large, the ost of omputing the quantiation shedule gives BE an
edge over BM.
pvsat05.tex; 3/05/2005; 16:09; p.12
13
16
20
BM
BE
BM
BE
18
15
log2 running time(ms)
14
14
13
12
12
10
11
2
log running time(ms)
16
8
10
6
9
4
2
10
20
30
40
50
60
Variables
70
80
90
100
8 2
10
A.
3
4
10
Variables
10
B.
20
18
18
16
16
14
14
log Running Time
20
12
10
BM
BE
12
10
2
2
log Running Time
Figure 8. Clustering Algorithms - A) Random Bionditionals B) Random Chains
8
8
6
6
4
2
2
4
BM
BE
4
6
8
10
12
14
16
18
20
N
A.
2
0
50
100
150
200
N
250
300
350
400
Figure 9. Clustering Algorithms - A) n-Rooks B) n-Queens
B.
On most onstruted formulas, the piture is similar to the highdensity random ases, where BM dominates, exept for mutilatedhekerboard formulas, where BE has a slight edge. (Note that treewidth
for mutilated hekerboard problems grows only at O(n) ompared
to O(n2 ) for other onstruted problems.) We plot the performane
omparison for n-rook formulas in Figure 9A, n-queens formulas in
Figure 9B, pigeon-hole formulas in Figure 10A, and mutilated hekerboard problems in Figure 10B.
20
20
BM
BE
BM
BE
18
16
14
14
log Running Time
16
12
10
12
10
2
2
log Running Time
18
8
8
6
6
4
4
2
4
6
8
10
12
N
14
16
18
20
A.
2
2
4
6
8
10
12
14
16
18
20
N
Figure 10. Clustering Algorithms - A) Pigeon Hole B) Mutilated Chekerboard
B.
pvsat05.tex; 3/05/2005; 16:09; p.13
14
1.8
4.5
1.4
4
1.2
3.5
BE
BM
3
1
Density
Density
5
BE
BM
1.6
0.8
2.5
2
0.6
1.5
0.4
1
0.2
0.5
0
0
10
20
30
Variables
40
50
A.
0
0
10
20
30
Variables
Figure 11. Clustering Algorithms A) Density=1.5 B) Density=6.0
40
50
B.
To understand the dierene in performane between BM and BE,
we study their eet on intermediate BDD size. BDD size for a random
3-CNF instane depends ruially on both the number of variables and
the density of the instane. Thus, we ompare the eet of BM and BE
in terms of these measures for the intermediate BDDs. We apply BM
and BE to random 3-CNF formulas with 50 variables and densities 1.5
and 6.0. We then plot the density vs. the number of variables for the
intermediate BDDs generated by the two luster-proessing shemes.
The results are plotted in in Figure 11A and Figure 11B. Eah plotted
point orresponds to an intermediate BDD, whih reets the lusters
proessed so far.
As an be noted from the gures, BM inreases the density of intermediate results muh faster than BE. This dierene is quite dramati
for high-density formulas. The relation between density of random 3CNF instane and BDD size has been studied in [19℄, where it is shown
that BDD size peaks at around density 2.0, and is lowest when the
density is lose to 0 or the satisability threshold. This enables us to
oer an possible explanation to the superiority of BE for low-density
instanes and the superiority of BM for high-density instanes. For
formulas of density 1.5, the density of intermediate results is smaller
than 2.0 and BM's inreased density results in larger BDDs. For formulas of density 6.0, BM rosses the threshold density 2.0 using a smaller
number of variables, and then BM's inreased density results in smaller
BDDs.
The general superiority of BM over BE suggests that minimizing
support-set size ought not to be the dominant onern. BDD size is
orrelated with, but not dependent on, support-set size. More work
is required in order to understand the good performane of BM. Our
explanation argues that, as in [3℄, BM rst deals with the most onstrained subproblems, therefore reduing BDD-size of intermediate results. While the performane of BE an be understood in terms of
pvsat05.tex; 3/05/2005; 16:09; p.14
15
treewidth, we still lak, however, a fundamental theory to explain the
performane of BM.
5.2.
Variable Ordering
In this setion, we study the eets of the variable order on the performane of symboli algorithms. We only present results for BM, sine the
piture is similar for BE. The variable order for the BDD representation
is again the inverse of the variable order for lustering. As mentioned
earlier, when seleting variables, MCS has to break ties, whih happens
quite often. One an break ties by hoosing (from those variables that
have the maximum ardinality to ranked variables as MCS requires)
the variable with minimal degree to unseleted variables [50℄ or the
variable with the maximal degree to unseleted variables [6℄. (Another
hoie to break ties uniformly at random, but this hoie is expensive
to implement, sine it is diÆult to hoose an element uniformly at
random from a heap.) We ompare these two heuristis with an arbitrary tie-breaking heuristi, in whih we simply selet the top variable
in the heap. The results are shown in Figure 12A for random 3-CNF
formulas. For high density formulas, tie breaking made no signiant
dierene, but least-degree tie breaking is markedly better for the low
density formulas. This seems to be appliable aross a variety of lass
of formulas and even for dierent orders and algorithms.
MCS typially has many hoies for the lowest-rank variable. In
Koster et. al. [41℄, it is reommended to start from every vertex in the
graph and hoose the variable order that leads to the lowest treewidth.
This is easily done for instanes of small size, i.e. random 3-CNF or
aÆne problems; but for strutured problems, whih ould be muh
larger, the overhead is too expensive. Sine min-degree tie-breaking
worked quite well, we used the same idea for initial variable hoie.
In Figure 12B, we see that our assumption is well-founded, that is,
the benet of hoosing the best initial variable ompared to hoosing
a min-degree variable is negligible. For larger problems like the hains
or the bigger onstruted problems, the additional overhead of trying
every initial variable would be prohibitive, so we used the low-degree
seed in all ases.
Algorithms for BDD variable ordering in the model-heking systems
are often based on iruit strutures, for example, some form of iruit
traversal [31, 43℄ or graph evaluation [16℄. These tehniques are not
appliable here, sine the formulas are provided in CNF and the original
iruit struture is lost.
MCS is just one possible vertex-ordering heuristis. Other heuristis have been studied in the ontext of treewidth approximation. In
pvsat05.tex; 3/05/2005; 16:09; p.15
20
18
18
16
16
log running time(ms)
20
14
12
14
12
10
2
10
2
log Running Time(ms)
16
8
density=1.5, max tie−breaker
density=1.5, min tie−breaker
density=1.5, arbitary tie−breaker
density=6, max tie−breaker
density=6, min tie−breaker
density=6, arbitary tie−breaker
6
4
2
0
50
100
Order
150
8
6
Best width seed,density = 1.5
Best width seed,density=6.0
Lowest degree seed,density = 1.5
Lowest degree seed,density=6.0
4
200
A.
2
0
50
100
Variables
150
200
20
18
18
16
16
log Running Time(ms)
20
14
12
B.
14
12
10
2
10
2
log Running Time(ms)
Figure 12. A) Variable Ordering Tie-breakers B) Initial Variable Choie
8
density=1.5, MCS
density=1.5, MIW
density=1.5, MF
density=1.5, LEXP
density=1.5, LEXM
6
4
2
0
50
100
Order
150
8
density=6, MCS
density=6, MIW
density=6, MF
density=6, LEXP
density=6, LEXM
6
4
200
A.
2
0
50
100
Order
150
200
B.
Figure 13. Vertex Order Heuristis - Random 3-CNF A) Density=1.5 B) Density=6
[41℄ two other vertex-ordering heuristis that based on loal searh
are studied: LEXP and LEXM. Both LEXP and LEXM are based on
lexiographi breadth-rst searh, where andidate variables are lexiographially ordered with a set of labels, and the labels are either the
set of already hosen neighbors (LEXP), or the set of already hosen
verties reahable through lower-ordered verties (LEXM). Both algorithms try to generate vertex orders where a triangulation would add
a small amount of edges, thus reduing treewidth. In [25℄, Dehter also
studied heuristis like Min-Indued-Width (MIW) or Min-Fill (MF),
whih are greedy heuristis based on hoosing the vertex that have the
least number of indued neighbors (MIW) or the vertex that would add
the least number of indued edges (MF).
In Figure 13A and 13B, we ompare variable orders onstruted from
MCS, LEXP, LEXM, MIW, and MF for random 3-CNF formulas. For
high-density ases, MCS is learly superior. For low-density formulas,
LEXP has a small edge, although the dierene is quite minimal. Aross
the other problem lasses (for example, pigeon-hole formulas as in Figure 14A and mutilated hekerboard as in Figure 14B), MCS uniformly
appears to be the best order, being the most onsistent and generally
the top performer. Interestingly, while other heuristis like MF often
yield better treewidth, MCS still yields better runtime performane.
pvsat05.tex; 3/05/2005; 16:09; p.16
17
20
18
16
20
MCS
MIW
MF
LEXP
LEXM
18
16
12
10
10
8
8
2
14
12
2
14
6
6
4
4
2
2
4
6
8
10
12
14
16
18
20
2
2
A.
MCS
MIW
MF
LEXP
LEXM
4
6
8
10
12
14
16
18
20
B.
Figure 14. Vertex Order Heuristis - A) Pigeon Hole B) Mutilated Chekerboard
20
18
18
16
log running time(ms)
14
14
12
10
12
10
2
2
log running time(ms)
16
8
6
6
BM−EQ,density=1.5
BM−EQ,density=6.0
BM−no EQ,density=1.5
BM−no EQ,density=6.0
4
2
0
8
50
100
Variables
150
BE−EQ,density=1.5
BE−EQ,density=6.0
BE−no EQ,density=1.5
BE−no EQ,density=6.0
4
200
A.
2
0
Figure 15. Quantier Elimination-Random 3-CNF
50
100
Variables
150
200
B.
This indiates that minimizing treewidth need not be the dominant
onern; the dominant onern is minimizing BDD size. (BDD size
seems more losely related to pathwidth [10℄, rather than treewidth.
We speulate that MCS is a better order for pathwidth minimization.)
5.3.
Quantifier Elimination
So far we argued that quantier elimination is the key to the performane of the symboli approah. In general, reduing support-set size
does result in smaller BDDs. It is known, however, that quantier elimination may inur non-negligible overhead and may not always redue
BDD size [12℄. To understand the role of quantier elimination in the
symboli approah, we reimplemented BM and BE without quantier
elimination. Thus, we do onstrut a BDD that represent all satisfying
truth assignments, but we do that aording to the lustering and
luster proessing order of BM and BE.
In Figure 15A and 15B, we plotted the running time of both BM
and BE, with and without quantier elimination on random 3-CNF
formulas. We see that there is a trade-o between the ost and benet of
quantier elimination. For low-density instanes, where there are many
solutions, the improvement from quantier elimination is lear, but for
high-density instanes, quantier elimination results in no improvement
pvsat05.tex; 3/05/2005; 16:09; p.17
18
20
18
BM−EQ
BM−no EQ
20
18
16
14
12
12
10
10
2
log2 Running Time
16
14
8
8
6
6
4
2
2
4
4
6
8
10
12
14
16
N
18
20
A.
2
2
BM−EQ
BM−no EQ
4
6
8
10
12
14
16
N
18
20
B.
Figure 16. Quantier Elimination - A) Pigeon Hole B) Mutilated Chekerboard
(while not reduing BDD size). For BE, where the overhead of quantier
elimination is lower, quantier elimination improves performane very
signiantly at low density, although at high density there is a slight
slow down. On the other hand, quantier elimination is important for
the onstruted formulas, for example, for the pigeon-hole formulas in
Figure 16A and the mutilated hekerboard formulas in Figure 16B.
6.
Comparison with other approahes
In the previous setion, we onduted a omprehensive omparison of
the impat of dierent parameters on the BDD-based symboli approah. Next, we expand our fous to alternate approahes, rst by
omparing the BDD-based symboli quantier elimination with ZDDbased multi-resolution, then ompare the strutural variable order we
used with the default dynami variable order in the ontext of ZCha.
6.1.
BDDs vs. ZDDs
So far we used symbolially represented sets of truth assignments. An
alternate approah is to use deision diagrams to represent sets of
lauses instead of sets of assignments. ZRes [15℄ is a symboli implementation of the diretional resolution algorithm in [24, 27℄. The approah
is also referred to as multi-resolution, sine the algorithm arries out
all resolutions over a variable in one symboli step. Sine individual
lauses are usually sparse with respet to the set of variables, ZRes [15℄
used ZDDs [44℄, whih typially oer a higher ompression ratio then
BDDs for the sparse spaes. Eah propositional literal ` is represented
by a ZDD variable v` (thus a propositional variable an be represented
by two ZDD variables), and lause sets are represented as follows:
The empty lause is represented by the terminal node 1.
pvsat05.tex; 3/05/2005; 16:09; p.18
19
The empty set ; is represented by the terminal node 0.
Given a set C of lauses and a literal ` whose ZDD variable v`
is lowest in a given variable order, we split C into two subsets:
C` = f j 2 C; ` 2 g and C 0 = C C` . Given ZDDs representing
C 00 = f j _ ` 2 C` g and C 0 , a ZDD representing C would be
rooted at v` and have ZDDs for C 00 and C 0 as its left and right
hildren.
This representation is the dual of using ZDDs to represent Irredundant
Sum of Produts (ISOPs) of Boolean funtions [44℄.
We use two set operations on sets of lauses: (1) is the rossprodut operator, where for two lause sets C and D, C D = f j 90 2
C; 900 2 D; = 0 [ 00 g, and (2) + is subsumption-free union, so if
both C and D are subsumption free, and 2 C + D, then there is
no 0 2 C + D where 0 . Multi-resolution is implemented using
on ofators: given a ZDD f , fx+ (resp. fx ) is the ZDDs orresponding to the positive ofator on the ZDD variable vx (resp.,
v:x , so fx+ = fa j a _ x 2 f g and fx = fa j a _ :x 2 f g. Now
fx+ fx (after removing tautologies) represents the set of all resolvents
of f on x, whih has to be ombined using + with fx0 , whih is the
ZDD for the lauses not ontaining x. ZRes eliminates variables using
multi-resolution one by one until either the empty lause is generated,
in whih ase the formula is unsatisable, or all variables have been
eliminated, in whih ase the formula is satisable.
To failitate a fair omparison between ZRes and our BDD-based
solver, we used the multi-resolution ode used in [15℄ under our buketelimination framework and used the same variable and elimination
order as the BDD-based algorithms. This an be seen as a omparison of the ompression apability of ZDD-based lause sets versus
BDD-based solutions sets representations, sine at omparable stages
of the two algorithms (say, before variable xi is eliminated), the data
strutures represents the same Boolean funtion. As an optimization, a
simple form of unit preferene is implemented for the ZDD-based multiresolution, sine unit lauses an be easily deteted in the ZDD-based
lause set representation and resolved out-of-order.
The results for the 3-CNF and aÆne satisability ases are plotted
in Figures 17A, 17B, and 18. We see that the dierenes between the
two approahes are again density dependent. Just like the dierenes
between BE and BM, ZDD-based multi-resolution is more eÆient at
low density and less eÆient at high density. This an be related to
the ompression ratio ahieved by the two representations at dierent
densities, where the lause set representation is far more eÆient at low
densities. For the high-density ase, the lause set representation starts
pvsat05.tex; 3/05/2005; 16:09; p.19
20
18
20
16
18
16
log running time(ms)
12
10
8
14
12
10
2
2
log running time(ms)
14
6
4
BE,density=10
BE,density=15
MRes,density=10
MRes,density=15
8
6
BE,density=1.5
BE,density=6.0
MRes,density=1.5
MRes,density=6.0
2
0
50
4
100
Variables
150
200
Figure 17. Random 3-CNF
A.
2
0
50
100
Variables
150
200
B.
16
BE,density=0.5
BE,density=1.5
MRes,density=0.5
MRes,density=1.5
14
10
8
2
log running time(ms)
12
6
4
2
0
50
100
150
200
Variables
250
300
350
400
Figure 18. Random 3-AÆne
to show its shortomings. High-density problems typially have a large
number of lauses and few solutions, lause-set representation is less
eÆient in this ase. This is espeially evident for the unsatisable ase,
where if BDDs are used, unsatisability an be deteted immediately,
but if lause sets are used, detetion is delayed until an empty lause
is generated.
Next we examine the other lasses of formulas in Figure 19A, 19B,
20A, 20B, 21A, and 21B. In all ases, the BDD-based approah is
superior to the ZDD-based approah.6
An explanation for the superiority of the BDD-based approah an
be provided in terms of the ost of the quantier-elimination operation.
Complexity of deision-diagram algorithms an be measured in the
number of ahe look-ups that the algorithm performs. Quantifying
out a single variable uses the BDD \or" operation, whih has a proven
O (n2 ) upper bound on the number of ahe look-ups [12℄. The same
annot be said for the ZDD multi-resolution operation used to quantify out a single variable, where the number of ahe look-ups an be
6 There exists other ZDD-based approahes for hard-for-resolution problems, for
example, CASSAT [46℄, whih exhibits polynomial running time on pigeon-hole
formulas [47℄. A omparison against these approahes would be a future diretion
of this researh.
pvsat05.tex; 3/05/2005; 16:09; p.20
21
20
20
BE
MRes
BE
MRes
18
18
log2 running time(ms)
16
14
12
14
10
2
log running time(ms)
16
12
8
6
10
4
2
10
20
30
40
50
60
Variables
70
80
90
100
8 2
10
A.
3
4
10
Variables
10
Figure 19. A) Random Bionditionals B) Random Chains
20
20
BE
MRes
18
BE
MRes
18
16
14
14
log Running Time
16
12
12
10
2
10
2
log Running Time
B.
8
8
6
6
4
4
2
5
6
7
8
9
N
10
11
12
13
2
0
A.
50
100
150
200
N2
250
300
350
400
Figure 20. A) n-Rooks B) n-Queens
B.
exponential in the width of the input ZDDs. Empirially, the number
of ahe lookups an be 1-2 orders of magnitude larger than the size of
the output ZDD. This is the main ontribution to the performane hit
taken by the ZDD-based algorithm.
In [48℄ we ompared BDD-based and ZDD-based approahes to QBF
solving, showing that ZDD-based multi-resolution has a lear edge.
Sine QBF problems are required to be under-onstrained propositionally (otherwise they would be easily unsatisable due to the universal
quantiers), the extra ompression of the ZDD-based lause-set rep20
20
BE
MRes
BE
MRes
18
16
14
14
log Running Time
16
12
10
12
10
2
2
log Running Time
18
8
8
6
6
4
4
2
2
4
6
8
10
12
N
14
16
18
20
A.
2
2
4
6
8
10
12
N
Figure 21. A) Pigeon Hole B) Mutilated Chekerboard
14
16
18
20
B.
pvsat05.tex; 3/05/2005; 16:09; p.21
22
20
20
18
ZChaff,density=1.5
ZChaff−MCS,density=1.5
BE,density=1.5
18
16
log running time(ms)
14
12
10
14
12
10
2
log2 running time(ms)
16
ZChaff,density=6.0
ZChaff−MCS,density=6.0
BM,density=6.0
8
8
6
6
4
4
2
0
50
100
Variables
150
200
A.
2
0
50
100
Variables
150
200
150
200
Figure 22. Variable Order - Random 3-CNF (1)
20
18
20
ZChaff,density=10
ZChaff−MCS,density=10
BM,density=10
18
ZChaff,density=15
ZChaff−MCS,density=15
BM,density=15
16
log running time(ms)
16
14
12
10
14
12
10
2
log2 running time(ms)
B.
8
8
6
6
4
4
2
0
50
100
Variables
150
200
A.
2
0
50
100
Variables
Figure 23. Variable Order - Random 3-CNF (2)
B.
resentation would apply, explaining the superiority of the ZDD-based
approah.
6.2.
Struture-Guided Variable Order for Searh
In Setion 5, we showed that the hoie of variable order is important
to the performane of BDD-based satisability solvers. We showed
that MCS variable order oers good algorithmi performane aross
a variety of input formulas. In ontrast, most searh-based algorithm
use a dynami variable order, based on the lauses visited or generated
during the searh proedure, for example, the VSIDS heuristi used
in ZCha [45℄. To oer a more diret omparison between searhbased and symboli methods, we re-implemented ZCha with the MCS
variable order and ompared its performane with ZCha and with
the symboli solvers. (See [1, 37℄ for earlier work on struture-guided
variable order for searh-based methods.) We ompared here the performane of ZCha with the default (VSIDS) variable order, ZCha
with MCS variable order, and the BDD-based solvers (for eah formula
lass we hose the best solver between BM and BE).
The results for random formulas are shown in Figures 22A, 22B,
23A, 23B, 24A, 24B, 25A, and 25B, and the results for onstruted
pvsat05.tex; 3/05/2005; 16:09; p.22
23
20
18
20
ZChaff,density=0.5
ZChaff−MCS,density=0.5
BM,density=0.5
18
16
log running time(ms)
14
12
10
14
12
10
2
log2 running time(ms)
16
ZChaff,density=1.5
ZChaff−MCS,density=1.5
BM,density=1.5
8
8
6
6
4
4
2
0
50
100
150
200
Variables
250
300
350
400
A.
2
0
50
100
150
200
Variables
250
300
350
400
Figure 24. Variable Order - Random AÆne
20
20
ZChaff
ZChaff−MCS
BE
18
B.
18
ZChaff
ZChaff−MCS
BE
16
log2 running time(ms)
12
10
2
log running time(ms)
16
14
8
14
12
10
6
8
4
2
10
20
30
40
50
60
Variables
70
80
90
100
6 2
10
A.
3
4
10
Variables
10
Figure 25. Variable Order - A) Random Bionditional B) Random Chains
16
20
18
B.
ZChaff
ZChaff−MCS
BM
ZChaff
ZChaff−MCS
BM
14
16
log Running Time
12
10
2
10
2
log Running Time
12
14
8
8
6
6
4
4
2
2
4
6
8
10
12
14
16
18
20
N
2
0
A.
50
100
150
200
N2
250
300
350
400
Figure 26. Variable Order - A) n-Rooks B) n-Queens
20
20
ZChaff
ZChaff−MCS
BM
18
16
14
14
log Running Time
16
12
ZChaff
ZChaff−MCS
BE
12
10
2
10
2
log Running Time
18
B.
8
6
6
4
2
2
8
4
4
6
8
10
12
N
14
16
18
20
A.
2
2
4
6
8
10
12
14
16
N
Figure 27. Variable Order - A) Pigeon Hole B) Mutilated Chekerboard
18
20
B.
pvsat05.tex; 3/05/2005; 16:09; p.23
24
formulas are shown in Figures 26A, 26B, 27A, and 27B. In general, the
struture-guided variable order is inferior in terms of performane to
dynami variable order (VSIDS). For easy problems, the overhead of
pre-omputing the variable order is quite signiant. The performane
loss should not be entirely attributed to the overhead though, sine
we also observed an inrease in the number of impliations performed.
Thus, dynami variable order is, in general, a better algorithmi hoie.
Nevertheless, for most formulas, there is no exponential gap in saling
between the two variable-order heuristis.
Also, replaing VSIDS by MCS did not hange the relationship
between ZCha and the BDD-based solvers. The dierene in performane between searh-based and symboli approahes is larger than
the dierene between stati and dynami deision order for ZCha. In
none of the ases did the stati variable order hange the relative piture
between searh and symboli approahes. This shows the general superiority of searh-based vs. symboli tehniques annot be attributed to
the use of dynami variable order.
7.
Disussion
Satisability solvers have made tremendous progress over the last few
years, partly driven by frequent ompetitions, f. [42℄. At the same time,
our understanding of why extant solvers perform so well is lagging.
Our goal in this paper is not to present a new ompetitive solver, but
rather to all for a broader researh agenda in satisability solving.
We showed that a symboli approah an outperform a searh-based
approah in ertain ases, but more researh is needed before we an
have robust implementations of the symboli approah. Reent works
have suggested other symboli approahes to satisability solving, e.g.,
ompressed BFS searh in [46℄ and BDD representation for non-CNF
onstraint in the framework of DPLL searh in [22, 29, 38℄. These
works bolster our all for a broader researh agenda. Suh an agenda
should build onnetions with two other suessful areas of automated
reasoning, namely model heking [18℄ and onstraint satisfation [25℄.
Furthermore, suh an agenda should explore hybrid approahes, ombining searh and symboli tehniques, f. [22, 29, 35, 38, 46℄. One
hybrid approah that has shown promise is that of the QBF solver
Quantor [7℄, where quantier elimination is applied until the formula
beome propositional, then a searh-based solver takes over.
As an extension to this work, we an experiment with other variableorder heuristis, for example, MINCE [1℄, FORCE [2℄, or the ones proposed in [37℄, all of whih are also struturally based. Another diretion
pvsat05.tex; 3/05/2005; 16:09; p.24
25
for development is to take a ombination of density-dependent heuristis and strutural heuristis and apply them to hybrid BDD-based
SAT solvers like CirCUs [38℄ or the approah presented in [22℄.
Aknowledgements
We would like to thank Enrio Giunhiglia for proposing the experiments on strutural-guided variable order for searh.
Referenes
1. Aloul, F., I. Markov, and K. Sakallah: 2001, `MINCE: A Stati Global VariableOrdering for SAT and BDD'. In: Pro. IEEE 10th International Workshop on
Logi and Synthesis. pp. 281{286.
2. Aloul, F., I. Markov, and K. Sakallah: 2003, `FORCE: a fast and easy-toimplement variable-ordering heuristi'. In: Pro. of the 13th ACM Great Lakes
Symposium on VLSI 2003. pp. 116{119.
3. Amir, E. and S. MIlraith: June 2001, `Solving Satisability using Deomposition and the Most Constrained Subproblem'. In: LICS Workshop on Theory
and Appliations of Satisability Testing (SAT 2001).
4. Arnborg, S., D. Corneil, and A. Proskurowski: 1987, `Complexity of nding
embeddings in a k-tree'. SIAM J. Alg. Dis. Math 8, 277{284.
5. Balazar, J.: 1990, `Self-reduibility'. J. Comp. and Sys. Si. 41(3), 367{388.
6. Beatty, D. and R. Bryant: 1994, `Formally verifying a miroproessor using a
simulation methodology'. In: Pro. 31st Design Automation Conferene. pp.
596{602.
7. Biere, A.: 2004, `Resolve and Expand'. In: Pro. 7th Int. Conf. on Theory and
Appliations of Satisability Testing (SAT 2004). pp. 238{246.
8. Biere, A., C. A, E. Clarke, M. Fujita, and Y. Zhu: 1999, `Symboli Model
Cheking using SAT Proedures instead of BDD'. In: Pro. 36th Conf. on
Design Automation. pp. 317{320.
9. Blok, M., C. Gropl, H. Preu, H. L. Proomel, and A. Srivastav: 1997, `EÆient
ordering of state variables and transition relation partitions in symboli model
heking'. Tehnial report, Institute of Informatis, Humboldt University of
Berlin.
10. Bodlaender, H. and T. Kloks: 1996, `EÆient and onstrutive algorithms for
the pathwidth and treewidth of graphs'. J. Algorithms 21, 358{402.
11. Bouquet, F.: 1999, `Gestion de la dynamiite et enumeration d'impliants premiers, une approhe fondee sur les Diagrammes de Deision Binaire'. Ph.D.
thesis, Universite de Privene, Frane.
12. Bryant, R.: 1986, `Graph-based Algorithms for Boolean Funtion Manipulation'. IEEE Trans. on Comp. Vol. C-35(8), 677{691.
13. Burh, J., E. Clarke, and D. Long: 1991, `Symboli model heking with
partitioned transition relations'. In: VLSI 91, Pro. IFIP TC10/WG 10.5
International Conferene on Very Large Sale Integration, Edinburgh, Sotland,
20-22 August, 1991. pp. 49{58.
pvsat05.tex; 3/05/2005; 16:09; p.25
26
14. Burh, J., E. Clarke, K. MMillan, D. Dill, and L. Hwang: 1992, `Symboli
Model Cheking: 1020 States and Beyond'. Information and Computation
98(2), 142{170.
15. Chatali, P. and L. Simon: 2000, `Multi-Resolution on Compressed Sets
of Clauses'. In: Twelfth International Conferene on Tools with Artiial
Intelligene (ICTAI'00). pp. 2{10.
16. Chung, P., I. Hajj, and J. Patel: 1993, `EÆient Variable Ordering Heuristis
for Shared ROBDD'. In: Pro. 1993 IEEE Int. Symp. on Ciruits and Systems
(ISCAS93). pp. 1690{1693.
17. Cimatti, A. and M. Roveri: 2000, `Conformant Planning via Symboli Model
Cheking'. J. of AI Researh 13, 305{338.
18. Clarke, E., O. Grumberg, and D. Peled: 1999, Model Cheking. MIT Press.
19. Coarfa, C., D. D. Demopoulos, A. San Miguel Aguirre, D. Subramanian, and
M. Vardi: 2003, `Random 3-SAT: The Plot Thikens'. Constraints pp. 243{261.
20. Crawford, J. and A. Baker: 1994, `Experimental results on the appliation of
satisability algorithms to sheduling problems'. In: Pro. 12th Nat. Conf. on
Artiial Intelligene, Vol. 2. pp. 1092{1097.
21. Dalmau, V., P. Kolaitis, and M. Vardi: 2002, `Constraint Satisfation, Bounded
Treewidth, and Finite-Variable Logis'. In: Proeedings of 8th Int. Conf. on
Priniples and Pratie of Constraint Programming (CP 2002). pp. 310{326.
22. Damiano, R. F. and J. H. Kukula: 2003, `Cheking satisability of a onjuntion
of BDDs'. In: Pro. 40th Design Automation Conferene (DAC 2003). pp.
818{823.
23. Davis, M., G. Logemann, and D. Loveland: 1962, `A mahine program for
theorem proving'. J. ACM 5, 394{397.
24. Davis, S. and M. Putnam: 1960, `A omputing proedure for quantiation
theory'. J. ACM 7, 201{215.
25. Dehter, R.: 2003, Constraint Proessing. Morgan Kaufmann.
26. Dehter, R. and J. Pearl: 1987, `Network-based heuristis for onstraintsatisfation problems'. Artiial Intelligene 34, 1{38.
27. Dehter, R. and I. Rish: 1994, `Diretional Resolution: The Davis-Putnam
Proedure, Revisited'. In: KR'94: Priniples of Knowledge Representation and
Reasoning. pp. 134{145.
28. Downey, R. and M. Fellows: 1999, Parametrized Complexity. Springer-Verlag.
29. Frano, J., M. Kouril, J. Shlipf, J. Ward, S. Weaver, M. Dranseld, and W.
Vaneet: 2003, `SBSAT: a State-based, BDD-based satisability solver'. In:
Pro. 6th Int. Conf. on Theory and Appliations of Satisability Testing (SAT
2003). pp. 398{410.
30. Freuder, E.: 1990, `Complexity of k-tree strutured onstraint satisfation
problems'. In: Pro. 8th Nat. Conf. on Artiial Intelligene. pp. 4{9.
31. Fujita, M., H. Fujisawa, and N. Kawato: 1988, `Evaluation and Improvements
of Boolean Comparison Method Based on Binary Deision Disgrams'. In: Pro.
IEEE/ACM Int. Conf. on Computer-Aided Design (ICCAD-88). pp. 2{5.
32. Geist, D. and H. Beer: 1994, `EÆient Model Cheking by Automated Ordering
of Transition Relation Partitions'. In: Pro. 6th Int. Conf. on Computer Aided
Veriation (CAV 1994). pp. 299{310.
33. Goldberg, E. and Y. Novikov: 2002, `BerkMin: A Fast and Robust SAT Solver'.
In: Pro. Design Automation and Test in Europe (DATE 2002). pp. 142{149.
34. Groote, J. F.: 1996, `Hiding Propositional Constants in BDDs'. FMSD 8,
91{96.
pvsat05.tex; 3/05/2005; 16:09; p.26
27
35. Gupta, A., Z. Yang, P. Ashar, L. Zhang, and S. Malik: 2001, `Partition-based
deision heuristis for image omputation using SAT and BDDs'. In: Pro.
IEEE/ACM Int. Conf. on Computer-Aided Design (ICCAD-01). pp. 286{292.
36. Hojati, R., S. C. Krishnan, and R. K. Brayton: 1996, `Early Quantiation
and Partitioned Transition Relations'. In: Pro. 1996 Int. Conf. on Computer
Design (ICCD '96). pp. 12{19.
37. Huang, J. and A. Darwihe: 2003, `A Struture-Based Variable Ordering
Heuristi for SAT'. In: Pro. 18th Int. Joint Conf. on Artiial Intelligene
(IJCAI 2003). pp. 1167{1172.
38. Jon, H. and F. Somenzi: 2004, `CirCUs : Hybrid Satiability solver'. In: Pro.
of the 7th Int. Conf. on Theory and Appliations of Satisability Testing (SAT
2004). pp. 47{55.
39. Kautz, H. and B. Selman: 1992, `Planning as satisability'. In: Pro. 10th Eur.
Conf. on AI (ECAI 92). pp. 359{363.
40. Khurshid, S., D. Marinov, I. Shlyyakhter, and D. Jakson: 2003, `A Case
for EÆient Solution Enumeration'. In: Pro. 6th Int. Conf. on Theory and
Appliations of Satisability Testing (SAT 2003). pp. 272{286.
41. Koster, A., H. Bodlaender, and S. van Hoesel: 2001, `Treewidth: Computational
Experiments'. Tehnial report, Konrad-Zuse-Zentrum fur Informationstehnik
Berlin.
42. Le Berre, D. and L. Simon: 2003, `The essentials of the SAT'03 Competition'.
In: Pro. 6th Int. Conf. on Theory and Appliations of Satisability Testing
(SAT 2003). pp. 452{467.
43. Malik, S., A. Wang, R. Brayton, and A. Sangiovanni Vinentelli: 1988, `Logi
Veriation using Binary Deision Diagrams in a Logi Synthesis Environment'.
In: Pro. IEEE/ACM Int. Conf. on Computer-Aided Design (ICCAD-88). pp.
6{9.
44. Minato, S.: 1996, Binary Deision Diagrams and Appliations to VLSI CAD.
Kluwer.
45. Moskewiz, M., C. Madigan, Y. Zhao, L. Zhang, and S. Malik: 2001, `Cha:
Engineering an EÆient SAT Solver'. In: Pro. of 39th Design Automation
Conferene (DAC 2001). pp. 530{535.
46. Motter, D. B. and I. L. Markov: 2002a, `A Compressed Breadth-First Searh
for Satisability'. In: Pro. 4th Int. Workshop on Algorithm Engineering and
Experiments (ALENEX 2002), Vol. 2409 of Leture Notes in Computer Siene.
pp. 29{42.
47. Motter, D. B. and I. L. Markov: 2002b, `On Proof Systems Behind EÆient
SAT Solvers'. In: Pro. of 5th Int. Symp. on the Theory and Appliations of
Satisability Testing (SAT 2002). pp. 206{213.
48. Pan, G. and M. Y. Vardi: 2004, `Symboli Deision Proedures for QBF'.
In: Proeedings of 10th Int. Conf. on Priniples and Pratie of Constraint
Programming (CP 2004). pp. 453{467.
49. Ranjan, R., A. Aziz, R. Brayton, B. Plessier, and C. Pixley: 1995, `EÆient
BDD algorithms for FSM synthesis and veriation'. In: Pro. of IEEE/ACM
Int. Workshop on Logi Synthesis.
50. San Miguel Aguirre, A. and M. Y. Vardi: 2001, `Random 3-SAT and BDDs:
The Plot Thikens Further'. In: Pro. of the 7th Int. Conf. Priniples and
Pratie of Constraint Programming (CP 2001). pp. 121{136.
51. Shaefer, T.: 1978, `The Complexity of Satisability Problems'. In: Pro. of the
10th annual ACM symposium on Theory of omputing(STOC'78). pp. 216{226.
pvsat05.tex; 3/05/2005; 16:09; p.27
28
52. Selman, B., D. G. Mithell, and H. J. Levesque: 1996, `Generating Hard
Satisability Problems'. Artiial Intelligene 81(1-2), 17{29.
53. Somenzi, F.: 1998, `CUDD: CU Deision Diagram pakage'.
http://vlsi.olorado.edu/~fabio/CUDD/.
54. Tarjan, R. E. and M. Yannakakis: 1984, `Simple linear-time algorithms to tests
hordality of graphs, tests ayliity of hypergraphs, and seletively redue
ayli hypergraphs'. SIAM Journal on Computing 13(3), 566{579.
55. Uribe, T. E. and M. E. Stikel: 1994, `Ordered Binary Deision Diagrams
and the Davis-Putnam Proedure'. In: 1st Int. Conf. on Constraints in
Computational Logis. pp. 34{49.
56. Urquhart, A.: 1995, `The Complexity of Propositional Proofs'. the Bulletin of
Symboli Logi 1, 425{467.
pvsat05.tex; 3/05/2005; 16:09; p.28
Download