Generalizing Boolean Satisfiability II: Theory
JJournal of Artificial Intelligence Research 22 (2004) 481-534 Submitted 08/04; published 12/04
Generalizing Boolean Satisfiability II: Theory
Heidi E. Dixon [email protected]
On Time Systems, Inc.1850 Millrace, Suite 1Eugene, OR 97403 USA
Matthew L. Ginsberg [email protected]
On Time Systems, Inc.1850 Millrace, Suite 1Eugene, OR 97403 USA
Eugene M. Luks [email protected]
Computer and Information ScienceUniversity of OregonEugene, OR 97403 USA
Andrew J. Parkes [email protected]
CIRL1269 University of OregonEugene, OR 97403 USA
Abstract
This is the second of three planned papers describing zap , a satisfiability engine thatsubstantially generalizes existing tools while retaining the performance characteristics ofmodern high performance solvers. The fundamental idea underlying zap is that manyproblems passed to such engines contain rich internal structure that is obscured by theBoolean representation used; our goal is to define a representation in which this structureis apparent and can easily be exploited to improve computational performance. This paperpresents the theoretical basis for the ideas underlying zap , arguing that existing ideas inthis area exploit a single, recurring structure in that multiple database axioms can beobtained by operating on a single axiom using a subgroup of the group of permutations onthe literals in the problem. We argue that the group structure precisely captures the generalstructure at which earlier approaches hinted, and give numerous examples of its use. We goon to extend the Davis-Putnam-Logemann-Loveland inference procedure to this broadersetting, and show that earlier computational improvements are either subsumed or leftintact by the new method. The third paper in this series discusses zap ’s implementationand presents experimental performance results.
1. Introduction
This is the second of a planned series of three papers describing zap , a satisfiability enginethat substantially generalizes existing tools while retaining the performance characteristicsof existing high-performance solvers such as zChaff (Moskewicz, Madigan, Zhao, Zhang,& Malik, 2001). In the first paper (Dixon, Ginsberg, & Parkes, 2004b), to which wewill refer as zap1 , we discussed a variety of existing computational improvements to the
1. The first paper has appeared in jair ; the third is currently available as a technical report (Dixon,Ginsberg, Hofer, Luks, & Parkes, 2004a) but has not yet been peer reviewed. c (cid:13) ixon, Ginsberg, Luks & Parkes Davis-Putnam-Logemann-Loveland ( dpll ) inference procedure, eventually producing thefollowing table. The rows and columns are described on this page and the next. efficiency proof propagation learningof rep’n length resolution technique method
SAT — EEE — watched literals relevance cardinality exponential P?E not unique watched literals relevance pseudo-Boolean exponential P?E unique watched literals + strengthening symmetry — EEE ∗ not believed in P same as sat same as sat QPROP exponential ??? in P using reasons exp improvement + first-order
The rows of the table correspond to observations regarding existing representations usedin satisfiability research, as reflected in the labels in the first column: SAT refers to conventional Boolean satisfiability work, representing information asconjunctions of disjunctions of literals ( cnf ).2. cardinality refers to the use of “counting” clauses; if we think of a conventionaldisjunction of literals ∨ i l i as X i l i ≥ X i l i ≥ k for a positive integer k .3. pseudo-Boolean clauses extend cardinality clauses by allowing the literals in ques-tion to be weighted: X i w i l i ≥ k Each w i is a positive integer giving the weight to be assigned to the associated literal.4. symmetry involves the introduction of techniques that are designed to explicitlyexploit local or global symmetries in the problem being solved.5. QPROP deals with universally quantified formulae where all of the quantificationsare over finite domains of known size.The columns in the table measure the performance of the various systems against avariety of metrics:
2. Please see the preceding paper zap1 (Dixon et al., 2004b) for a fuller explanation and for a relativelycomprehensive list of references where the earlier work is discussed.
AP 2: Theory Efficiency of representation measures the extent to which a single axiom in aproposed framework can replace many in cnf . For cardinality, pseudo-Boolean andquantified languages, it is possible that exponential savings are achieved. We arguedthat such savings were possible but relatively unlikely for cardinality and pseudo-Boolean encodings but were relatively likely for qprop .2.
Proof length gives the minimum proof length for the representation on three classesof problems: the pigeonhole problem, parity problems due to Tseitin (1970) andclique coloring problems (Pudlak, 1997). An E indicates exponential proof length;P indicates polynomial length. While symmetry-exploitation techniques can providepolynomial-length proofs in certain instances, the method is so brittle against changesin the axiomatization that we do not regard this as a polynomial approach in general.3.
Resolution indicates the extent to which resolution can be lifted to a broader set-ting. This is straightforward in the pseudo-Boolean case; cardinality clauses have theproblem that the most natural resolvent of two cardinality clauses may not be a car-dinality clause, and there may be many cardinality clauses that could be derived asa result. Systems that exploit local symmetries must search for such symmetries ateach inference step, a problem that is not believed to be in P. Provided that reasonsare maintained, inference remains well defined for quantified axioms, requiring onlythe introduction of a linear complexity unification step.4.
Propagation technique describes the techniques used to draw conclusions froman existing partial assignment of values to variables. For all of the systems except qprop , Zhang and Stickel’s watched literals idea (Moskewicz et al., 2001; Zhang &Stickel, 2000) is the most efficient mechanism known. This approach cannot be liftedto qprop , but a somewhat simpler method can be lifted and average-case exponentialsavings obtained as a result (Ginsberg & Parkes, 2000).5.
Learning method gives the technique typically used to save conclusions as the in-ference proceeds. In general, relevance-bounded learning (Bayardo & Miranker, 1996;Bayardo & Schrag, 1997; Ginsberg, 1993) is the most effective technique known here.It can be augmented with strengthening (Guignard & Spielberg, 1981; Savelsbergh,1994) in the pseudo-Boolean case and with first-order reasoning if quantified formulaeare present.Our goal in the current paper is to add a single line to the above table: ixon, Ginsberg, Luks & Parkes efficiency proof propagation learningof rep’n length resolution technique method
SAT — EEE — watched literals relevance cardinality exponential P?E not unique watched literals relevance pseudo-Boolean exponential P?E unique watched literals + strengthening symmetry — EEE ∗ not believed in P same as sat same as sat QPROP exponential ??? in P using reasons exp improvement + first-order
ZAP exponential PPP in P using reasons watched literals,exp improvement + first-order+ parity+ others
Zap is the approach to inference that is the focus of this series of papers. The basicidea in zap is that in realistic problems, many Boolean clauses are “versions” of a singleclause. We will make this notion precise shortly; at this point, one might think of all of theinstances of a quantified clause as being versions of any particular ground instance. Theversions, it will turn out, correspond to permutations on the set of literals in the problem.As an example, suppose that we are tying to prove that it is impossible to put n + 1pigeons into n holes if each pigeon is to get its own hole. A Boolean axiomatization of thisproblem will include the axioms ¬ p ∨ ¬ p ¬ p ∨ ¬ p · · · ¬ p n ∨ ¬ p n ¬ p ∨ ¬ p ¬ p ∨ ¬ p · · · ¬ p n ∨ ¬ p n ... ... ... ¬ p ∨ ¬ p n +1 , ¬ p ∨ ¬ p n +1 , · · · ¬ p n ∨ ¬ p n +1 ,n ¬ p ∨ ¬ p ¬ p ∨ ¬ p · · · ¬ p n ∨ ¬ p n ... ... ... ¬ p ∨ ¬ p n +1 , ¬ p ∨ ¬ p n +1 , · · · ¬ p n ∨ ¬ p n +1 ,n ... ... ... ¬ p n ∨ ¬ p n +1 , ¬ p n ∨ ¬ p n +1 , · · · ¬ p nn ∨ ¬ p n +1 ,n where p ij says that pigeon i is in hole j . Thus the first clause above says that pigeon oneand pigeon two cannot both be in hole one. The second clause in the first column says thatpigeon one and pigeon three cannot both be in hole one. The second column refers to holetwo, and so on. It is fairly clear that all of these axioms can be reconstructed from the firstby interchanging the pigeons and the holes, and it is this intuition that zap attempts tocapture.What makes this approach interesting is the fact that instead of reasoning with a largeset of clauses, it becomes possible to reason with a single clause instance and a set ofpermutations. As we will see, the sets of permutations that occur naturally are highlystructured sets called groups , and exploiting this structure can lead to significant efficiencygains in both representation and reasoning.Some further comments on the above table: AP 2: Theory • Unlike cardinality and pseudo-Boolean methods, which seem unlikely to achieve ex-ponential reductions in problem size in practice, and qprop , which seems likely toachieve such reductions, zap is guaranteed , when the requisite structure is present, toreplace a set of n axioms with a single axiom of size at most v log( n ), where v is thenumber of variables in the problem (Proposition 4.8). • The fundamental inference step in zap is in NP with respect to the zap representation,and therefore has complexity no worse than exponential in the representation size(i.e., polynomial in the number of Boolean axioms being resolved). In practice, theaverage case complexity appears to be low-order polynomial in the size of the zap representation (i.e., polynomial in the logarithm of the number of Boolean axiomsbeing resolved) (Dixon et al., 2004a). • Zap obtains the savings attributable to subsearch in the qprop case while castingthem in a general setting that is equivalent to watched literals in the Boolean case.This particular observation is dependent on a variety of results from computationalgroup theory and is discussed in the third paper in this series (Dixon et al., 2004a). • In addition to learning the Boolean consequences of resolution, zap continues to sup-port relevance-bounded learning schemes while also allowing the derivation of first-order consequences, conclusions based on parity arguments, and combinations thereof.In order to deliver on these claims, we begin in Section 2 by summarizing both the dpll algorithm and the modifications that embody recent progress, casting dpll into the preciseform that is needed in zap and that seems to best capture the architecture of modernsystems such as zChaff . Section 3 is also a summary of ideas that are not new with us,providing an introduction to some ideas from group theory.In Section 4, we describe the key insight underlying zap . As mentioned above, thestructure exploited in earlier examples corresponds to the existence of particular groups ofpermutations of the literals in the problem. We call the combination of a clause and sucha permutation group an augmented clause , and the efficiency of representation columnof our table corresponds to the observation that augmented clauses can use group structureto improve the efficiency of their encoding.Section 5 ( resolution ) describes resolution in this broader setting, and Section 6 ( prooflength ) presents a variety of examples of these ideas at work, showing that the pigeonholeproblem, clique-coloring problems, and Tseitin’s parity examples all admit short proofsin the new framework. Section 7 ( learning method ) recasts the dpll algorithm in thenew terms and discusses the continued applicability of relevance in our setting. Conclud-ing remarks are contained in Section 8. Implementation details, including a discussionof propagation techniques , are deferred until the third of this series of papers (Dixonet al., 2004a). This third paper will also include a presentation of performance details; atthis point, we note merely that zap does indeed exhibit polynomial performance on thenatural encodings of pigeonhole, parity and clique-coloring problems. This is in sharp con-trast with other methods, where theoretical best-case performance (let alone experimentalaverage-case performance) is known to be exponential on these problems classes. ixon, Ginsberg, Luks & Parkes
2. Boolean Satisfiability Engines In zap1 , we presented descriptions of the standard Davis-Putnam-Logemann-Loveland( dpll ) Boolean satisfiability algorithm and described informally the extensions to dpll that deal with learning. Our goal in this paper and the next is to describe an implementa-tion of our theoretical ideas. We therefore begin here by being more precise about dpll andits extension to relevance-bounded learning, or rbl . We present some general definitionsthat we will need throughout this paper, and then give a description of the dpll algorithmin a learning/reason-maintenance setting. We prove that an implementation of these ideascan retain the soundness and completeness of dpll while using an amount of memory thatgrows polynomially with problem size. Although this result has been generally acceptedsince 1-relevance learning (“dynamic backtracking,” Ginsberg, 1993) was generalized byBayardo, Miranker and Schrag (Bayardo & Miranker, 1996; Bayardo & Schrag, 1997), weknow of no previous proof that rbl has the stated properties. Definition 2.1 A partial assignment is an ordered sequence h l , . . . , l n i of distinct and consistent literals. Definition 2.2
Let ∨ i l i be a clause, which we will denote by c , and suppose that P is apartial assignment. We will say that the possible value of c under P is given by poss ( c, P ) = |{ l ∈ c |¬ l P }| − If no ambiguity is possible, we will write simply poss ( c ) instead of poss ( c, P ) . In otherwords, poss ( c ) is the number of literals that are either already satisfied or not valued by P ,reduced by one (since true clauses require at least one true literal).If S is a set of clauses, we will write poss n ( S, P ) for the subset of c ∈ S for which poss ( c, P ) ≤ n .In a similar way, we will define curr ( c, P ) to be curr ( c, P ) = |{ l ∈ c ∩ P }| − We will write curr n ( S, P ) for the subset of c ∈ S for which curr ( c, P ) ≤ n . Informally, if poss ( c, P ) = 0, that means that any partial assignment extending P can makeat most one literal in c true; there is no room for any “extra” literals to be true. This mightbe because all of the literals in c are assigned values by P and only one such literal is true;it might be because there is a single unvalued literal and all of the other literals are false.If poss ( c, P ) <
0, it means that the given partial assignment cannot be extended in a waythat will cause c to be satisfied. Thus we see that poss − ( S, P ) is the set of clauses in S thatare falsified by P . Since curr gives the “current” excess in the number of satisfied literals(as opposed to poss , which gives the possible excess), the set poss ( S, P ) ∩ curr − ( S, P )is the set of clauses that are not currently satisfied and have at most one unvalued literal.These are generally referred to as unit clauses.We note in passing that Definition 2.2 can easily be extended to deal with pseudo-Boolean instead of Boolean clauses, although that extension will not be our focus here.
AP 2: Theory
Definition 2.3 An annotated partial assignment is an ordered sequence h ( l , c ) , . . . , ( l n , c n ) i of distinct and consistent literals and clauses, where c i is the reason for literal l i and either c i = true (indicating that l i was a branch point) or c i is a clause such that:1. l i is a literal in c i , and2. poss ( c i , h l , . . . , l i − i ) = 0 An annotated partial assignment will be called sound with respect to a set of clauses C if C | = c i for each reason c i . The reasons have the property that after the literals l , . . . , l i − are all included in thepartial assignment, it is possible to conclude l i directly from c i , since there is no other wayfor c i to be satisfied. Definition 2.4
Let c and c be clauses, each a set of literals to be disjoined. We will saythat c and c resolve if there is a unique literal l such that l ∈ c and ¬ l ∈ c . If c and c resolve, their resolvent , to be denoted resolve ( c , c ) , is the disjunction of the literals inthe set c ∪ c − { l, ¬ l } .If r and r are reasons, the result of resolving r and r is defined to be: resolve ( r , r ) = r , if r = true ; r , if r = true ;the conventional resolvent of r and r , otherwise. Definition 2.5
Let C be a set of clauses and P a partial assignment. A nogood for P is any clause c that is entailed by C but falsified by P . A nogood is any clause c that isentailed by C . We are now in a position to present one of the basic building blocks of dpll or rbl ,the unit propagation procedure. This computes the “obvious” consequences of a partialassignment: Procedure 2.6 (Unit propagation)
To compute
Unit-Propagate ( C, P ) for a set C ofclauses and an annotated partial assignment P : while poss ( C, P ) ∩ curr − ( C, P ) = Ø2 do if poss − ( C, P ) = Ø3 then c ← an element of poss − ( C, P )4 l i ← the literal in c with the highest index in P return h true , resolve ( c, c i ) i else c ← an element of poss ( C, P ) ∩ curr − ( C, P )7 l ← the literal in c unassigned by P P ← h P, ( l, c ) i return h false , P i ixon, Ginsberg, Luks & Parkes The above procedure returns a pair of values. The first indicates whether a contradiction hasbeen found. If so, the second value is the reason for the failure, a consequence of the clausaldatabase C that is falsified by the partial assignment P (i.e., a nogood). If no contradictionis found, the second value is a suitably extended partial assignment. Procedure 2.6 has alsobeen modified to work with annotated partial assignments, and to annotate the new choicesthat are made when P is extended. Proposition 2.7
Suppose that C is a Boolean satisfiability problem, and P is a soundannotated partial assignment. Then:1. If unit-propagate ( P ) = h false , P ′ i , then P ′ is a sound extension of P , and2. If unit-propagate ( P ) = h true , c i , then c is a nogood for P . Proof.
In the interests of maintaining the continuity of the exposition, most proofs (in-cluding this one!) have been deferred to the appendix. Proofs or proof sketches will appearin the main text only when they further the exposition in some way.We can now describe relevance-bounded learning:
Procedure 2.8 (Relevance-bounded reasoning, rbl ) Let C be a sat problem, and D a set of learned nogoods, so that C | = D . Let P be an annotated partial assignment, and k a fixed relevance bound. To compute rbl ( C, D, P ) : h x, y i ← Unit-Propagate ( C ∪ D, P )2 if x = true then c ← y if c is empty5 then return failure else remove successive elements from P so that c is satisfiable and poss ( c, P ) ≤ k D ← { c } ∪ poss k ( D, P )8 return rbl ( C, D, P )9 else P ← y if P is a solution to C then return P else l ← a literal not assigned a value by P return rbl ( C, D, h P, ( l, true ) i )This procedure is fairly different from the original description of dpll , so let us gothrough it.In general, variables are assigned values either via branching on line 13, or unit propa-gation on lines 1 and 9. If unit propagation terminates without reaching a contradiction orfinding a solution (so that x is false on line 2 and the test on line 10 fails as well), then abranch variable is selected and assigned a value, and the procedure recurs.If the unit propagation procedure “fails” and returns h true , c i for a new nogood c ,the new clause is learned by adding it to D , and the search backtracks at least to the AP 2: Theory point where c is satisfiable. Any learned clauses that have become irrelevant (in thattheir poss value exceeds the irrelevance cutoff k ) are removed. Note that we only remove learned irrelevant nogoods; we obviously cannot remove clauses that were part of the originalproblem specification. It is for this reason that the sets C and D (of original and learnedclauses respectively) are maintained separately.Procedure 2.8 can fail only if a contradiction (an empty clause c ) is derived. In all othercases, progress is made by augmenting the set of clauses to include at least one new nogoodthat eliminates the current partial assignment. Instead of resetting the branch literal l totake the opposite value as in Davis et.al.’s original description of their algorithm, a newclause is learned and added to the problem. This new clause causes either l or some previousvariable to take a new value.The above description is ambiguous about a variety of points. We do not specify howfar to backtrack on line 6, or the branch literal to be chosen on line 12. We will not beconcerned with these choices; zap takes the same approach that zChaff does and theimplementation is straightforward. Theorem 2.9
Rbl is sound and complete in that rbl ( C, Ø , hi ) will always return a satis-fying assignment if C is satisfiable and will always report failure if C is unsatisfiable. Rbl also uses an amount of memory polynomial in the size of C (although exponential in therelevance bound k ). As discussed at some length in zap1 , other authors have focused on extending the lan-guage of Boolean satisfiability in ways that preserve the efficiency of rbl . These extensionsinclude the ability to deal with quantification (Ginsberg & Parkes, 2000), pseudo-Boolean orcardinality clauses (Barth, 1995, 1996; Chandru & Hooker, 1999; Dixon & Ginsberg, 2000;Hooker, 1988; Nemhauser & Wolsey, 1988), or parity clauses (Baumgartner & Massacci,2000; Li, 2000).
3. Some Concepts from Group Theory
Relevance-bounded learning is only a part of the background that we will need to describe zap ; we also need some basic ideas from group theory. There are many excellent referencesavailable on this topic (Rotman, 1994, and others), and we can only give a brief accounthere. Our goal is not to present a terse sequence of definitions and to then hollowly claimthat this paper is self-contained; we would rather provide insight regarding the goals andunderlying philosophy of group theory generally. We will face a similar problem in the finalpaper in this series, where we will draw heavily on results from computational group theoryand will, once again, present a compact and hopefully helpful overview of a broad area ofmathematics.
Definition 3.1 A group is a set S equipped with an associative binary operator ◦ . Theoperator ◦ has an identity , with ◦ x = x ◦ x for all x ∈ S , and an inverse, so thatfor every x ∈ S there is an x − such that x ◦ x − = x − ◦ x = 1 .
3. As we remarked in zap1 , some systems such as zChaff (Moskewicz et al., 2001) backtrack further tothe point where c is unit. ixon, Ginsberg, Luks & Parkes In other words, ◦ is a function ◦ : S × S → S ; since ◦ is associative, we always have( x ◦ y ) ◦ z = x ◦ ( y ◦ z )The group operator ◦ is not required to be commutative; if it is commutative, the group iscalled Abelian .Typical examples of groups include Z , the group of integers with the operation beingaddition. Similarly, Q and R are the groups of rationals or reals under addition. Formultiplication, zero needs to be excluded, since it has no inverse, and we get the groups Q ∗ and R ∗ . Note that Z ∗ is not a group, since 1 /n is not an integer for most integers n .Other common groups include Z n for any positive integer n ; this is the group of integersmod n , where the group operation is addition mod n . For a prime p , the set Z ∗ p of nonzerointegers mod p does have a multiplicative inverse, so that Z ∗ p is a group under multiplication.The group Z contains the single element 0 and is the trivial group. This group is oftendenoted by .All of the groups we have described thus far are Abelian, but non-Abelian groups arenot hard to come by. As an example, the set of all n × n matrices with real entries andnonzero determinants is a group under multiplication, since every matrix with a nonzerodeterminant has an inverse. This group is called the general linear group and is denoted GL ( n ).Of particular interest to us will be the so-called permutation groups : Definition 3.2
Let T be a set. A permutation of T is a bijection ω : T → T from T toitself. Proposition 3.3
Let T be a set. Then the set of permutations of T is a group under thecomposition operator. Proof.
This is simply a matter of validating the definition. Functional composition is wellknown to be associative (although not necessarily commutative), and the identity functionfrom T to itself is the identity for the composition operator. Since each permutation is abijection, permutations can be inverted to give the inverse operator for the group.The group of permutations on T is called the symmetry group of T , and is typicallydenoted Sym( T ). We will take the view that the composition f ◦ g acts with f first and g second, so that ( f ◦ g )( x ) = g ( f ( x )) for any x ∈ T . (Note the variable order.)Because permutation groups will be of such interest to us, it is worthwhile to introducesome additional notation for dealing with them in the case where T ⊆ Z is a subset ofthe integers. In the special case where T = { , . . . , n } , we will often abbreviate Sym( T ) toeither Sym( n ) or simply S n .Of course, we can get groups of permutations without including every permutation on aparticular set; the 2-element set consisting of the identity permutation and the permutationthat swaps two specific elements of T is closed under inversion and composition and istherefore a group as well. In general, we have: Definition 3.4
Let ( G, ◦ ) be a group. Then a subset H ⊆ G is called a subgroup if ( H, ◦ ) is a group. This is denoted H ≤ G . If the inclusion is proper, we write H < G . AP 2: Theory
A subgroup of a group G is any subset of G that includes the identity and that is closedunder composition and inversion.If G is a finite group, closure under composition suffices. To understand why, supposethat we have some subset H ⊆ G that is closed under composition, and that x ∈ H . Now x ∈ H , and x ∈ H , and so on. Since G is finite, we must eventually have x m = x n for someintegers m and n , where we assume m > n . It follows that x m − n = 1 so x m − n − = x − , so H is closed under inversion and therefore a subgroup. Proposition 3.5
Let G be a group, and suppose that H ≤ G and H ≤ G are subgroups.Then H ∩ H ≤ G is a subgroup of G as well. This should be clear, since H ∩ H must be closed under inversion and composition ifeach of the component groups is. Definition 3.6
Let G be a group, and S ⊆ G a subset. Then there is a unique smallestsubgroup of G containing S , which is denoted h S i and called the subgroup of G generated by S . The order of an element g ∈ G is defined to be |h g i| . The generated subgroup is unique because it can be formed by taking the intersection ofall subgroups containing S . This intersection is itself a subgroup by virtue of Proposition 3.5.If S = Ø or S = { } , the trivial subgroup is generated, consisting of only the identity elementof G . Thus the order of the identity element is one. For any element g , the order of g isthe least nonzero exponent m for which g m = 1.We have already remarked that the two-element set { , ( ab ) } is a group, where 1 repre-sents the trivial permutation and ( ab ) is the permutation that swaps a and b . It is easy tosee that { , ( ab ) } is the group generated by ( ab ). The order of ( ab ) is two.In a similar way, if ( abcd ) is the permutation that maps a to b , b to c , c to d and d backto a , then the subgroup generated by ( abcd ) is { , ( abcd ) , ( ac ) ◦ ( bd ) , ( adcb ) } The third element simultaneously swaps a and c , and swaps b and d . The order of thepermutation ( abcd ) is four, and ( abcd ) is called a . Both this subgroup and theprevious subgroup generated by ( ab ) are Abelian, although the full permutation groupSym( L ) is not Abelian if | L | >
2. It is not hard to see that h ρ i is Abelian for any specificpermutation ρ .Slightly more interesting is the group generated by ( abcd ) together with ( ac ). This grouphas eight elements: { , ( abcd ) , ( ac ) ◦ ( bd ) , ( adcb ) , ( ac ) , ( ad ) ◦ ( bc ) , ( bd ) , ( ab ) ◦ ( cd ) } (1)The first four permutations don’t “use” ( ac ) and the second four do. Since ( abcd ) ◦ ( ac ) =( ac ) ◦ ( abcd ), this group is not Abelian.It is not hard to see that the group (1) is in fact the group of rigid motions of a squarewhose vertices are labeled a , b , c and d . The first permutation ( abcd ) corresponds to arotation of the square by 90 ◦ and the second ( ac ), to a flip around the b - d diagonal. Thefirst four permutations in (1) simply rotate the square, while the second four use the flip as ixon, Ginsberg, Luks & Parkes well; the group is not Abelian because a flip followed by a 90 ◦ clockwise rotation is differentthan the rotation followed by the flip. In a similar way, the six basic twists of Rubik’scube generate a permutation group of size approximately 4 . × , giving all accessiblepermutations of the faces.In general, suppose that f is a permutation on a set S and x ∈ S . We can obviouslyconsider the image of x under f . Rather than denote this image by f ( x ) as usual, it iscustomary to denote it by x f . The reason for this “inline” notation is that we now have x fg = ( x f ) g which seems natural, as opposed to the unnatural( f g )( x ) = g ( f ( x ))as mentioned previously. We have dropped the explicit composition operator ◦ here.Continuing, we can form the set of images x f where f varies over all elements of somepermutation group G . This is called the orbit of x under G : Definition 3.7
Let G ≤ Sym( T ) be a permutation group. Then for any x ∈ T , the orbitof x in G , to be denoted by x G , is given by x G = { x g | g ∈ G } . Returning to the case of permutations on integers, suppose that n is an integer and ω a permutation. We can consider h ω i , the group of permutations generated by ω , which isthe set of powers of ω until we eventually have ω m = 1 for m the order of ω . The orbit of n under h ω i is the set n h ω i = { n, n ω , n ω , . . . , n ω m − } .Now suppose that n ′ is some other integer that appears in this sequence, say n ′ = n ω k .Now n ′ ω = ( n ω k ) w = n ω k +1 , so that the images of n ′ can be “read off” from the sequenceof images of n . It therefore makes sense to write this “piece” of the permutation as (forexample) (1 , ,
4) (2)indicating that 1 is mapped to 3, that 3 is mapped to 4, and that 4 is mapped back to 1.Of course, the 3-cycle (2) doesn’t tell us what happens to integers that are not in n h ω i ;for them, we need another cycle as in (2). So if the permutation ω swaps 2 and 5 in additionto mapping 1 to 3 and so on, we might write ω = (1 , , ,
5) (3)If 6 is not moved by ω (so that 6 ω = 6), we could write ω = (1 , , , a, b, c ) as simply ( abc ). If we need to indicate explicitly that two cycles are partof a single permutation, we will introduce an extra set of parentheses, perhaps rewriting (3)as ω = ((1 , , , AP 2: Theory
Every permutation can be written as a product of disjoint cycles in this way.Finally, in composing permutations written in this fashion, we will either drop the ◦ orreplace it with · , so that we have, for example,( abc ) · ( abd ) = ( ad )( bc )The point a is moved to b by the first cycle and then to d by the second. The point b ismoved to c by the first cycle and then not changed by the second; c is moved to a and thenon to b . Finally, d is not moved by the first cycle but is moved to a by the second.Two other notions that we will need are that of closure and stabilizer: Definition 3.8
Let G ≤ Sym( T ) , and S ⊆ T . By the G -closure of S , to be denoted S G ,we will mean the set S G = { s g | s ∈ S and g ∈ G } Definition 3.9
Given a group G ≤ Sym( T ) and L ⊆ T , the pointwise stabilizer of L ,denoted G L , is the subgroup of all g ∈ G such that l g = l for every l ∈ L . The set stabilizer of L , denoted G { L } , is that subgroup of all g ∈ G such that L g = L . As an example, consider the group G generated by the permutation ω = (1 , , , ω = (1 , ,
3) and ω = (2 , G = h (1 , , , (2 , i is the group generated by the 3-cycle (1 , ,
3) and the 2-cycle (2 , G that point stabilizes the set { } is thus G = h (1 , , i , and G , isidentical. The subgroup of G that set stabilizes { , } is G { , } = G , however, since everypermutation in G leaves the set { , } intact.
4. Axiom Structure as a Group
While we will need the details of Procedures 2.8 and 2.6 in order to implement our ideas,the procedures themselves inherit certain weaknesses of dpll as originally described. Twoweaknesses that we hope to address are:1. The appearance of poss ( C, P ) ∩ curr − ( C, P ) in the inner unit propagation looprequires an examination of a significant subset of the clausal database at each inferencestep, and2. Both dpll and rbl are fundamentally resolution-based methods; there are knownproblem classes that are exponentially difficult for resolution-based methods but whichare easy if the language in use is extended to include either cardinality or parityclauses.
Let us begin by examining examples where specialized techniques can help to address thesedifficulties. ixon, Ginsberg, Luks & Parkes
As we have discussed elsewhere (Dixon et al., 2004b; Ginsberg & Parkes, 2000), the set ofaxioms that need to be investigated in the dpll inner loop often has structure that can beexploited to speed the examination process. If a ground axiomatization is replaced with alifted one, the search for axioms with specific syntactic properties is NP-complete in thenumber of variables in the lifted axiom, and is called subsearch for that reason.In many cases, search techniques can be applied to the subsearch problem. As anexample, suppose that we are looking for instances of the lifted axiom a ( x, y ) ∨ b ( y, z ) ∨ c ( x, z ) (5)that are unit, so that poss ( i, P ) = 0 and curr ( i, P ) = − i and aunit propagation is possible as a result.Our notation here is that of qprop . There is an implicit universal quantification over x , y and z , and each quantification is over a domain of finite size. We assume that all ofthe domains are of size d , so (5) corresponds to d ground axioms. If a ( x, y ) is true for all x and y (which we can surely conclude in time O ( d )), then we can conclude without furtherwork that (5) has no unit instances, since every instance of (5) is already satisfied. If a ( x, y )is true except for a single ( x, y ) pair, then we need only examine the d possible values of z for unit instances, reducing our total work from d to d + d .It will be useful in what follows to make this example still more specific, so let us assumethat x , y and z are all chosen from a two element domain { A, B } . The single lifted axiom (5)now corresponds to the set of ground instances: a ( A, A ) ∨ b ( A, A ) ∨ c ( A, A ) a ( A, A ) ∨ b ( A, B ) ∨ c ( A, B ) a ( A, B ) ∨ b ( B, A ) ∨ c ( A, A ) a ( A, B ) ∨ b ( B, B ) ∨ c ( A, B ) a ( B, A ) ∨ b ( A, A ) ∨ c ( B, A ) a ( B, A ) ∨ b ( A, B ) ∨ c ( B, B ) a ( B, B ) ∨ b ( B, A ) ∨ c ( B, A ) a ( B, B ) ∨ b ( B, B ) ∨ c ( B, B )If we introduce ground literals l , l , l , l for the instances of a ( x, y ) and so on, we get: l ∨ l ∨ l l ∨ l ∨ l l ∨ l ∨ l l ∨ l ∨ l (6) l ∨ l ∨ l l ∨ l ∨ l l ∨ l ∨ l l ∨ l ∨ l AP 2: Theory at which point the structure implicit in (5) has been obscured. We will return to the detailsof this example shortly.
Structure is also present in the sets of axioms used to encode the pigeonhole problem, whichis known to be exponentially difficult for any resolution-based method (Haken, 1985). Asshown by a variety of authors (Cook, Coullard, & Turan, 1987; Dixon & Ginsberg, 2000),the pigeonhole problem can be solved in polynomial time if we extend our representationto include cardinality axioms such as x + · · · + x m ≥ k (7)As shown in zap1 , the single axiom (7) is equivalent to (cid:0) mk − (cid:1) conventional disjunctions.As in Section 4.1.1, we will consider this example in detail. Suppose that we have theclause x + x + x + x + x ≥ x i ’s are true. This is equivalent to x ∨ x ∨ x x ∨ x ∨ x x ∨ x ∨ x x ∨ x ∨ x x ∨ x ∨ x x ∨ x ∨ x (9) x ∨ x ∨ x x ∨ x ∨ x x ∨ x ∨ x x ∨ x ∨ x Finally, we consider clauses that are most naturally expressed using modular arithmetic orexclusive or’s, such as x + · · · + x k ≡ x + · · · + x k ≡ x i ’s is specified as even in (10) or as odd in (11).It is well known that axiom sets consisting of parity clauses in isolation can be solvedin polynomial time using Gaussian elimination, but there are examples that are exponen-tially difficult for resolution-based methods (Tseitin, 1970). As in the other examples wehave discussed, single axioms such as (11) reveal structure that a straightforward Booleanaxiomatization obscures. In this case, the single axiom (11) with k = 3 is equivalent to: x ∨ x ∨ x x ∨ ¬ x ∨ ¬ x (12) ¬ x ∨ x ∨ ¬ x ¬ x ∨ ¬ x ∨ x As the cardinality axiom (7) is equivalent to (cid:0) mk − (cid:1) disjunctions, a parity axiom of the formof (10) or (11) is in general equivalent to 2 k − Boolean disjunctions. ixon, Ginsberg, Luks & Parkes
Of course, the ground axiomatizations (6), (9) and (12) are equivalent to the original descrip-tions given by (5), (7) and (11), so that any structure present in these original descriptionsis still there. That structure has, however, been obscured by the ground encodings. Ourgoal in this section is to begin the process of understanding the structure in a way that letsus describe it in general terms.As a start, note that each of the axiom sets consists of axioms of equal length; it followsthat the axioms can all be obtained from a single one simply by permuting the literals inthe theory. In (6) and (9), literals are permuted with other literals of the same sign; in (12),literals are permuted with their negated versions. But in every instance, a permutationsuffices.Thus, for example, the set of permutations needed to generate (9) from the first groundaxiom alone is clearly just the setΩ = Sym( { x , x , x , x , x } ) (13)since these literals can be permuted arbitrarily to move from one element of (9) to another.The set Ω in (13) is a subgroup of the full permutation group S n on 2 n literals in n variables, since Ω is easily seen to be closed under inversion and composition.What about the example (12) involving a parity clause? Here the set of permutationsneeded to generate the four axioms from the first is given by:( x , ¬ x )( x , ¬ x ) (14)( x , ¬ x )( x , ¬ x ) (15)( x , ¬ x )( x , ¬ x ) (16)Literals are now being exchanged with their negations, but this set, too, is closed under thegroup inverse and composition operations. Since each element is a composition of disjointtranspositions, each element is its own inverse. The composition of the first two elementsis the third.The remaining example (6) is a bit more subtle; perhaps this is to be expected, since theaxiomatization (6) obscures the underlying structure far more effectively than does either(9) or (12).To understand this example, note that the set of axioms (6) is “generated” by a setof transformations on the underlying variables. In one transformation, we swap the valuesof A and B for x while leaving the values for y and z unchanged, corresponding to thepermutation( a ( A, A ) , a ( B, A ))( a ( A, B ) , a ( B, B ))( c ( A, A ) , c ( B, A ))( c ( A, B ) , c ( B, B ))We have included in a single permutation the induced changes to all of the relevant groundliterals. (The relation b doesn’t appear because b does not have x as an argument in (5).)In terms of the literals in (6), this becomes ω x = ( l l )( l l )( l l )( l l ) AP 2: Theory
In a similar way, swapping the two values for y corresponds to the permutation ω y = ( l l )( l l )( l l )( l l )and z produces ω z = ( l l )( l l )( l l )( l l )Now consider Ω = h ω x , ω y , ω z i , the subgroup of Sym( { l , . . . , l } ) that is generated by ω x , ω y and ω z . Since the clauses in (6) can be obtained from any single clause by permutingthe values of x , y and z , it is clear that the image of any single clause in the set (6) underΩ is exactly the complete set of clauses (6).As an example, operating on the first axiom in (6) with ω x produces l ∨ l ∨ l This is the fifth axiom, as it should be, since we have swapped a ( A, A ) with a ( B, A ) and c ( A, A ) with c ( B, A ).Alternatively, a straightforward calculation shows that ω x ω y = ( l l )( l l )( l l )( l l )( l l )( l l )and maps the first axiom in (9) to the next-to-last, the second axiom to last, and so on.It should be clear at this point what all of these examples have in common. In everycase, the set of ground instances corresponding to a single non-Boolean axiom can begenerated from any single ground instance by the elements of a subgroup of the group S n of permutations of the literals in the problem.Provided that all of the clauses are the same length, there is obviously some sub set (asopposed to sub group ) of S n that can produce all of the clauses from a single one. Butsubgroups are highly structured objects; there are many fewer subgroups of S n than thereare subsets. One would not expect, a priori, that the particular sets of permutations arisingin our examples would all have the structure of subgroups. The fact that they do, that allof these particular subsets are subgroups even though so few subsets are in general, is whatleads to our general belief that the structure of the subgroups captures and generalizes thegeneral idea of structure underlying our motivating examples.In problems without structure, the subgroup property is absent. An instance of random3- sat , for example, can always be encoded using a single 3-literal clause c and then that setof permutations needed to recover the entire problem from c in isolation. There is no struc-ture to the set of permutations because the original set of clauses was itself unstructured.In the examples we have been considering, on the other hand, the structure is implicit inthe requirement that the set Ω used to produce the clauses be a group. As we will see, thisgroup structure also has just the computational properties needed if we are to lift rbl andother Boolean satisfiability techniques to our broader setting.Let us also point out the surprising fact that the subgroup idea captures all of thestructures discussed in zap1 . It is not surprising that the various structures used to reduceproof size all have a similar flavor, or that the structure used to speed unit propagation be
4. In general, S n has 2 (2 n )! subsets, of which only approximately 2 n / are subgroups (Pyber, 1993). ixon, Ginsberg, Luks & Parkes uniform. But it strikes us as remarkable that these two types of structure, used for suchdifferent purposes, are in fact instances of a single framework.This, then, is the technical insight on which zap rests: Instead of generalizing thelanguage of Boolean satisfiability as seems required by the range of examples we haveconsidered, it suffices to annotate ground clauses with the Ω needed to reproduce a largeraxiom set. Before we formalize this, however, note that any “reasonable” permutation thatmaps a literal l to another literal l should respect the semantics of the axiomatization andmap ¬ l to ¬ l as well. Definition 4.1
Given a set of n variables, we will denote by W n that subgroup of S n consisting of permutations that map the literal ¬ l to ¬ l whenever they map l to l . Informally, an element of W n corresponds to a permutation of the n variables, together witha choice to flip some subset of them; W n is therefore of size | W n | = 2 n n !. We are now in a position to state:
Definition 4.2 An augmented clause in an n -variable Boolean satisfiability problem is apair ( c, G ) where c is a Boolean clause and G ≤ W n . A ground clause c ′ is an instance ofan augmented clause ( c, G ) if there is some g ∈ G such that c ′ = c g . The clause c will becalled the base instance of ( c, G ) . Our aim in the remainder of this paper is to show that augmented clauses have theproperties needed to justify the claims we made in the introduction:
1. They can be represented compactly,2. They can be combined efficiently using a generalization of resolution,3. They generalize existing concepts such as quantification over finite do-mains, cardinality, and parity clauses, together with providing naturalgeneralizations for proof techniques involving such clauses,4.
Rbl can be extended with little or no computational overhead to manipu-late augmented clauses instead of ground ones, and5. Propagation can be computed efficiently in this generalized setting.
The first four points will be discussed in this and the next three sections of the paper. Thefinal point is presented in the next paper in this series.
For the first point, the fact that the augmentations G can be represented compactly is aconsequence of G ’s group structure. In the example surrounding the reconstruction of (9)from (13), for example, the group in question is the full symmetry group on m elements,where m is the number of variables in the cardinality clause. In the lifting example (12),
5. We note in passing that W n is the so-called wreath product of S and S n , typically denoted S ≀ S n . Thespecific group W n is also called the group of “permutations and complementations” by Harrison (1989). AP 2: Theory we can describe the group in terms of the generators ω x , ω y and ω z instead of listing alleight elements that the group contains. In general, we have (recall that proofs appear inthe appendix): Proposition 4.3
Let S be a set of ground clauses, and ( c, G ) an equivalent augmentedclause, where G is represented by generators. It is possible in polynomial time to find a setof generators { ω , . . . , ω k } where k ≤ log | G | and G = h ω , . . . , ω k i . Since the size of the full permutation group S n is only n ! < n n and a single generatortakes at most O ( n ) space, we have: Corollary 4.4
Any augmented clause in a theory containing n literals can be expressed in O ( n log n ) space. This result can be strengthened using:
Proposition 4.5 (Jerrum, 1986; Knuth, 1991)
Let G ≤ S n . It is possible to find inpolynomial time a set of generators for G of size at most O ( n ) . This reduces the O ( n log n ) in the corollary to simply O ( n ). Before proceeding, let us make a remark regarding computational complexity. All ofthe group-theoretic constructs of interest to us can be computed in time polynomial inthe group size; basically one simply enumerates the group and evaluates the construction(generate and test, as it were). What is interesting is the collection of group constructionsthat can be computed in time polynomial in the number of generators of the group and thenumber of variables in the problem. Given Proposition 4.5, the time is thus polynomial inthe number of variables in the problem.Note that the size of the group G can be vastly greater than the number of instances ofany particular augmented clause ( c, G ). As an example, for the cardinality clause x + · · · + x m ≥ k (17)the associated symmetry group Sym { x , . . . , x m } acts on an instance such as x ∨ · · · ∨ x m − k +1 (18)to reproduce the full Boolean axiomatization. But each such instance corresponds to( m − k + 1)! distinct group elements as the variables within the clause (18) are permuted.In this particular case, the symmetry group Sym { x , . . . , x m } can in fact be generatedby the two permutations ( x , x ) and ( x , x , . . . , x m ). Definition 4.6
Two augmented clauses ( c , G ) and ( c , G ) will be called equivalent ifthey have identical sets of instances. This will be denoted ( c , G ) ≡ ( c , G ) .
6. Although the methods used are nonconstructive, Babai (1986) showed that the length of an increasingsequence of subgroups of S n is at most ⌊ n ⌋ −
2; this imposes the same bound on the number ofgenerators needed (compare the proof of Proposition 4.3). Using other methods, McGiver and Neumannstated (1987) that for n = 3, there is always a generating set of size at most ⌊ n ⌋ . ixon, Ginsberg, Luks & Parkes Proposition 4.7
Let ( c, G ) be an augmented clause. Then if c ′ is any instance of ( c, G ) , ( c, G ) ≡ ( c ′ , G ) . We also have:
Proposition 4.8
Let ( c, G ) be an augmented clause with d distinct instances. Then thereis a subgroup H ≤ G that can be described using O (log ( d )) generators such that ( c, H ) ≡ ( c, G ) . Furthermore, given d and generators for G , there is a Monte Carlo polynomial-timealgorithm for constructing the generators of such an H . Proposition 4.5 is the first of the results promised in the introduction: If d Booleanaxioms involving n variables can be captured as instances of an augmented clause, thataugmented clause can be represented using O ( n ) generators; Proposition 4.8 guaranteesthat O (log d ) generators suffice as well.In the specific instances that we have discussed, the representational efficiencies aregreater still: clause Boolean totaltype axioms generators size cardinality (cid:0) mk − (cid:1) m + 1parity 2 k − k + 5 qprop d v v v ( d + 1)Each row gives the number of Boolean axioms or generators needed to represent a clauseof the given type, along with the total size of those generators. For the cardinality clause(17), the complete symmetry group over m variables can be expressed using exactly twogenerators, one of size 2 and the other of size m − The number of Boolean axioms is (cid:0) mk − (cid:1) as explained in Section 4.1.2.For the parity clause x + · · · + x k ≡ m (mod 2)the number of Boolean axioms is the same as the number of ways to select an even numberof the x i ’s, which is half of all of the subsets of { x , . . . , x k } . (Remove x from the set;now any subset of the remaining x i can be made of even parity by including x or notas appropriate.) The parity groups F k can be captured by k − x , ¬ x ) , ( x i , ¬ x i ) as i = 2 , . . . , k (total size 4( k − x , ¬ x )( x , ¬ x ) with the full symmetry group on x , . . . , x k to describea parity clause using exactly three generators (total size 4 + 2 + k − qprop clause involving v variables, each with a domain of size d , correspondsto a set of d v individual domain axioms. As we saw in Section 4.2 and will formalize inSection 6.1, the associated group can be described using symmetry groups over the domainsof each quantified variable; there are v such groups and two generators (of size 2 and d −
7. A Monte Carlo algorithm is one that is not deterministic but that can be made to work with arbitrarilyhigh specified probability without changing its overall complexity (Seress, 2003).8. As noted earlier, S n is generated by the transposition (1 ,
2) and the n − , , . . . , n ).9. Depending on the sizes, the number of generators needed for a product of symmetry groups can bereduced in many cases, although the total size is unchanged. AP 2: Theory
Note that the total sizes are virtually optimal in all of these cases. For cardinality andparity clauses, it is surely essential to enumerate the variables in question (size m and k respectively). For qprop clauses, simply enumerating the domains of quantification takesspace vd .
5. Resolution
We now turn to the question of basing derivations on augmented clauses instead of groundones. We begin with a few preliminaries:
Proposition 5.1
For ground clauses c and c and a permutation ω ∈ W n , resolve ( ω ( c ) , ω ( c )) = ω ( resolve ( c , c )) Definition 5.2 If C is a set of augmented clauses, we will say that C entails an augmentedclause ( c, G ) , writing C | = ( c, G ) , if every instance of ( c, G ) is entailed by the set of instancesof the augmented clauses in C . We are now in a position to consider lifting the idea of resolution to our setting, but letus first discuss the overall intent of this lifting. What we would like to do is to think of anaugmented clause as having force similar to all of its instances; as a result, when we resolvetwo augmented clauses ( c , G ) and ( c , G ), we would like to obtain as the (augmented)resolvent the set of all resolutions that are sanctioned by resolving an instance of ( c , G )with one of ( c , G ). Unfortunately, we have: Proposition 5.3
There are augmented clauses c and c such that the set S of resolventsof instances of the two clauses does not correspond to any single augmented clause ( c, G ) . Given that we cannot capture exactly the set of possible resolvents of two augmentedclauses, what can we do? If ( c, G ) is an “augmented resolvent” of ( c , G ) and ( c , G ), wemight expect ( c, G ) to have the following properties:1. It should be sound , in that ( c , G ) ∧ ( c , G ) | = ( c, G ). This says that every instanceof ( c, G ) is indeed sanctioned by resolving an instance of ( c , G ) with an instance of( c , G ).2. It should be complete , in that resolve ( c , c ) is an instance of ( c, G ). We may not beable to capture every possible resolvent in the augmented clause ( c, G ), but we shouldsurely capture the base case that is obtained by resolving the base instance c directlyagainst the base instance c .3. It should be monotonic , in that if G ≤ H and G ≤ H , then ( c, G ) is also a resolventof ( c , H ) and ( c , H ). As the clauses being resolved become stronger, the resolventshould become stronger as well.4. It should be polynomial , in that it is possible to confirm that ( c, G ) is a resolvent of( c , G ) and ( c , G ) in polynomial time. ixon, Ginsberg, Luks & Parkes
5. It should be stable , in that if c G = c G , then ( resolve ( c , c ) , G ) is a resolvent of( c , G ) and ( c , G ). Roughly speaking, this says that if the groups in the two inputclauses are the same, then the augmented resolvent can be obtained by resolving thebase instances c and c and then operating with the same group.6. It should be strong , in that if no element of c G is moved by G and similarly no elementof c G is moved by G , then ( resolve ( c , c ) , h G , G i ) is a resolvent of ( c , G ) and( c , G ). This says that if the group actions are distinct in that G acts on c and leaves c completely alone and vice versa, then we should be able to get the complete group ofresolvents in our answer. This group corresponds to be base resolvent resolve ( c , c )acted on by the group generated by G and G . Definition 5.4
A definition of augmented resolution will be called satisfactory if it satisfiesthe above conditions.
Note that we do not require that the definition of augmented resolution be unique. Ourgoal is to define conditions under which ( c, G ) is an augmented resolvent of ( c , G ) and( c , G ), as opposed to “the” augmented resolvent of ( c , G ) and ( c , G ). To the best ofour knowledge (and as suggested by Proposition 5.3), there is no satisfactory definition ofaugmented resolution that defines the resolvent of two augmented clauses uniquely.As we work toward a satisfactory definition of augmented resolution, let us consider someexamples to help understand what the basic issues are. Consider, for example, resolvingthe two clauses ( a ∨ b, h ( bc ) i )which has instances a ∨ b and a ∨ c and ( ¬ a ∨ d, hi )which has the single instance ¬ a ∨ d . We will write these somewhat more compactly as( a ∨ b, ( bc )) (19)and ( ¬ a ∨ d, ) (20)respectively.Resolving the clauses individually, we see that we should be able to derive the pair ofclauses b ∨ d and c ∨ d ; in other words, the augmented clause( b ∨ d, ( bc )) (21)It certainly seems as if it should be possible to capture this in our setting, since the baseinstance of (21) is just the resolvent of the base instances of (19) and (20). Where doesthe group generated by ( bc ) come from?To answer this, we begin by introducing some additional notation.
10. Indeed, condition (6) requires that b ∨ d be an instance of some augmented resolvent, since the groupsact independently in this case. AP 2: Theory
Definition 5.5
Let ω be a permutation and S a set. Then by ω | S we will denote the resultof restricting the permutation to the given set. Note that ω | S will be a permutation on S if and only if S ω = S , so that S is fixed by ω . Definition 5.6
For K , . . . , K n ⊆ L and G , . . . , G n ≤ Sym( L ) , we will say that a permu-tation ω ∈ Sym( L ) is an extension of { G , . . . , G n } for { K , . . . , K n } if there are g i ∈ G i such that for all i , ω | K i = g i | K i . We will denote the set of such extensions by extn ( K i , G i ) . The definition says that any particular extension x ∈ extn ( K i , G i ) must simultaneouslyextend elements of all of the individual groups G i , when those groups act on the varioussubsets K i .As an example, suppose that K = { a, b } and K = {¬ a, e } , with G = Sym { b, c, d } and G = h ( ed ) i . A permutation is an extension of the G i for K i if and only if, when restrictedto { a, b } it is a member of Sym( b, c, d ) and, when restricted to { a, e } it is a member of h ( ed ) i . In other words, b can be mapped to b , c or d , and e can be mapped to d if desired.The set of extensions is thus { () , ( bc ) , ( bd ) , ( bcd ) , ( bdc ) , ( cd ) , ( ed ) , ( edc ) , ( bc )( de ) } (22)Note that this set is not a group because it is not closed under the group operations; ( edc )is permitted ( e is mapped to d and we don’t care where d and c go), but ( edc ) = ( ecd ) isnot.Considered in the context of resolution, suppose that we are trying to resolve aug-mented clauses ( c , G ) and ( c , G ). At some level, any result ( resolve ( c , c ) , G ) forwhich G ⊆ extn ( c i , G i ) should be a legal resolvent of the original clauses, since each in-stance is sanctioned by resolving instances of the originals. We can’t define the resolventto be ( resolve ( c , c ) , extn ( c i , G i )) because, as we have seen from our example, neither extn ( c i , G i ) nor extn ( c i , G i ) ∩ W n need be a group. (We also know this from Proposi-tion 5.3; there may be no single group that captures all of the possible resolvents.) But wecan’t simply require that the augmented resolvent ( c, G ) have G ⊆ extn ( c i , G i ), becausethere is no obvious polynomial test for inclusion of a group in a set. To overcome these difficulties, we need a version of Definition 5.6 that produces a group of extensions, as opposed to just a set:
Definition 5.7
For K , . . . , K n ⊆ L and G , . . . , G n ≤ Sym( L ) , we will say that a per-mutation ω ∈ Sym( L ) is a stable extension of { G , . . . , G n } for { K , . . . , K n } if there are g i ∈ G i such that for all i , ω | K Gii = g i | K Gii . We will denote the set of stable extensions of { G , . . . , G n } for { K , . . . , K n } by stab ( K i , G i ) .
11. We can’t write G ≤ extn ( c i , G i ) because extn ( c i , G i ) may not be a group.12. It is possible to test in polynomial time if G ≤ H , since we can simply test each generator of G formembership in H . But if H is not closed under the group operation, the fact that the generators are allin H is not sufficient to conclude that G ⊆ H . ixon, Ginsberg, Luks & Parkes This definition is modified from Definition 5.6 only in that the restriction of ω is not justto the original sets K i for each i , but to K G i i , the G i -closure of K i (recall Definition 3.8).In our example where K = { a, b } and K = {¬ a, e } , with G = Sym { b, c, d } and G = h ( ed ) i , a stable extension must be a member of Sym( b, c, d ) when restricted to { a, b, c, d } (the G -closure of K ), and must be a member of h ( ed ) i when restricted to { d, e } . Thismeans that we do care where a candidate permutation maps c and d , so that the set ofstable extensions, instead of (22), is instead simply { () , ( bc ) } = h ( bc ) i . The fact that d hasto be mapped to b , c , or d by virtue of G and has to be mapped to either d or e by virtueof G means that d has to be fixed by any permutation in stab ( K i , G i ), which is why theresulting set of stable extensions is so small.In general, we have: Proposition 5.8 stab ( K i , G i ) ≤ Sym( L ) . In other words, stab ( K i , G i ) is a subgroup of Sym( L ).At this point, we still need to deal with the monotonicity condition (3) of Definition 5.4.After all, if we have ( c, G ) | = ( c ′ , G ′ )we should also have resolve (( c, G ) , ( d, H )) | = resolve (( c ′ , G ′ ) , ( d, H ))To see why this is an issue, suppose that we are resolving( a ∨ b, Sym { b, c, d } ) (23)with ( ¬ a ∨ e, ( ed )) (24)Because the groups both act on d , we have already seen that if we take the group of stableextensions as the group in the resolvent, we will conclude ( b ∨ e, ( bc )). But if we replace(24) with ( ¬ a ∨ e, ) before resolving, the result is the stronger ( b ∨ e, Sym { b, c, d } ). If wereplace (23) with ( a ∨ b, ( bc )), the result is the different but also stronger ( b ∨ e, h ( bc ) , ( de ) i )The monotonicity considerations suggest: Definition 5.9
Suppose that ( c , G ) and ( c , G ) are augmented clauses where c and c resolve in the conventional sense. Then a resolvent of ( c , G ) and ( c , G ) is any aug-mented clause of the form ( resolve ( c , c ) , G ) where G ≤ stab ( c i , H i ) ∩ W n for some H i ≤ G i for i = 1 , . The canonical resolvent of ( c , G ) and ( c , G ) , to be denoted by resolve (( c , G ) , ( c , G )) , is the augmented clause ( resolve ( c , c ) , stab ( c i , G i ) ∩ W n ) . Proposition 5.10
Definition 5.9 of (noncanonical) resolution is satisfactory. The def-inition of canonical resolution satisfies all of the conditions of Definition 5.4 except formonotonicity.
AP 2: Theory
Before proceeding, let us consider the example that preceded Definition 5.9 in a bit moredetail. There, we were looking for augmented resolvents of ( a ∨ b, Sym { b, c, d } ) from (23)and ( ¬ a ∨ e, ( ed )) from (24).To find such a resolvent, we begin by selecting H ≤ G = Sym { b, c, d } and H ≤ G = h ( ed ) i . We then need to use Definition 5.7 to compute the group of stable extensions of( c , H ) and ( c , H ).If we take H and H to be the trivial group , then the group of stable extensions isalso trivial, so we see that( resolve ( a ∨ b, ¬ a ∨ e ) , ) = ( b ∨ e, )is a resolvent of (23) and (24). Other choices for H and H are more interesting.If we take H = and H = G , the stable extensions leave the first clause fixed but canmove the image of the second consistent with G . This produces the augmented resolvent( b ∨ e, ( de )).If, on the other hand, we take H = G and H = , we have to leave e fixed but canexchange b , c and d freely, and we get ( b ∨ e, Sym { b, c, d } ) as the resolvent.If H = G and H = G , we have already computed the group of stable extensions inearlier discussions of this example; the augmented resolvent is ( b ∨ e, ( bc )), which is weakerthan the resolvent of the previous paragraph. And finally, if we take H = h ( bc ) i and H = G , we can exchange b and c or independently exchange d and e so that we get theaugmented resolvent ( b ∨ e, h ( bc ) , ( de ) i ). These choices have already been mentioned in thediscussion of monotonicity that preceded Definition 5.9.There is a variety of additional remarks to be made about Definition 5.9. First, canonical resolution lacks the monotonicity property, as shown by our earlier example. In addition, theresolvent of two augmented clauses can obviously depend on the choice of the representativeelements in addition to the choice of subgroup of stab ( c i , G i ). Thus, if we resolve( l , ( l l )) (25)with ( ¬ l , ) (26)we get a contradiction. But if we rewrite (25) so that we are attempting to resolve (26)with ( l , ( l l ))no resolution is possible at all.To address this in a version of rbl that has been lifted to our more general setting,we need to ensure that if we are trying to resolve ( c , G ) and ( c , G ), the base instances c and c themselves resolve. As we will see, this can be achieved by maintaining groundreasons for each literal in the annotated partial assignment. These ground clauses willalways resolve when a contradiction is found and the search needs to backtrack.We should also point out that there are computational issues involved in the evaluationof stab ( c i , G i ). If the component groups G and G are described by listing their elements,an incremental construction is possible where generators are gradually added until it isimpossible to extend the group further without violating Definition 5.9. But if G and G ixon, Ginsberg, Luks & Parkes are described only in terms of their generators, as suggested by the results in Section 4.3,computing stab ( c i , G i ) involves the following computational subtasks (Dixon et al., 2004a)(recall Definition 3.9):
1. Given a group G and set C , find G { C } .2. Given a group G and set C , find G C .3. Given two groups G and G described in terms of generators, find a set of generatorsfor G ∩ G .4. Given G and C , let ω ∈ G { C } . Now ω | C , the restriction of ω to C , makes sensebecause C ω = C . Given a ρ that is such a restriction, find an element ρ ′ ∈ G suchthat ρ ′ | C = ρ .We will have a great deal more to say about these issues in the paper describing the zap implementation. At this point, we remark merely that time complexity is known tobe polynomial only for the second and fourth of the above problems; the other two are notknown to be in polynomial time. However, computational group theory systems incorporateprocedures that rarely exhibit super-polynomial behavior even though one can constructexamples that force them to take exponential time (as usual, in terms of the number ofgenerators of the groups, not their absolute size).In the introduction, we claimed that the result of resolution was unique using reasonsand that zap ’s fundamental inference step was both in NP with respect to the zap repre-sentation and of low-order polynomial complexity in practice. The use of reasons breaksthe ambiguity surrounding (25) and (26), and the remarks regarding complexity correspondto the computational observations just made.
6. Examples and Proof Complexity
Let us now turn to the examples that we have discussed previously: first-order axioms thatare quantified over finite domains, along with the standard examples from proof complexity,including pigeonhole problems, clique coloring problems and parity clauses. For the first,we will see that our ideas generalize conventional notions of quantification while providingadditional representational flexibility in some cases. For the other examples, we will presenta ground axiomatization, recast it using augmented clauses, and then give a polynomiallysized derivation of unsatisfiability using augmented resolution.
To deal with lifted clauses, suppose that we have a quantified clause such as ∀ xyz.a ( x, y ) ∨ b ( y, z ) ∨ c ( z ) (27)
13. There is an additional requirement that we be able to compute stab ( c i , G i ) ∩ W n from stab ( c i , G i ).This is not an issue in practice because we work with an overall representation in which all groups arerepresented by their intersections with W n . Thus if g is included as a generator for a group G , weautomatically include in the generators for G the “dual” permutation to g where every literal has hadits sign flipped. AP 2: Theory
Suppose that the domain of x is X , that of y is Y , and that of z is Z . Thus a grounding ofthe clause (27) involves working with a map that takes three elements x ∈ X , y ∈ Y and z ∈ Z and produces the ground atoms corresponding to a ( x, y ), b ( y, z ) and c ( z ). In otherwords, if V is the set of variables in our problem, there are injections a : X × Y → Vb : Y × Z → Vc : Z → V where the images of a , b and c are disjoint and each is an injection because distinct relationinstances must be mapped to distinct ground atoms.Now given a permutation ω of the elements of X , we can define a permutation ρ X ( ω )on V given by: ρ X ( ω )( v ) = (cid:26) a ( ω ( x ) , y ) , if v = a ( x, y ); v ; otherwise.In other words, there is a mapping ρ X from the set of permutations on X to the set ofpermutations on V : ρ X : Sym( X ) → Sym( V ) Definition 6.1
Let G and H be groups and f : G → H a function between them. f will becalled a homomorphism if it respects the group operation in that f ( g g ) = f ( g ) f ( g ) . It should be clear that:
Proposition 6.2 ρ X : Sym( X ) → Sym( V ) is an injection and a homomorphism. In other words, ρ X makes a “copy” of Sym( X ) inside of Sym( V ) corresponding to permutingthe elements of x ’s domain X .In a similar way, we can define homomorphisms ρ Y and ρ Z given by ρ Y ( ω )( v ) = a ( x, ω ( y )) , if v = a ( x, y ); b ( ω ( y ) , z ) , if v = b ( y, z ); v ; otherwise.and ρ Z ( ω )( v ) = b ( y, ω ( z )) , if v = b ( y, z ); c ( ω ( z )) , if v = c ( z ); v ; otherwise.Now consider the subgroup of Sym( V ) generated by the three images ρ X (Sym( X )), ρ Y (Sym( Y )) and ρ Z (Sym( Z )). It is clear that the three images commute with one another,and that their intersection is only the trivial permutation. This means that ρ X , ρ Y and ρ Z collectively inject the product Sym( X ) × Sym( Y ) × Sym( Z ) into Sym( V ); we will denotethis by ρ XY Z : Sym( X ) × Sym( Y ) × Sym( Z ) → Sym( V )and it should be clear that the original quantified axiom (27) is equivalent to the augmentedaxiom ( a ( A, B ) ∨ b ( B, C ) ∨ c ( C ) , ρ XY Z (Sym( X ) × Sym( Y ) × Sym( Z ))) ixon, Ginsberg, Luks & Parkes where A , B and C are any (not necessarily distinct) elements of X , Y and Z , respectively.The quantification is exactly captured by the augmentation.The interesting thing is what happens to resolution in this setting: Proposition 6.3
Let p and q be quantified clauses such that there is a term t p in p and ¬ t q in q where t p and t q have common instances. Suppose also that ( p g , P ) is an augmentedclause equivalent to p and ( q g , Q ) is an augmented clause equivalent to q , where p g and q g resolve. Then if no terms in p and q except for t p and t q have common instances, the resultof resolving p and q in the conventional lifted sense is equivalent to resolve (( p g , P ) , ( q g , Q )) . Here is an example. Suppose that p is a ( A, x ) ∨ b ( C, y, z ) ∨ c ( x, y, z ) (28)and q is a ( B, x ) ∨ ¬ b ( x, D, z ) (29)so that the most general unifier of the two appearances of b binds x to C in (29) and y to D in (28) to produce a ( A, x ) ∨ c ( x, D, z ) ∨ a ( B, C ) (30)In the version using augmented clauses, it is clear that if we select ground instances p g of(29) and q g of (28) that resolve, the resolvent will be a ground instance of (30); the interestingpart is the group. For this, note simply that the image of p g is the entire embedding ofSym( X ) × Sym( Y ) × Sym( Z ) into Sym( L ) corresponding to the lifted axiom (28), and theimage of q g is similarly the embedded image of Sym( X ) × Sym( Z ) corresponding to (29).The group of stable extensions of the two embeddings corresponds to any bindings forthe variables in (28) and (29) that can be extended to a permutation of all of the variables inquestion; in other words, to bindings that (a) are consistent in that common ground literalsin the two expressions are mapped to the same ground literal by both sets of bindings, and(b) are disjoint in that we do not attempt to map two quantified literals to the same groundinstance. This latter condition is guaranteed by the conditions of the proposition, whichrequire that the non-resolving literals have no common ground instances. In this particularexample, if we choose the instances a ( A, α ) ∨ b ( C, D, β ) ∨ c ( α, D, β )for (28) and a ( B, C ) ∨ ¬ b ( C, D, β )for (29), the resulting augmented clause is( a ( A, α ) ∨ c ( α, D, β ) ∨ a ( B, C ) , G ) (31)where G is the group mapping Sym( X ) × Sym( Z ) into Sym( L ) so that (31) corresponds tothe quantified clause (30).The condition requiring lack of commonality of ground instances is necessary; considerresolving a ( x ) ∨ b AP 2: Theory with a ( y ) ∨ ¬ b In the quantified case, we get ∀ xy.a ( x ) ∨ a ( y ) (32)In the augmented case, it is not hard to see that if we resolve ( a ( A ) ∨ b, G ) with ( a ( A ) ∨¬ b, G )we get ( a ( A ) , G )corresponding to ∀ x.a ( x ) (33)while if we choose to resolve ( a ( A ) ∨ b, G ) with ( a ( B ) ∨ ¬ b, G ), we get instead ∀ x = y.a ( x ) ∨ a ( y )It is not clear which of these representations is superior. The conventional (32) is morecompact, but obscures the fact that the stronger (33) is entailed as well. This particularexample is simple, but other examples involving longer clauses and some residual unboundvariables can be more complex. We conclude this section with a demonstration that zap can produce polynomial proofs ofthe problem instances appearing in the original table of the introduction.
Of the examples known to be exponentially difficult for conventional resolution-based sys-tems, pigeonhole problems are in many ways the simplest. As usual, we will denote by p ij the fact that pigeon i (of n + 1) is in hole j of n , so that there are n + n variables inthe problem. We denote by G the subgroup of W n + n that allows arbitrary exchanges ofthe n + 1 pigeons or the n holes, so that G is isomorphic to S n +1 × S n . This particularexample is straightforward because there is a single global group that we will be able to usethroughout the analysis.Our axiomatization is now: ( ¬ p ∨ ¬ p , G ) (34)saying that no two pigeons can be in the same hole, and( p ∨ · · · ∨ p n , G ) (35)saying that the first (and thus every) pigeon has to be in some hole. Proposition 6.4
There is an augmented resolution proof of polynomial size of the mutualunsatisfiability of (34) and (35).
Proof.
This is a consequence of the stronger Proposition 6.5 below, but we also present anindependent proof in the appendix. The ideas in the proof are needed in the analysis of theclique-coloring problem. ixon, Ginsberg, Luks & Parkes
Proposition 6.5
Any implementation of Procedure 2.8 that branches on positive literalsin unsatisfied clauses on line 12 will produce a proof of polynomial size of the mutual un-satisfiability of (34) and (35), independent of specific branching choices made.
This strikes us as a remarkable result: Not only is it possible to find a proof of polynomiallength in the augmented framework, but in the presence of unit propagation, it is difficultnot to!A careful proof of this result is in the appendix, but it will be useful to examine in detailhow a prover might proceed in a small (four pigeon, three hole) example.We begin by branching on (say) p , saying that pigeon one is in hole one. Now unitpropagation allows us to conclude immediately that no other pigeon is in hole one, so ourannotated partial assignment is: literal reason p true ¬ p ¬ p ∨ ¬ p ¬ p ¬ p ∨ ¬ p ¬ p ¬ p ∨ ¬ p Now we try putting pigeon two in hole two, and extend the above partial assignmentwith: literal reason p true ¬ p ¬ p ∨ ¬ p ¬ p ¬ p ∨ ¬ p ¬ p ¬ p ∨ ¬ p At this point, however, we are forced to put pigeons three and four in hole three, whichleads to a contradiction ⊥ : literal reason p p ∨ p ∨ p p p ∨ p ∨ p ⊥ ¬ p ∨ ¬ p Resolving the last two reasons produces ¬ p ∨ p ∨ p , which we can resolve with thereason for p to get p ∨ p ∨ p ∨ p . Continuing to backtrack produces p ∨ ¬ p ∨ p .Operating on the clause p ∨ ¬ p ∨ p with the usual symmetry group (swapping hole2 and hole 3) produces p ∨ ¬ p ∨ p , and now there is nowhere for pigeon two to go. Weresolve these two clauses with p ∨ p ∨ p to get p ∨ p ∨ p , and thus ¬ p . Thisimplies ¬ p ij for all i and j under the usual symmetry, and we conclude that the originalaxiomatization was unsatisfiable.
14. We cannot conclude that pigeon two is in hole two “by symmetry” from the existing choice that pigeonone is in hole one, of course. The symmetry group can only be applied to the original clauses and toderived nogoods, not to branch choices. Alternatively, the branch choice corresponds to the augmentedclause ( p , ) and not ( p , G ). AP 2: Theory
The pigeonhole problem is difficult for resolution but easy for many other proof systems;clique coloring problems are difficult for both resolution and other approaches such aspseudo-Boolean axiomatizations (Pudlak, 1997).Clique coloring problems are derivatives of pigeonhole problems where the exact natureof the pigeonhole problem is obscured. Somewhat more specifically, they say that a graphincludes a clique of n + 1 nodes (where every node in the clique is connected to every other),and that the graph must be colored in n colors. If the graph itself is known to be a clique,the problem is equivalent to the pigeonhole problem. But if we know only that the cliquecan be embedded into the graph, the problem is more difficult.To formalize this, we will use e ij to describe the graph, c ij to describe the coloring ofthe graph, and q ij to describe the embedding of the clique into the graph. The graph has m nodes, the clique is of size n + 1, and there are n colors available. The axiomatization is: ¬ e ij ∨ ¬ c il ∨ ¬ c jl for 1 ≤ i < j ≤ m , l = 1 , . . . , n (36) c i ∨ · · · ∨ c in for i = 1 , . . . , m (37) q i ∨ · · · ∨ q im for i = 1 , . . . , n + 1 (38) ¬ q ij ∨ ¬ q kj for 1 ≤ i < k ≤ n + 1, j = 1 , . . . , m (39) e ij ∨ ¬ q ki ∨ ¬ q lj for 1 ≤ i < j ≤ m , 1 ≤ k = l ≤ n + 1 (40)Here e ij means that there is an edge between graph nodes i and j , c ij means that graphnode i is colored with the j th color, and q ij means that the i th element of the clique ismapped to graph node j . Thus the first axiom (36) says that two of the m nodes in thegraph cannot be the same color (of the n colors available) if they are connected by an edge.(37) says that every graph node has a color. (38) says that every element of the cliqueappears in the graph, and (39) says that no two elements of the clique map to the samenode in the graph. Finally, (40) says that the clique is indeed a clique – no two cliqueelements can map to disconnected nodes in the graph. As in the pigeonhole problems, thereis a global symmetry in this problem in that any two nodes, clique elements or colors canbe swapped. Proposition 6.6
There is an augmented resolution proof of polynomial size of the unsat-isfiability of (36)–(40).
The proof in the appendix presents a zap proof of size O ( m n ) for clique-coloringproblems, where m is the size of the graph and n is the size of the clique. The zap implementation produces shorter proofs, of size O (( m + n ) ) (Dixon et al., 2004a). Whileshort, these proofs involve the derivation and manipulation of subtle clauses and are toocomplex for us to understand. Before we move on to parity clauses, note that the approach we are proposing is properlystronger than one based on ”symmetry-breaking” axioms (Crawford, Ginsberg, Luks, &Roy, 1996) or the approaches taken by Krishnamurthy (1985) or Szeider (2003). In the
15. It is not clear whether one should conclude from this something good about zap , or something bad aboutthe authors. Perhaps both. ixon, Ginsberg, Luks & Parkes symmetry-breaking approach, the original axiom set is modified so that as soon as a singlesymmetric instance is falsified, so are all of that instance’s symmetric variants. Both we andthe other authors (Krishnamurthy, 1985; Szeider, 2003) achieve a similar effect by attachinga symmetry to the conclusion; either way, all symmetric instances are removed as soon asit is possible to disprove any. Unlike all of these other authors, however, an approach basedon augmented clauses is capable of exploiting local symmetries present in a subset of theentire axiom set. The other authors require the presence of a global symmetry across theentire structure of the problem.
Rather than discuss a specific example here, we show that determining the satisfiability ofany set of parity clauses is in P for augmented resolution. The proof of this is modeled ona proof that satisfiability of parity clauses is in P : Lemma 6.7
Let C be a theory consisting entirely of parity clauses. Then determiningwhether or not C is satisfiable is in P . As discussed in the introduction, the proof is basically a Gaussian reduction argument.
Definition 6.8
Let S be a subset of a set of n variables. We will say that a permutation ω flips a variable v if ω ( v ) = ¬ v , and will denote by F S that subset of W n consisting of allpermutations that leave the variable order unchanged and flip an even number of variablesin S . Lemma 6.9 F S ≤ W n . We now have the following:
Lemma 6.10
Let S = { x , . . . , x k } be a subset of a set of n variables. Then the parityclause X x i ≡ is equivalent to the augmented clause ( x ∨ · · · ∨ x k , F S ) The parity clause X x i ≡ is equivalent to the augmented clause ( ¬ x ∨ x ∨ · · · ∨ x k , F S )We can finally show: Proposition 6.11
Let C be a theory consisting entirely of parity clauses. Then determiningwhether or not C is satisfiable is in P for augmented resolution. AP 2: Theory
We note in passing that the construction in this section fails in the case of modularityclauses with a base other than 2. One of the (many) problems is that the set of permutationsthat flip a set of variables of size congruent to m (mod n ) is not a group unless m = 0 and n <
3. We need m = 0 for the identity to be included, and since both( x , ¬ x ) · · · ( x n , ¬ x n )and ( x , ¬ x ) · · · ( x n +1 , ¬ x n +1 )are included, it follows that ( x , ¬ x )( x n +1 , ¬ x n +1 )must be included, so that n = 1 or n = 2.It is not clear whether this is coincidence, or whether there is a deep connection betweenthe fact that mod 2 clauses can be expressed compactly using augmented clauses and arealso solvable in polynomial time.
7. Theoretical and Procedural Description
In addition to resolution, an examination of Procedures 2.8 and 2.6 shows that we need to beable to eliminate nogoods when they are irrelevant and to identify instances of augmentedclauses that are unit. Let us now discuss each of these issues.The problems around irrelevance are easier to deal with. In the ground case, we removeclauses when they are no longer relevant; in the augmented version, we remove clausesthat no longer possess relevant instances. We will defer until the final paper in this seriesdiscussion of a procedure for determining whether ( c, G ) has a relevant instance.We will also defer discussion of a specific procedure for computing unit-propagate ( P ),but do include a few theoretical comments at this point. In unit propagation, we have apartial assignment P and need to determine which instances of axioms in C are unit. Todo this, suppose that we denote by S ( P ) the set of Satisfied literals in the theory, and by U ( P ) the set of Unvalued literals. Now for a particular augmented clause ( c, G ), we arelooking for those g ∈ G such that c g ∩ S ( P ) = Ø and | c g ∩ U ( P ) | ≤
1. The first conditionsays that c g has no satisfied literals; the second, that it has at most one unvalued literal. Procedure 7.1 (Unit propagation)
To compute
Unit-Propagate ( C, P ) for a set C ofaugmented clauses and an annotated partial assignment P = h ( l , c ) , . . . , ( l n , c n ) i : while there is a ( c, G ) ∈ C and g ∈ G with c g ∩ S ( P ) = Ø and | c g ∩ U ( P ) | ≤ do if c g ∩ U ( P ) = Ø3 then l i ← the literal in c g with the highest index in P return h true , resolve (( c, G ) , c i ) i else l ← the literal in c g unassigned by P l, ( c g , G )) to P return h false , P i ixon, Ginsberg, Luks & Parkes Note that the addition made to P when adding a new literal includes both c g , the instanceof the clause that led to the propagation, and the augmenting group as usual. We can use( c g , G ) as the augmented clause by virtue of Proposition 4.7.Finally, the augmented version of Procedure 2.8 is: Procedure 7.2 (Relevance-bounded reasoning, rbl ) Let C be a sat problem, and D a set of learned nogoods. Let P be an annotated partial assignment, and k a fixed relevancebound. To compute rbl ( C, D, P ) : h x, y i ← Unit-Propagate ( C ∪ D, P )2 if x = true then ( c, G ) ← y if c is empty5 then return failure else remove successive elements from P so that c is unit7 D ← D ∪ { c } D all augmented clauses without k -relevant instances9 return rbl ( C, D, P )10 else P ← y if P is a solution to C then return P else l ← a literal not assigned a value by P return rbl ( C, h P, ( l, true ) i )Examining these two procedures, we see that we need to provide implementations of thefollowing:1. A routine that computes the group of stable extensions appearing in the definition ofaugmented resolution, needed by line 4 in the unit propagation procedure 7.1.2. A routine that finds instances of ( c, G ) for which c g ∩ S = Ø and | c g ∩ U | ≤ S and U , needed by line 1 in the unit propagation procedure 7.1.3. A routine that determines whether ( c, G ) has an instance for which poss ( c g , P ) ≤ k for some fixed k , as needed by line 8 of Procedure 7.2.All of these problems are known to be NP-complete, although we remind the reader thatwe continue to measure complexity in terms of the size of the domain and the number ofgenerators of any particular group; the number of generators is logarithmic in the numberof instances of any particular augmented clause. It is also the case that the practicalcomplexity of solving these problems appears to be low-order polynomial.Our focus in the final paper in this series will be on the development of efficient proce-dures that achieve the above goals, their incorporation into a zChaff -like prover, and anevaluation of the performance of the resulting system. AP 2: Theory
8. Conclusion
Our aim in this paper has been to give a theoretical description of a generalized represen-tation scheme for satisfiability problems. The basic building block of the approach is an“augmented clause,” a pair ( c, G ) consisting of a ground clause c and a group G of permu-tations on the literals in the theory; the intention is that the augmented clause is equivalentto the conjunction of the results of operating on c with elements of G . We argued that thestructure present in the requirement that G be a group provides a generalization of a widerange of existing notions, from quantification over finite domains to parity clauses.We went on to show that resolution could be extended to deal with augmented clauses,and gave a generalization of relevance-bounded learning in this setting (Procedures 7.1 and7.2). We also showed that the resulting proof system generalized first-order techniques whenapplied to finite domains of quantification, and could produce polynomially sized proofs ofthe pigeonhole problem, clique coloring problems, Tseitin’s graph coloring problems, andparity clauses in general.Finally, we described the specific group-theoretic problems that need to be addressed inimplementing our ideas. As discussed in the previous section, they are:1. Implementing the group operation associated with the generalization of resolution,2. Finding unit instances of an augmented clause, and3. Determining whether an augmented clause has relevant instances.We will return to these issues in the final paper in this series (Dixon et al., 2004a), whichdescribes an implementation of our ideas and its computational performance. Acknowledgments
We would like to thank the members of cirl , the technical staff of On Time Systems, PaulBeame of the University of Washington, and David Hofer of the CIS department at theUniversity of Oregon for their assistance with the ideas in this series of papers. We alsothank the anonymous reviewers for their comments, which improved the exposition greatly.This work was sponsored in part by grants from Air Force Office of Scientific Research( afosr ) number F49620-92-J-0384, the Air Force Research Laboratory ( afrl ) numberF30602-97-0294, Small Business Technology Transfer Research, Advanced Technology In-stitute ( sttr-ati ) number 20000766, Office of Naval Research ( onr ) number N00014-00-C-0233, the National Science Foundation ( nsf ) under grant number CCR9820945, and the De-fense Advanced Research Projects Agency ( darpa ) and the Air Force Research Laboratory,Rome, NY, under agreements numbered F30602-95-1-0023, F30602-97-1-0294, F30602-98-2-0181, F30602-00-2-0534, and F33615-02-C-4032. The views expressed are those of theauthors.
Appendix A. Proofs
Proposition 2.7
Suppose that C is a Boolean satisfiability problem, and P is a soundannotated partial assignment. Then: ixon, Ginsberg, Luks & Parkes
1. If unit-propagate ( P ) = h false , P ′ i , then P ′ is a sound extension of P , and2. If unit-propagate ( P ) = h true , c i , then c is a nogood for P . Proof.
In the first case, we need to show that any extension of P in the procedure leaves P a sound partial assignment. In other words, when we add ( l, c ) to P , we must show that:1. C | = c ,2. l appears in c , and3. Every other literal in c is false by virtue of an assignment in P .For (1), note that c ∈ C . For (2), l is explicitly set to a literal in c . And for (3), since c ∈ poss ( C, P ), every other literal in c must be set false by P .In the second case in the proposition, C | = c because c is the result of resolving a clausein C with some reason c i , which is entailed by C by virtue of the soundness of P . To seethat c is falsified by P , note that the clause in poss − ( C, P ) is surely falsified by P , andthat every literal in the reason c i for l i is also falsified except for l i itself. It follows that theresult of resolving these two clauses will also be falsified by the assignments in P . Theorem 2.9
Rbl is sound and complete in that it will always return a solution to asatisfiable theory C and always report failure if C is unsatisfiable. Rbl also uses an amountof memory polynomial in the size of C (although exponential in the relevance bound k ). Proof.
Soundness is immediate. For completeness, note that every nogood learned elimi-nates an additional portion of the search space, and the backtrack is constrained to not goso far that the newly learned nogood is itself removed as irrelevant.For the last claim, we extend Definition 2.3 somewhat, defining a reason for a literal l tobe any learned clause involving l where l was the most recently valued literal at the pointthat the clause was learned. We will now show that for any literal l , there are never morethan (2 n ) k reasons for l , where n is the number of variables in the problem.To see this, let R be the set of reasons for l at some point. Let r be any reason in thisset; between the time that r ∈ R was learned and the current point, at most k literals in r could have been unassigned by the then-current partial assignment. It follows that thereis some fixed partial assignment P ′ that holds throughout the “life” of each r ∈ R andsuch that each r has at most k literals unassigned values by P ′ . Let S be the set of literalsassigned values by P ′ .Given a reason r i ∈ R , we will view r i simply as the set of literals that it contains, sothat r i − S is the set of literals appearing in r i but outside of the stable partial assignment P ′ . Now if r j was learned before r i , some literal l i ∈ r i − S must not be in r j − S ; otherwise, r j together with the stable partial assignment P ′ would have precluded the set of variableassignments that led to the conclusion r i . In other words, r i − S is unique for each reasonin the set R .But we also know that | r i − S | ≤ k , so that each reason corresponds to choosing at most k literals from the complement of S . If there are n variables in the problem, there are most2 n literals in this set, so that the number of reasons is bounded by (2 n ) k . It follows that thetotal number of reasons learned is bounded by (2 n ) k +1 , and the conclusion follows. Theorem A.1 (Lagrange) If G is a finite group and S ≤ G , then | S | divides | G | . AP 2: Theory
Proposition 4.3
Let S be a set of ground clauses, and ( c, G ) an equivalent augmentedclause, where G is represented by generators. It is possible in polynomial time to find a setof generators { ω , . . . , ω k } where k ≤ log | G | and G = h ω , . . . , ω k i . Proof.
Even the simplest approach suffices. If G = h g i i , checking to see if g i ∈ h ω , . . . , ω j i for each generator g i can be performed in polynomial time using a well-known method ofSims (Dixon et al., 2004a; Luks, 1993; Seress, 2003); if g i is already in the generated set wedo nothing and otherwise we add it as a new generator. By virtue of Lagrange’s theorem,a subgroup can never be larger than half the size of a group that properly contains it, soadding a new generator to the set of ω i ’s always at least doubles the size of the generatedset. It follows that the number of generators needed can never exceed log | G | . Proposition 4.7
Let ( c, G ) be an augmented clause. Then if c ′ is any instance of ( c, G ) , ( c, G ) ≡ ( c ′ , G ) . Proof.
Since c ′ is an instance of ( c, G ), we must have c ′ = c g for some g ∈ G . Thus theinstances of ( c ′ , G ) are clauses of the form c ′ g ′ = c gg ′ . But c gg ′ = c g ′′ for g ′′ = gg ′ ∈ G .Similarly, an instance of ( c, G ) is a clause of the form c g ′ = c ′ g − g ′ = c ′ g ′′ . Definition A.2
Let G ≤ Sym( S ) . We will say that G acts transitively on S if, for any x, y ∈ S , there is a g ∈ G with x g = y . Proposition 4.8
Let ( c, G ) be an augmented clause with d distinct instances. Then thereis a subgroup H ≤ G that can be described using O (log ( d )) generators such that ( c, H ) ≡ ( c, G ) . Furthermore, given d and generators for G , there is a Monte Carlo polynomial-timealgorithm for constructing the generators of such an H . Proof.
The basic ideas in the proof follow methods introduced by Babai, Luks and Ser-ess (1997). The proof of this particular result is a bit more involved than the others in thispaper, and following it is likely to require an existing familiarity with group theory.Let D be the set of instances of ( c, G ), so that G acts transitively on D . Now considera sequence g , g , . . . of uniformly distributed random elements of G and, for each r ≥ H r = h g , g , . . . , g r i (in particular, H = h Ø i = ). Suppose that H r − does not acttransitively on D and let K be any orbit of H r − in D . Since G { K } is a proper subgroupof G , Lagrange’s theorem implies that the probability that g r ∈ G { K } is ≤ . Hence, theprobability that H r enlarges this K is ≥ . On average then, at least of the orbits will beenlarged in passing from H r − to H r . Since the orbits partition the entire set D , an orbitcan only be enlarged if it is merged with one or more other orbits. Thus the fact that atleast half of the orbits are enlarged implies that the total number of such orbits is reducedby at least . Thus for each r , the expected number of orbits of H r in D is ≤ d (3 / r . As aconsequence, with high probability, there exists r = O (log d ) such that H r acts transitivelyon D . (The probability of failure can be kept below ǫ for any fixed ǫ > G . These are available at a cost O ( v ) perelement, given the standard data structures for permutation group computation (Seress,2003).
16. The reason that we only have a Monte Carlo method is that there is no known deterministic polynomialtime test for testing whether H ≤ G acts transitively on D ; note that D may be exponential in thenumber of variables in the problem. ixon, Ginsberg, Luks & Parkes Proposition 5.1
For ground clauses c and c and a permutation ω ∈ W n , resolve ( ω ( c ) , ω ( c )) = ω ( resolve ( c , c )) Proof.
Suppose that the literal being resolved on is l , so that if we think of c and c asbeing represented simply by the literals they contain, the resolvent corresponds to c ∪ c − { l, ¬ l } Permuting with ω gives us ω ( c ) ∪ ω ( c ) − { ω ( l ) , ω ( ¬ l ) } = ω ( c ) ∪ ω ( c ) − { ω ( l ) , ¬ ω ( l ) } (41)where the equality is a consequence of the fact that the permutation in question is a memberof W n instead of simply S n . The right hand side of (41) is simply resolve ( ω ( c ) , ω ( c )). Proposition 5.3
There are augmented clauses c and c such that the set S of resolventsof instances of the two clauses does not correspond to any single augmented clause ( c, G ) . Proof.
Consider resolving the augmented clause c = ( a ∨ b, ( bc ))with the two instances a ∨ b and a ∨ c , with the augmented clause c = ( ¬ a ∨ d, ( dc ))corresponding to ¬ a ∨ d and ¬ a ∨ c . The ground clauses that can be obtained by resolvinginstances of c and of c are b ∨ d , b ∨ c , c ∨ b , and c . Since these clauses are not of uniformlength, they are not instances of a single augmented clause. Proposition 5.8 stab ( K i , G i ) ≤ Sym( L ) . Proof.
Suppose we have ω , ω ∈ stab ( K i , G i ). Now for some fixed i and g ∈ G i , ω | K Gii = g | K Gii and similarly for ω and some g . But now for any x ∈ K G i i , x ω ω = x g ω = x g g so that ω ω ∈ stab ( K i , G i ). The first equality holds by virtue of the definition of a stableextension, and the second holds because x g is necessarily in the G i -closure of K i . Inversionis similar. Definition 5.4
A definition of augmented resolution will be called satisfactory if any resol-vent ( c, G ) of ( c , G ) and ( c , G ) satisfies the following conditions:1. It is sound , in that ( c , G ) ∧ ( c , G ) | = ( c, G ) . Note also that the algorithm explicitly requires that we know d in advance. This is necessarysince the quantity is not known to be computable in polynomial time. However, there are methods forcomputing d that seem to be efficient in practice. AP 2: Theory
2. It is complete , in that resolve ( c , c ) is an instance of ( c, G ) .3. It is monotonic , in that if G ≤ H and G ≤ H , then ( c, G ) is also a resolvent of ( c , H ) and ( c , H ) .4. It is polynomial , in that it is possible to confirm that ( c, G ) is a resolvent of ( c , G ) and ( c , G ) in polynomial time.5. It is stable , in that if c G = c G , then ( resolve ( c , c ) , G ) is a resolvent of ( c , G ) and ( c , G )
6. It is strong , in that if no element of c G is moved by G and similarly no elementof c G is moved by G , then ( resolve ( c , c ) , h G , G i ) is a resolvent of ( c , G ) and ( c , G ) . Proposition 5.10
Definition 5.9 of (noncanonical) resolution is satisfactory. The def-inition of canonical resolution satisfies all of the conditions of Definition 5.4 except formonotonicity.
Proof.
We deal with the conditions of the definition one at a time.
1. Soundness
Any instance of ( c, G ) must be of the form ω ( resolve ( c , c )))for some ω that simultaneously extends G acting on c and G acting on c . But byProposition 5.1, this is just resolve ( ω ( c ) , ω ( c ))The first of these clauses is an instance of ( c , G ), and the second is an instance of ( c , G ),so the proposition follows from the soundness of resolution.
2. Completeness resolve ( c , c ) is an instance of ( c, G ) because c = resolve ( c , c )and 1 ∈ G .
3. Monotonicity
If ( c, G ) is a resolvent of ( c , H ) and ( c , H ), then G = stab ( c i , K i )where K i ≤ H i . But since H i ≤ G i , it follows that K i ≤ G i and ( c, G ) is a resolvent of( c , G ) and ( c , G ) as well.
4. Polytime checking
We assume that we are provided with the intermediate groups H and H , so that we must simply check that G ≤ stab ( c i , H i ). Since stab ( c i , H i ) is a groupby virtue of Proposition 5.8, it suffices to check that each generator of G is in stab ( c i , H i ).But this is straightforward. Given a generator g , we need simply check that restricting g to c G i i , the image of c i under G i , produces a permutation that is the restriction of an elementof G i . As we remarked in proving Proposition 4.3, this test is known to be in P.
5. Stability
It is clear that ( resolve ( c , c ) , G ) is a resolvent of ( c , G ) and ( c , G ), sinceevery element of G is clearly a stable extension of ( c , G ) and ( c , G ).We need the additional condition that c G = c G to show that ( resolve ( c , c ) , G ) is the canonical resolvent; there is no explicit requirement that the group of stable extensionsof ( c , G ) and ( c , G ) be a subgroup of G . But if c G = c G , the stable extensions must ixon, Ginsberg, Luks & Parkes agree with elements of G on c G = c G , and hence must agree with elements of G on c and c themselves, and therefore on resolve ( c , c ) as well. Thus the canonical resolvent isequivalent to ( resolve ( c , c ) , G ).
6. Strength
It is clear that the group of stable extensions can never be bigger than h G , G i , since every permutation that either agrees with c on G and with c on G iscontained in this group. But if g = Q g i is an element of h G , G i , with g i ∈ G for i oddand g i ∈ G for i even, then c g = c ( Q i odd g i )1 = c g ′ for g ′ = Q i odd g i ∈ G . The ( c , G ) caseis similar, so ( resolve ( c , c ) , h G , G i ) is the canonical resolvent of ( c , G ) and ( c , G ). Proposition 6.3
Let p and q be quantified clauses such that there is a term t p in p and ¬ t q in q where t p and t q have common instances. Suppose also that ( p g , P ) is an augmented clauseequivalent to p and ( q g , Q ) is an augmented clause equivalent to q , where p g and q g resolve.Then if no terms in p and q except for t p and t q have common instances , the result ofresolving p and q in the conventional lifted sense is equivalent to resolve (( p g , P ) , ( q g , Q )) . Proof.
The proof is already contained in the discussion surrounding the example in themain text. The base instance of the augmented resolvent is clearly an instance of thequantified resolution; for the group, we have already remarked that the group of stableextensions of the two embeddings corresponds simply to any bindings for the variables inthe resolvents that can be extended to a permutation of all of the variables in question. Thismeans that the bindings must be consistent with regard to the values selected for sharedterms, and no two distinct quantified literals are mapped to identical ground atoms. Thelatter condition follows from the assumption that the non-resolving literals have no commonground instances.
Proposition 6.4
There is an augmented resolution proof of polynomial size of the mutualunsatisfiability of (34) and (35).
Proof.
We begin by explaining how the proof goes generally, and only subsequently providethe details. From the fact that the first pigeon has to be in one of the n holes, we canconclude that one of the first two pigeons must be in one of the last n − n − n pigeonsmust be in the last hole. Similarly, one of the first n pigeons must be in each hole, leavingno hole for the final pigeon.To formalize this, we will write A k for the fact that one of the first k pigeons must bein one of the last n + 1 − k holes: A k ≡ _ ≤ i ≤ kk ≤ j ≤ n p ij Our basic strategy for the proof will be to show that if we denote the original axioms (34)and (35) by
P HP : P HP ⊢ A ,2. P HP ∧ A k ⊢ A k +1 ,
17. Our notation here is vaguely similar to that used by Krishnamurthy (1985), although the both problembeing solved and the techniques used are different.
AP 2: Theory P HP ∧ A n ⊢ ⊥ , where ⊥ denotes a contradiction.In addition, since the same group G appears throughout the original axiomatization, wewill drop it from the derivation, but will feel free to resolve against c g for any g ∈ G andderived conclusion c .For the first claim, note that A is given by _ ≤ j ≤ n p j which is an instance of (35).For the second, we have A k , which is _ ≤ i ≤ kk ≤ j ≤ n p ij and we need to remove all of the variables p jk that refer to the k th hole. To do this, weresolve the above clause with each of ¬ p k ∨ ¬ p k +1 ,k ¬ p k ∨ ¬ p k +1 ,k ... ¬ p kk ∨ ¬ p k +1 ,k to get ¬ p k +1 ,k ∨ _ ≤ i ≤ kk +1 ≤ j ≤ n p ij Now note that the only holes mentioned in the disjunction on the right of the aboveexpression are the k + 1st and higher, so that we can apply the group G to conclude ¬ p k +1 ,m ∨ _ ≤ i ≤ kk +1 ≤ j ≤ n p ij for any 1 ≤ m ≤ k . Now if we resolve each of these with the instance of (35) given by p k +1 , ∨ · · · ∨ p k +1 ,n we get _ k +1 ≤ j ≤ n p k +1 ,j ∨ _ ≤ i ≤ kk +1 ≤ j ≤ n p ij which is to say _ ≤ i ≤ k +1 k +1 ≤ j ≤ n p ij or A k +1 . ixon, Ginsberg, Luks & Parkes Finally, we need to derive a contradiction from A n , which is to say _ ≤ i ≤ n p in Resolving with each of ¬ p n ∨ ¬ p n +1 ,n ¬ p n ∨ ¬ p n +1 ,n ... ¬ p nn ∨ ¬ p n +1 ,n now gives ¬ p n +1 ,n , and we can thus conclude ¬ p ij for any i and j by acting with the group G . Resolving into any instance of (35) now gives the desired contradiction. Lemma A.3
Assuming that we only branch on positive literals in unsatisfied clauses, let p jk be any of the first n − branch decisions in solving the pigeonhole problem. The set ofunit propagations that result from this branch decision is exactly the set S k = {¬ p ik | i = j } . Proof.
We prove this by induction on the number of branch decisions. For the base case,we take n ≥ p jk . For each ¬ p ik ∈ S k there isan instance of (35) of the form ¬ p jk ∨ ¬ p ik that causes the unit propagation ¬ p ik . Noother instances of (35) contain literals that refer to hole k , so (35) produces no further unitpropagations. Each instance of (34) has a total of n literals with at most one literal thatrefers hole k . Because n ≥
3, each instance must have at least two unvalued literals andtherefore does not generate a unit propagation.For the inductive case, we assume that Lemma A.3 holds for the first m branches with m < n −
2. Under this assumption, each branch decision p jk and its subsequent unitpropagations value exactly the variables involving hole k . We can therefore make the sameargument as we did in the base case. Let p jk be the m + 1 st branch decision. Clause (35)produces exactly the set S k = {¬ p ik | i = j } via unit propagation, and because m +1 ≤ n − Lemma A.4
Let P = { l , l , . . . , l m } be a partial assignment obtained in solving the pigeon-hole problem, where every branch decision is on a positive literal in an unsatisfied clause.For every branch decision l i in P , the subproblem below the open branch { l , l , . . . , l i − , ¬ l i } can be solved by unit propagation. Proof.
Assume we are about to begin exploring the subproblem below P = { l , l , . . . , l i , ¬ p jk } for some branch variable p jk . The subproblem below P = { l , l , . . . , l i , p jk } has alreadybeen explored, found to be unsatisfiable, and we’ve generated a nogood defining the reasonfor the failure. This nogood will be an augmented clause of the form( a ∨ · · · ∨ a m ∨ ¬ p jk , G ) (42) AP 2: Theory
The a i are unsatisfied under P = { l , l , . . . , l i } , and G is the global symmetry group forthe problem.But now recall that by virtue of Lemma A.3, each of our original branch decisionstogether with its subsequent unit propagations valued all of the variables that referred toone particular hole and no more. Consider the set of all holes referred to by the partialassignment { l , l , . . . , l i } . We will call this set H .When we branched on p jk , pigeon j had not yet been assigned to a hole. This followsfrom our assumption that we branch only on positive literals in unsatisfied clauses. Thusfor all h ∈ H , ¬ p jh ∈ P ; in other words, pigeon j was excluded from all of the holes in H prior to our decision to place it in hole k . The derived nogood (42) asserts that pigeon j cannot go in hole k either.But as in the small example worked in the main text, the nogood (42) represents morethan a single clause. It represents the set of clauses that can be generated by applyingpermutations in G to a ∨ · · · ∨ a m ∨ ¬ p jk . If we apply a permutation that swaps hole k with any hole g H , the literals a , . . . , a m will be unchanged and will remain unsatisfiedunder P = { l , l , . . . , l i } . So the clause a ∨ · · · ∨ a m ∨ ¬ p jg (43)is also an instance of (42) for any g H , and (43) is also unit under the partial assignment P . The nogood (42) thus generates a series of unit propagations indicating that pigeon j cannot be in any hole not in H . Since the holes in H are already known to be excluded,there is no hole available for pigeon j . A contradiction occurs and the subproblem below P = { l , l , . . . , l i , ¬ p jk } is closed. Proposition 6.5
Any implementation of Procedure 2.8 that branches on positive literals inunsatisfied clauses on line 12 will produce a proof of polynomial size of the mutual unsatis-fiability of (34) and (35), independent of specific branching choices made.
Proof.
Note first that any rbl search tree has size polynomial in the number of branchdecisions, since the number of variable assignments that can result from unit propagationis bounded by the number of variables. To show that the search tree has size polynomialin the number of pigeons n , it thus suffices to show that the number of branch decisions ispolynomial in n . We will show that under the given branch heuristic, the number of branchdecisions is n − n − n − st decision? Ifthis branch decision is p jk , we again generate the set of unit propagations S k = {¬ p ik | i = j } .This time we will generate some additional unit propagations. Since we have assigned n − h , the two remaining pigeons (say pigeons a and b ) are both forced into hole h , while onlyone can occupy it. This leads to the expected contradiction. But now Lemma A.4 shows ixon, Ginsberg, Luks & Parkes that no further branches are necessary, so that the total number of branches is n −
1, andthe rbl search tree is polynomially sized.
Proposition 6.6
There is an augmented resolution proof of polynomial size of the unsatis-fiability of (36)–(40).
Proof.
The proof proceeds similarly to the proof of Proposition 6.4, although the detailsare far more intricate. As before, we will work with ground axioms only and will suppressthe augmentation by the global symmetry group.The analog to p ij is that the i th node of the clique gets the j th color, or( q i ∧ c j ) ∨ · · · ∨ ( q im ∧ c mj )which we will manipulate in this form although it’s clearly not cnf .Now A , the statement that the first pigeon is in some hole, or that the first node ofthe clique gets some color, is[ q ∧ ( c ∨ · · · ∨ c n )] ∨ · · · ∨ [ q m ∧ ( c m ∨ · · · ∨ c mn )]The expression for A k , which was _ ≤ i ≤ kk ≤ j ≤ n p ij (44)similarly becomes[( q ∨ · · · ∨ q k ) ∧ ( c k ∨ · · · ∨ c n )] ∨ · · · ∨ [( q m ∨ · · · ∨ q km ) ∧ ( c mk ∨ · · · ∨ c mn )] (45)saying that for some i and j as in (44), there is an index h such that q ih ∧ c hj ; h is the indexof the graph node to which a clique element of a suitable color gets mapped.In order to work with the expressions (45), we do need to convert them into cnf .Distributing the ∧ and ∨ in (45) will produce a list of conjuncts, each of the form B ∨ · · · ∨ B m (46)where each B i is of the form either q i ∨ · · · ∨ q ki or c ik ∨ · · · ∨ c in . There are 2 m possibleexpressions of the form (46).Each of these 2 m expressions, however, is an instance of the result of acting with theglobal group G on one of the following:( c k ∨ · · · ∨ c n ) ∨ ( c k ∨ · · · ∨ c n ) ∨ · · · ∨ ( c mk ∨ · · · ∨ c mn )( q ∨ · · · ∨ q k ) ∨ ( c k ∨ · · · ∨ c n ) ∨ · · · ∨ ( c mk ∨ · · · ∨ c mn )...( q ∨ · · · ∨ q k ) ∨ ( q ∨ · · · ∨ q k ) ∨ · · · ∨ ( q m ∨ · · · ∨ q km ) (47)We will view these as all instances of a general construct indexed by h , with h giving thenumber of initial clauses based on the q ’s instead of the c ’s. So the first row corresponds to AP 2: Theory h = 0, the second to h = 1 and so on, with the last row corresponding to h = m . It followsfrom this that A k is effectively ^ ≤ h ≤ m _ ≤ i ≤ k ≤ j ≤ h q ij ∨ _ h +1 ≤ i ≤ mk ≤ j ≤ n c ij (48)It is important to realize that we haven’t actually started to prove anything yet; we’rejust setting up the machinery needed to duplicate the proof of Proposition 6.4. The onlyremaining piece is the analog in this framework of the axiom ¬ p ij ∨ ¬ p kj , saying that eachhole can only contain one pigeon. That is ¬ q ih ∨ ¬ c hj ∨ ¬ q kg ∨ ¬ c gj (49)saying that if node i of the clique is mapped to node h of the graph, and k is mapped to g ,then g and h cannot both get the same color.If g = h , we can derive (49) by resolving (36) and (40). If g = h , then (49) becomes ¬ q ih ∨ ¬ c hj ∨ ¬ q kh and is clearly a weakening of (39). Thus ¬ p ij ∨ ¬ p kj becomes the pair ofclauses ¬ q ih ∨ ¬ c hj ∨ ¬ q kg ∨ ¬ c gj ¬ q ih ∨ ¬ q kh both of which can be derived in polynomial time and are, as usual, acted on by the group G . We are finally ready to proceed with the main proof.For the base step, we must derive A , or the conjunction of _ ≤ i ≤ ≤ j ≤ h q ij ∨ _ h +1 ≤ i ≤ m ≤ j ≤ n c ij which is to say( c ∨ · · · ∨ c n ) ∨ ( c ∨ · · · ∨ c n ) ∨ · · · ∨ ( c m ∨ · · · ∨ c mn ) q ∨ ( c ∨ · · · ∨ c n ) ∨ · · · ∨ ( c m ∨ · · · ∨ c mn )... q ∨ q ∨ · · · ∨ q m Except for the last row, each of these is obviously a weakening of (37) saying that everynode in the graph gets a color. The final row is equivalent to (38) saying that each elementof the clique gets a node in the graph.For the inductive step, we must show that A k ⊢ A k +1 . Some simplifying notation willhelp, so we introduce C ij..k ≡ ( c ij ∨ · · · ∨ c ik )and Q i..jk ≡ ( q ik ∨ · · · ∨ q jk ) ixon, Ginsberg, Luks & Parkes Now A k as in (47) is actually C k..n ∨ C k..n ∨ · · · ∨ C mk..n Q ..k ∨ C k..n ∨ · · · ∨ C mk..n ... Q ..k ∨ Q ..k ∨ · · · ∨ Q ..km (50)Following the pigeonhole proof, we need to reduce the number of holes (i.e., colors) by oneand increase the number of pigeons (i.e., clique elements) by one. For the first step, we needto resolve away the appearances of c ik from (50). We claim that from (50) it is possible toderive C ,k +1 ..n ∨ C ,k +1 ..n ∨ · · · ∨ C m,k +1 ..n ∨ ¬ q k +1 ,m ∨ ¬ c mk Q ..k ∨ C ,k +1 ..n ∨ · · · ∨ C m,k +1 ..n ∨ ¬ q k +1 ,m ∨ ¬ c mk ... Q ..k ∨ Q ..k ∨ · · · ∨ Q ..km ∨ ¬ q k +1 ,m ∨ ¬ c mk (51)We show this by working from the bottom of the arrays ( h = m in the description (48)) tothe top ( h = 0). For the last row, the expression in (51) is clearly a weakening of the finalrow in (50).Suppose that we have done h = i and are now considering h = i − Q ..k ∨ · · · ∨ Q ..k,i − ∨ C i,k +1 ..n ∨ · · · ∨ C m,k +1 ..n ∨ ¬ q k +1 ,m ∨ ¬ c mk from Q ..k ∨ · · · ∨ Q ..k,i − ∨ C ik..n ∨ · · · ∨ C mk..n (52)Now recall that C jk..n is c jk ∨ · · · ∨ c jn and we want to remove the c jk term by resolving with (49), adding literals of the form ¬ q k +1 ,m ∨ ¬ c mk . The instance of (49) that we use is ¬ q k +1 ,m ∨ ¬ c mk ∨ ¬ q lj ∨ ¬ c jk and the resolvent is C j,k +1 ..n ∨ ¬ q k +1 ,m ∨ ¬ c mk ∨ ¬ q lj The result of resolving into (52) is therefore Q ..k ∨· · ·∨ Q ..k,i − ∨ C ik..n ∨· · ·∨ C j − ,k..n ∨ C j,k +1 ..n ∨ C j +1 ,k..n ∨· · ·∨ C mk..n ∨¬ q k +1 ,m ∨¬ c mk ∨¬ q lj (53) for any l and i ≤ j ≤ m .Now we have already done h = i , which means that we have derived Q ..k ∨ · · · ∨ Q ..ki ∨ C i +1 ,k +1 ..n ∨ · · · ∨ C m,k +1 ..n ∨ ¬ q k +1 ,m ∨ ¬ c mk Operating on this with the usual group allows us to exchange the q and c variables arbitrarily,so it matters not that the first i terms involve the q variables and the last m − i involve the AP 2: Theory c variables, but only that the number of terms involving q and c variables are i and m − i respectively. Thus we have also derived Q ..k ∨· · ·∨ Q ..k,i − ∨ C i,k +1 ..n ∨· · ·∨ C j − ,k +1 ..n ∨ Q ..kj ∨ C j +1 ,k +1 ..n ∨· · ·∨ C m,k +1 ..n ∨¬ q k +1 ,m ∨¬ c mk (54) (where we have essentially swapped node i and node j in (53)). By taking l = 1 , . . . , k in(53), we can resolve (54) with (53) to eliminate both the trailing ¬ q lj in (53) and the Q ..kj term above. Since the literals in C h,k +1 ..n are a subset of those in C hk..n , we get Q ..k ∨· · ·∨ Q ..k,i − ∨ C ik..n ∨· · ·∨ C j − ,k..n ∨ C j,k +1 ..n ∨ C j +1 ,k..n ∨· · ·∨ C mk..n ∨¬ q k +1 ,m ∨¬ c mk We can continue in this fashion, gradually raising the second index of each C term from k to k + 1, to finally obtain Q ..k ∨ · · · ∨ Q ..k,i − ∨ C i,k +1 ..n ∨ · · · ∨ C m,k +1 ..n ∨ ¬ q k +1 ,m ∨ ¬ c mk (55)as in (51).The hard part is now done; we have exploited the symmetry over the nodes and itremains to use the symmetry over the colors. In the derivation of (55), the color k in thefinal ¬ c mk is obviously irrelevant provided that it is chosen from the set 1 , . . . , k ; highernumbered colors (but only higher numbered colors) already appear in the C j,k +1 ..n . So wehave actually derived Q ..k ∨ · · · ∨ Q ..k,i − ∨ C i,k +1 ..n ∨ · · · ∨ C m,k +1 ..n ∨ ¬ q k +1 ,m ∨ ¬ c mk ... Q ..k ∨ · · · ∨ Q ..k,i − ∨ C i,k +1 ..n ∨ · · · ∨ C m,k +1 ..n ∨ ¬ q k +1 ,m ∨ ¬ c m Q ..k ∨ · · · ∨ Q ..k,i − ∨ C i,k +1 ..n ∨ · · · ∨ C m,k +1 ..n ∨ ¬ q k +1 ,m ∨ ¬ c m and when we resolve all of these with the domain axiom (37) c m ∨ c m ∨ · · · ∨ c mn we get Q ..k ∨ · · · ∨ Q ..k,i − ∨ C i,k +1 ..n ∨ · · · ∨ C m,k +1 ..n ∨ ¬ q k +1 ,m ∨ c m,k +1 ∨ · · · ∨ c mn which is to say Q ..k ∨ · · · ∨ Q ..k,i − ∨ C i,k +1 ..n ∨ · · · ∨ C m,k +1 ..n ∨ ¬ q k +1 ,m ∨ C m,k +1 ..n or Q ..k ∨ · · · ∨ Q ..k,i − ∨ C i,k +1 ..n ∨ · · · ∨ C m,k +1 ..n ∨ ¬ q k +1 ,m Now the m subscript in the final q variable is also of no import, provided that it remainsat least i . We can therefore resolve Q ..k ∨ · · · ∨ Q ..k,i − ∨ C i,k +1 ..n ∨ · · · ∨ C m,k +1 ..n ∨ ¬ q k +1 ,i ... Q ..k ∨ · · · ∨ Q ..k,i − ∨ C i,k +1 ..n ∨ · · · ∨ C m,k +1 ..n ∨ ¬ q k +1 ,m − Q ..k ∨ · · · ∨ Q ..k,i − ∨ C i,k +1 ..n ∨ · · · ∨ C m,k +1 ..n ∨ ¬ q k +1 ,m ixon, Ginsberg, Luks & Parkes with the domain axiom (38) q k +1 , ∨ · · · ∨ q k +1 ,m to get Q ..k ∨ · · · ∨ Q ..k,i − ∨ C i,k +1 ..n ∨ · · · ∨ C m,k +1 ..n ∨ q k +1 , ∨ · · · ∨ q k +1 ,i − which is to say Q ..k +1 , ∨ · · · ∨ Q ..k +1 ,i − ∨ C i,k +1 ..n ∨ · · · ∨ C m,k +1 ..n This is A k +1 as desired.It remains to show that we can derive a contradiction from A n . If we continue with theabove procedure in an attempt to “derive” A n +1 , when we derive an instance of (55), the C terms will simply vanish because k + 1 > n . We end up concluding Q ..k ∨ · · · ∨ Q ..k,i − ∨ ¬ q k +1 ,m ∨ ¬ c mk and the i = 0 instance is simply ¬ q k +1 ,m ∨ ¬ c mk All of the indices here are subject to the usual symmetry, so we know ¬ q ji ∨ ¬ c i ¬ q ji ∨ ¬ c i ... ¬ q ji ∨ ¬ c in which we resolve with c i ∨ · · · ∨ c in to get ¬ q ji . We can resolve instances of this with q m ∨ · · · ∨ q mn to finally get the desired contradiction. Lemma 6.7
Let C be a theory consisting entirely of parity clauses. Then determiningwhether or not C is satisfiable is in P . Proof.
The proof is essentially a Gaussian reduction argument, and proceeds by inductionon n , the number of variables in C . If n = 0, the result is immediate. So suppose that C contains n + 1 variables, and let one clause containing x be x + X x ∈ S x ≡ k where k = 0 or k = 1. This is obviously equivalent to x ≡ X x ∈ S x + k which we can now use to eliminate x from every other axiom in C in which it appears.Since the resulting theory can be tested for satisfiability in polynomial time, the resultfollows. AP 2: Theory
Lemma A.5
Suppose that we have two axioms given by x + X x ∈ S x + X x ∈ T x ≡ k (56) and x + X x ∈ S x + X x ∈ T x ≡ k (57) where the sets S , T and T are all disjoint. Then it follows that X x ∈ T x + X x ∈ T x ≡ k + k (58) and furthermore, any proof system that can derive this in polynomial time can also determinethe satisfiability of sets of parity clauses in polynomial time. Proof.
Adding (56) and (57) produces (58). That this is sufficient to solve sets of parityclauses in polynomial time is shown in the proof of Lemma 6.7.
Lemma 6.9 F S ≤ W n . Proof. F S is closed under inversion, since every element in F S is its own inverse. To seethat it is closed under composition as well, suppose that f flips the variables in a set S and f flips the variables in a set S . Then f f flips the variables in S = S ∪ S − ( S ∩ S ).But now | S | = | S ∪ S − ( S ∩ S ) | = | S ∪ S | − | S ∩ S | = | S | + | S | − | S ∩ S | − | S ∩ S | = | S | + | S | − · | S ∩ S | and is therefore even, so f f ∈ F S . Lemma 6.10
Let S = { x , . . . , x k } be a subset of a set of n variables. Then the parityclause k X i =1 x i ≡ is equivalent to the augmented clause ( x ∨ · · · ∨ x k , F S ) (60) The parity clause k X i =1 x i ≡ is equivalent to the augmented clause ( ¬ x ∨ x ∨ · · · ∨ x k , F S ) ixon, Ginsberg, Luks & Parkes Proof.
To see that (59) implies (60), note that (59) certainly implies x ∨ · · · ∨ x k . Butthe result of operating on the disjunction with any element of F S flips an even number ofelements in it, so (60) follows.For the converse, suppose that (59) fails, so that an even number of the x i ’s are true.The disjunction that flips exactly those x i ’s that are true will obviously have no satisfiedliterals, but will have flipped an even number of elements of S so that some instance of theaugmented clause (60) is unsatisfied.The second equivalence clearly follows from the first; replace x with ¬ x . Proposition 6.11
Let C be a theory consisting entirely of parity clauses. Then determiningwhether or not C is satisfiable is in P for augmented resolution. Proof.
We need to show that the conditions of Lemma A.5 are met. We can assumewithout loss of generality that k = 1 and k = 0 in the conditions of the lemma; othercases involve simply flipping the sign of one of the variables involved.In light of Lemma 6.10, we have the two augmented axioms( x ∨ _ x ∈ S x ∨ _ x ∈ T x, F x ∪ S ∪ T )and ( ¬ x ∨ _ x ∈ S x ∨ _ x ∈ T x, F x ∪ S ∪ T )where S , T , and T are all disjoint. The clause obtained in the resolution is clearly _ x ∈ S ∪ T ∪ T x but what is the group involved?The elements of the group are the stable extensions of group elements from F x ∪ S ∪ T and F x ∪ S ∪ T ; in other words, any permutation that leaves the variables unchanged andsimultaneously flips an even number of elements of x ∪ S ∪ T and of x ∪ S ∪ T . Weclaim that these are exactly those elements that flip any subset of S and an even numberof elements of T ∪ T .We first show that any stable extension g flips an even number of elements of T ∪ T (along with some arbitrary subset of S ). If g flips an odd number of elements of T ∪ T ,then it must flip an odd number of elements of one (say T ) and an even number of elementsof the other. Now if the parity of the number of flipped elements of x ∪ S is even, the totalnumber flipped in x ∪ S ∪ T will be odd, so that g does not match an element of F x ∪ S ∪ T and is therefore not an extension. If the parity of the number of flipped elements of x ∪ S is odd, the number flipped in x ∪ S ∪ T will be odd.To see that any g flipping an even number of elements of T ∪ T corresponds to a stableextension, we note simply that by flipping x or not, we can ensure that g flips an evennumber of elements in each relevant subset. Since g flips an even number of elements in T ∪ T , it flips subsets of T and of T that have the same parity. So if it flips an evennumber of elements of S ∪ T , it also flips an even number of elements of S ∪ T and we AP 2: Theory leave x unflipped. If g flips an odd number of elements of S ∪ T and of S ∪ T , we flip x .Either way, there are corresponding elements of F x ∪ S ∪ T and F x ∪ S ∪ T .Now suppose that we denote by K S the group that flips an arbitrary subset of S . Wehave shown that the result of the resolution is _ x ∈ S ∪ T ∪ T x, K S × F T ∪ T (61)Note that the resolution step itself is polytime, since we have given the result explicitlyin (61). Next, we claim that (61) implies _ x ∈ T ∪ T x, K S × F T ∪ T (62)where we have removed the elements of S from the disjunction.We prove this by induction on the size of S . If S = Ø, the result is immediate. Otherwise,if a ∈ S for some specific a , two instances of (61) are a ∨ _ x ∈ S −{ a }∪ T ∪ T x, K S × F T ∪ T and ¬ a ∨ _ x ∈ S −{ a }∪ T ∪ T x, K S × F T ∪ T which we can resolve using the stability property (5) of Definition 5.4 to conclude _ x ∈ S −{ a }∪ T ∪ T x, K S × F T ∪ T so that (62) now follows by the inductive hypothesis.At this point, however, note that the variables in S do not appear in the clause in (62),so that we can drop K S from the group in the conclusion without affecting it in any way.Thus we have concluded _ x ∈ T ∪ T x, F T ∪ T (63)Applying Lemma 6.10 once again, we see that (63) is equivalent to X x ∈ T x + X x ∈ T x ≡
18. In general, augmented resolution is not known to be polynomial in the number of generators of thegroups in question. But it is polynomial for groups of restricted form being considered here. ixon, Ginsberg, Luks & Parkes
References
Babai, L. (1986). On the length of subgroup chains in the symmetric group.
Comm. Algebra , (9), 1729–1736.Babai, L., Luks, E., & Seress, A. (1997). Fast management of permutation groups I. SIAMJ. Computing , , 1310–1342.Barth, P. (1995). A Davis-Putnam based enumeration algorithm for linear pseudo-boolean optimization. Tech. rep. MPI-I-95-2-003, Max Planck Institut f¨ur Informatik,Saarbr¨ucken, Germany.Barth, P. (1996). Logic-Based 0-1 Constraint Programming , Vol. 5 of
Operations Re-search/Computer Science Interfaces Series . Kluwer.Baumgartner, P., & Massacci, F. (2000). The Taming of the (X)OR. In Lloyd, J., Dahl,V., Furbach, U., Kerber, M., Lau, K.-K., Palamidessi, C., Pereira, L. M., Sagiv, Y.,& Stuckey, P. J. (Eds.),
Computational Logic – CL 2000 , Vol. 1861, pp. 508–522.Springer.Bayardo, R. J., & Miranker, D. P. (1996). A complexity analysis of space-bounded learningalgorithms for the constraint satisfaction problem. In
Proceedings of the ThirteenthNational Conference on Artificial Intelligence , pp. 298–304.Bayardo, R. J., & Schrag, R. C. (1997). Using CSP look-back techniques to solve real-worldSAT instances. In
Proceedings of the Fourteenth National Conference on ArtificialIntelligence , pp. 203–208.Chandru, V., & Hooker, J. N. (1999).
Optimization Mehtods for Logical Inference . Wiley-Interscience.Cook, W., Coullard, C., & Turan, G. (1987). On the complexity of cutting-plane proofs.
Discrete Applied Mathematics , , 25–38.Crawford, J. M., Ginsberg, M. L., Luks, E., & Roy, A. (1996). Symmetry breaking predicatesfor search problems. In Proceedings of the Fifth International Conference on Principlesof Knowledge Representation and Reasoning , Boston, MA.Dixon, H. E., & Ginsberg, M. L. (2000). Combining satisfiability techniques from AI andOR.
Knowledge Engrg. Rev. , , 31–45.Dixon, H. E., Ginsberg, M. L., Hofer, D., Luks, E. M., & Parkes, A. J. (2004a). GeneralizingBoolean satisfiability III: Implementation. Tech. rep., On Time Systems, Inc., Eugene,Oregon.Dixon, H. E., Ginsberg, M. L., & Parkes, A. J. (2004b). Generalizing Boolean satisfiabilityI: Background and survey of existing work. Journal of Artificial Intelligence Research , , 193–243.Ginsberg, M. L. (1993). Dynamic backtracking. Journal of Artificial Intelligence Research , , 25–46.Ginsberg, M. L., & Parkes, A. J. (2000). Search, subsearch and QPROP. In Proceedings ofthe Seventh International Conference on Principles of Knowledge Representation andReasoning , Breckenridge, Colorado.
AP 2: Theory
Guignard, M., & Spielberg, K. (1981). Logical reduction methods in zero-one programming.
Operations Research , .Haken, A. (1985). The intractability of resolution. Theoretical Computer Science , , 297–308.Harrison, M. A. (1989). Introduction to Switching and Automata Theory . McGraw-Hill.Hooker, J. N. (1988). Generalized resolution and cutting planes.
Annals of OperationsResearch , , 217–239.Jerrum, M. (1986). A compact representation for permutation groups. J. Algorithms , ,60–78.Knuth, D. E. (1991). Notes on efficient representation of permutation groups. Combinator-ica , , 57–68.Krishnamurthy, B. (1985). Short proofs for tricky formulas. Acta Informatica , (3), 253–275.Li, C. M. (2000). Integrating equivalency reasoning into Davis-Putnam procedure. In Proceedings of the Seventeenth National Conference on Artificial Intelligence , pp. 291–296.Luks, E. M. (1993).
Permutation Groups and Polynomial-Time Computation , Vol. 11 of
DIMACS Series in Discrete Mathematics and Theoretical Computer Science , pp. 139–175. Amer. Math. Soc.McIver, A., & Neumann, P. (1987). Enumerating finite groups.
Quart. J. Math. , (2),473–488.Moskewicz, M., Madigan, C., Zhao, Y., Zhang, L., & Malik, S. (2001). Chaff: Engineeringan efficient SAT solver. In .Nemhauser, G., & Wolsey, L. (1988). Integer and Combinatorial Optimization . Wiley, NewYork.Pudlak, P. (1997). Lower bounds for resolution and cutting planes proofs and monotonecomputations.
J. Symbolic Logic , (3), 981–998.Pyber, L. (1993). Enumerating finite groups of given order. Ann. Math. , , 203–220.Rotman, J. J. (1994). An Introduction to the Theory of Groups . Springer.Savelsbergh, M. W. P. (1994). Preprocessing and probing for mixed integer programmingproblems.
ORSA Journal on Computing , , 445–454.Seress, A. (2003). Permutation Group Algorithms , Vol. 152 of
Cambridge Tracts in Mathe-matics . Cambridge University Press, Cambridge, UK.Szeider, S. (2003). The complexity of resolution with generalized symmetry rules. In Alt,H., & Habib, M. (Eds.),
Proceedings of STACS03, volume 2607 of Springer LectureNotes in Computer Science , pp. 475–486.Tseitin, G. (1970). On the complexity of derivation in propositional calculus. In Slisenko,A. (Ed.),
Studies in Constructive Mathematics and Mathematical Logic, Part 2 , pp.466–483. Consultants Bureau. ixon, Ginsberg, Luks & Parkes
Zhang, H., & Stickel, M. E. (2000). Implementing the Davis-Putnam method.
Journal ofAutomated Reasoning , (1/2), 277–296.(1/2), 277–296.