Journal of Applied Mathematics and Decision Sciences
Volume 2009 (2009), Article ID 845804, 18 pages
doi:10.1155/2009/845804
Research Article

On the Complexities of Selected Satisfiability and Equivalence Queries over Boolean Formulas and Inclusion Queries over Hulls

LDCSEE, West Virginia University, Morgantown, WV 26506, USA

Received 5 November 2008; Accepted 14 April 2009

Academic Editor: Ron McGarvey

Copyright © 2009 K. Subramani. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Abstract

This paper is concerned with the computational complexities of three types of queries, namely, satisfiability, equivalence, and hull inclusion. The first two queries are analyzed over the domain of CNF formulas, while hull inclusion queries are analyzed over continuous and discrete sets defined by rational polyhedra. Although CNF formulas can be represented by polyhedra over discrete sets, we analyze them separately on account of their distinct structure. In particular, we consider the NAESAT and XSAT versions of satisfiability over HornCNF, 2CNF, and Horn 2CNF formulas. These restricted families find applications in a number of practical domains. From the hull inclusion perspective, we are primarily concerned with the question of checking whether two succinct descriptions of a set of points are equivalent. In particular, we analyze the complexities of integer hull inclusion over 2SAT and Horn polyhedra. Hull inclusion problems are important from the perspective of deriving minimal descriptions of point sets. One of the surprising consequences of our work is the stark difference in complexities between equivalence problems in the clausal and polyhedral domains for the same polyhedral structure.

1. Introduction

The problem of testing the satisfiability of CNF formulas (or SAT) is ubiquitous in computer science and operations research. Applications of this problem abound from areas as diverse as econometrics and planning to graph theory and combinatorial optimization [1]. From the perspective of computational complexity, SAT was immortalized in [2] as the first natural NP-complete problem. Advances in SAT research have been along both theoretical and practical lines. On the theoretical side, there exist a number of algorithms running in time 𝑜 ( 2 𝑛 ) , for instance, see [35]. On the practical front, greedy approaches based on random walks have been enormously successful [6, 7].

One of the approaches taken by SAT theoreticians is to identify structures of SAT families that are amenable to solution through polynomial time procedures. This approach has the benefit of defining yardsticks that categorize classes of SAT problems as polynomial time solvable or NP-complete [8]. Tractable families are distinguished by a specific clausal structure; these structures either limit the number of literals per clause [9, 10] or the number of times that a variable appears across all the clauses [11]. A completely orthogonal approach to SAT research is to study the complexities of SAT variants, that is, satisfiability problems with additional requirements on the type of solutions. For instance, in the NAESAT problem, we are required to find an assignment that satisfies all the clauses but falsifies at least one literal per clause. This paper is interested in such syntactic variants of the SAT problem, inasmuch as these variants arise naturally in the domains of graph theory and scheduling.

This paper also focuses on hull inclusion problems over continuous and discrete sets of points. Hull inclusion is checkable in polynomial time when the domain is continuous and NP-complete when the domain is discrete. However, there exist nontrivial cases of hull inclusion in discrete domains which are polynomial time solvable on account of the structure of the constraint matrix. These hull inclusion problems find applications in program verification [12, 13]. Although SAT problems can be cast as discrete domain polyhedral problems, we choose to treat them separately in order to exploit their structure. In this context, we will show that a particular problem is polynomial time solvable over Boolean CNF formulas, but provably hard over arbitrary polyhedra.

The principal contributions of this paper are as follows.

(a)Establishing the complexities of NAESAT and XSAT queries over restricted CNF families (see Section 2 for definitions of CNF restrictions).(b)Introducing the problems of NAE-equivalence and X-equivalence and establishing their complexities over restricted CNF families.(c)Developing a polynomial time algorithm for Linear hull inclusion. (d)Establishing the complexities of Integer hull inclusion over various polyhedral families.

The rest of this paper is organized as follows. Section 2 formally describes each of the problems considered in this paper. In Section 3, we discuss the motivation for our work as well as related approaches in the literature. The complexities of satisfiability queries over various clausal families are detailed in Section 4. Boolean equivalence queries and their variants are discussed in Section 5. An algorithm for Linear hull inclusion is discussed in Section 6. Section 7 is concerned with Integer hull inclusion over various polyhedral families. We conclude in Section 8 by summarizing our work in this paper and identifying avenues for future research.

2. Statement of Problems

We begin with definitions of satisfiability-related problems on clausal Boolean formulas.

Let 𝜙 = 𝐶 1 𝐶 2 𝐶 𝑚 denote a Boolean formula in conjunctive normal form (CNF), where the 𝐶 𝑖 s are disjunctions on the literals { 𝑥 1 , 𝑥 1 , 𝑥 2 , 𝑥 2 , , 𝑥 𝑛 , 𝑥 𝑛 } . For the rest of the paper, we assume that our formulas are in CNF over the 𝑛 variables { 𝑥 1 , 𝑥 2 , 𝑥 𝑛 } , unless otherwise stated.

Definition 2.1. The Boolean satisfiability  (SAT) problem is: Given 𝜙 , is there a { t r u e , f a l s e } assignment to the variables of 𝜙 , such that at least one literal in each clause is set to true.

If such an assignment x exists for a given CNF formula 𝜙 , then 𝜙 is said to be satisfiable and x is said to be a satisfying assignment. There are other variants of satisfiability of interest in the CNF case, where the number of true literals or the mix of true and false literals per clause is specified.

Definition 2.2. The Not-All-Equal satisfiability (NAESAT) problem is defined as follows: Given a Boolean formula 𝜙 , does 𝜙 have a satisfying assignment, such that at least one literal in each clause is set to false. If such an assignment exists, then it is called a NAE-satisfying assignment and 𝜙 is said to be NAE-satisfiable.

Definition 2.3. The Exact satisfiability (XSAT) problem is defined as follows. Given a Boolean formula 𝜙 , does 𝜙 have a satisfying assignment, such that exactly one literal in each clause is set to true. If such an assignment exists, then it is called an X-satisfying assignment and 𝜙 is said to be X-satisfiable.

If a Boolean formula 𝜙 is unsatisfiable, then it is neither NAE-satisfiable nor X-satisfiable; however, satisfiability does not imply NAE-satisfiability or X-satisfiability.

This paper will focus on Boolean formulas with restrictions on the structure of the formula. These restrictions are exploited in the design of polynomial time algorithms.

Definition 2.4. A Boolean formula 𝜙 is in 𝑘 -CNF form, if every clause contains exactly 𝑘 literals.

Definition 2.5. A Boolean formula 𝜙 is Horn, if every clause contains at most one positive literal.

Definition 2.6. A Boolean formula 𝜙 is said to be Horn 2CNF, if each clause contains at most two literals or at most one positive literal.

Given an assignment 𝑎 1 { t r u e , f a l s e } 𝑛 to the variables of a boolean formula 𝜙 , let 𝑇 ( 𝑎 1 ) denote the set of variables that have been assigned true under 𝑎 1 .

Definition 2.7. A Boolean formula 𝜙 is said to be positively monotone, if for every pair of assignments 𝑎 1 , 𝑎 2 { t r u e , f a l s e } 𝑛 to the variables of 𝜙 , ( 𝑇 ( 𝑎 1 ) 𝑇 ( 𝑎 2 ) ) ( 𝜙 ( 𝑎 1 ) 𝜙 ( 𝑎 2 ) ) .

Definition 2.8. A Boolean formula 𝜙 is said to be negatively monotone, if for every pair of assignments 𝑎 1 , 𝑎 2 { t r u e , f a l s e } 𝑛 to the variables of 𝜙 , ( 𝑇 ( 𝑎 1 ) 𝑇 ( 𝑎 2 ) ) ( 𝜙 ( 𝑎 2 ) 𝜙 ( 𝑎 1 ) ) .

A Boolean formula 𝜙 is monotone if it is either positively monotone or negatively monotone. It is not hard to see that if 𝜙 is a CNF formula, then 𝜙 is monotone if all variables occur positively or all variables occur negatively.

It is well known that 3SAT, NAE3SAT, and X3SAT are NP-complete [11], whereas HornSAT and 2SAT are solvable in polynomial time [10]. Horn 2CNF formulas have also been called Mixed Horn Formulas in the literature [14] and satisfiability checking in these formulas is also NP-complete [10]. Monotone SAT is trivial, since all variables can be set to true (or false). Other monotone problems, however, prove more interesting.

From the perspective of computational complexity, the following questions are open:

(i)What are the complexities of NAESAT over Horn and Mixed Horn formulas? These problems are called NAEHornSAT and NAEMixedHornSAT, respectively.(ii)What are complexities of XSAT over Horn and Mixed Horn formulas? These problems are called XHornSAT and XMixedHornSAT, respectively.

A problem closely related to satisfiability is the boolean equivalence problem.

Definition 2.9. Two Boolean formulas 𝜙 1 and 𝜙 2 are said to be equivalent (denoted 𝜙 1 𝜙 2 ) if every assignment that satisfies 𝜙 1 also satisfies 𝜙 2 and vice versa.

The problem of checking whether two Boolean formulas are equivalent is denoted by BEQ.

Observe that the equivalence problem can be broken into two subproblems, namely, 𝜙 1 𝜙 2 and 𝜙 2 𝜙 1 .

Consider the subproblem 𝜙 1 𝜙 2 . As before, we assume that 𝜙 1 = 𝐶 1 𝐶 2 𝐶 𝑚 and that 𝜙 2 = 𝐶 1 𝐶 2 𝐶 𝑚 . Now, 𝜙 1 𝜙 2 𝜙 1 𝐶 1 𝐶 2 𝐶 𝑚 𝑚 𝑖 = 1 𝜙 1 𝐶 𝑗 . ( 2 . 1 )

System (2.1) exploits the well-known propositional tautology, for arbitrary propositional formulas 𝐴 , 𝐵 , and 𝐶 : ( ( 𝐴 𝐵 ) ( 𝐴 𝐶 ) ) ( 𝐴 ( 𝐵 𝐶 ) ) . ( 2 . 2 ) Pick a particular clause 𝐶 𝑖 𝜙 2 . Applying the tautology ( 𝐴 𝐵 ) 𝐴 𝐵 f a l s e ( 2 . 3 ) for arbitrary propositional formulas 𝐴 and 𝐵 , it follows that [ 𝜙 1 𝐶 𝑖 ] if and only if [ 𝜙 1 𝐶 𝑖 ] is unsatisfiable.

Observe that 𝐶 𝑖 is a disjunction of literals, so that 𝐶 𝑖 is a conjunction of unit literal clauses; hence 𝜙 1 𝐶 𝑖 is in CNF form. Thus, in order to check whether 𝜙 1 𝜙 2 , we merely need to confirm that all the CNF formulas in the set { 𝜙 1 𝐶 𝑖 , 𝜙 1 𝐶 2 , , 𝜙 1 𝐶 𝑚 } are unsatisfiable. In other words, the implication problem for CNF problems has been Turing reduced to the CNF unsatisfiability problem. Then, we have the following lemma.

Lemma 2.10. BEQ is Turing reducible to the problem of checking whether a CNF formula is unsatisfiable.

Proof. Given 𝜙 1 and 𝜙 2 , first check whether 𝜙 1 𝜙 2 and then whether 𝜙 2 𝜙 1 .

Observe that there exist polynomial time algorithms to decide (un)satisfiability in 2CNF and HornCNF formulas [10], and hence it follows that BEQ can be decided in polynomial time for 2CNF and HornCNF formulas.

Two problems that are closely related to the boolean equivalence problem are the NAE-equivalence problem and the X-equivalence problem.

Definition 2.11. Two Boolean formulas 𝜙 1 and 𝜙 2 are said to be NAE-equivalent (denoted 𝜙 1 𝑛 𝜙 2 ) if every assignment that NAE-satisfies 𝜙 1 also NAE-satisfies 𝜙 2 and vice versa.

The problem of checking whether two boolean formulas are NAE-equivalent is denoted by NAEEQ.

Definition 2.12. Two Boolean formulas 𝜙 1 and 𝜙 2 are said to be X-equivalent (denoted by 𝑥 ) if every assignment that X-satisfies 𝜙 1 also X-satisfies 𝜙 2 and vice versa.

The problem of checking whether two boolean formulas are X-equivalent is denoted by XEQ.

Problem 1. Are there classes of Boolean formulas for which NAE-equivalence and X-equivalence can be determined in polynomial time?

We now proceed to describe the linear and integer hull inclusion problems for particular types of polytopes. A polytope is a bounded polyhedron. A polyhedron is defined by a linear system A x b , where A is an 𝑚 × 𝑛 integer matrix, b is an integral 𝑚 -vector, and x = [ 𝑥 1 , 𝑥 2 , , 𝑥 𝑛 ] 𝑇 is the variable vector. Polytopes and polyhedra are interesting because they capture a number of problems that arise in combinatorial optimization.

For the following definitions, assume that we are given two polytopes 𝑃 1 { A 1 b x 1 } and 𝑃 2 { A 2 b x 2 } .

Definition 2.13. The linear hull of a polytope 𝑃 1 { A 1 b x 1 } , denoted by 𝐿 𝑃 1 , is defined as the convex hull of all the points contained in it.

Definition 2.14 (see [15]). The integer hull of a polytope 𝑃 1 { A 1 b x 1 } , denoted by 𝑆 𝑃 1 , is defined as the convex hull of the lattice points contained in 𝑃 1 .

Note that for a given polytope A 1 b x , both the linear hull and the integer hull have exponentially many extreme points. However, just as we are interested in equivalence between formulas with respect to various satisfiability measures, we are interested in comparing polytopes via their convex hulls.

Definition 2.15. The linear hull inclusion (LHI) problem is defined as follows. Given polyhedra 𝑃 1 and 𝑃 2 ,  is it the case that   𝐿 𝑃 1 𝐿 𝑃 2 ?

Definition 2.16. The integer hull inclusion (IHI) problem is defined as follows. Given polyhedra 𝑃 1 and 𝑃 2 ,  is it the case that   𝑆 𝑃 1 𝑆 𝑃 2 ?

We first observe that the IHI problem is hard in the general case.

Lemma 2.17. IHI is coNP-complete.

Proof. Let 𝜙 denote an arbitrary 3CNF formula. It is well known that this formula can be represented as an integer program over { 0 , 1 } , for instance, see [16]. Set 𝑃 1 to be the polyhedral system representing the 3CNF formula and 𝑃 2 to the empty polyhedron { 𝑥 1 1 , 𝑥 1 0 } . The integer hull of 𝑃 1 is contained in the integer hull of 𝑃 2 if and only if the 3CNF formula 𝜙 is unsatisfiable. Then the lemma follows.

The natural question then is the following.

Problem 2. Are there classes of polytopes for which IHI can be decided in polynomial time?

We now define some special classes of polytopes. The structure of these polytopes will be exploited to design polynomial time algorithms for one or both types of hull inclusion.

Definition 2.18. A polyhedral system 𝑃 1 { A x b } is said to be a 2SAT polytope if all entries of A belong to the set { 0 , 1 , 1 } and further, there are at most 2 nonzero entries per row of A .

Individual constraints of a 2SAT polytope have also been referred to as UTVPI constraints in the literature [13].

Definition 2.19. A polyhedral system of the form 𝑃 1 { A x b } is said to be a Horn polytope if all entries in A belong to { 1 , 0 , 1 } , and there exists at most one positive entry in each row.

Observe that 2SAT polytopes and Horn polytopes generalize 2CNF clauses and HornCNF clauses, respectively.

Definition 2.20. A matrix A is said to be totally unimodular (TUM) if every square submatrix of A has determinant 0 , 1 , or 1 .

TUM matrices arise in network flow problems [17], scheduling problems [18], and a whole host of situations in which only strict difference constraints are permitted between program variables [19]. One of the more celebrated results about TUM matrices in the operations research literature is the following. Let P 1 b A x denote a polyhedral system, with A TUM and b integral. Then, the integer hull and linear hull of P 1 are identical (see [15]).

Definition 2.21. A polyhedral system of the form 𝑃 1 { A x b } , where all entries in A belong to { 1 , 0 , 1 } and each row has exactly one + 1 and one 1 , is called a Difference polytope.

Note that the class of difference polytopes is a proper subset of the class of 2SAT polytopes and also a proper subset of the class of Horn polytopes. (See Figure 1.)

845804.fig.001
Figure 1: Relation between polyhedral classes.

Difference polytopes are a special subset of the class of TUM polytopes. Conjunctions of difference constraints are used to capture requirements in a number of application domains such as symbolic model checking [20], verification of timed systems [21, 22], and timed automata [23, 24]. Difference constraint feasibility has also been studied as the Single Source Shortest Paths problem within the operations research and algorithms communities [25]. Additionally, separation relationships in a number of scheduling problems are captured through difference constraints [18, 26, 27]. In real-time software, temporal requirements are modeled through variants of difference constraints [28, 29].

3. Motivation and Related Work

The two variants of SAT that we are interested in are NAESAT and XSAT. Both these problems have a long and interesting history, inasmuch as they are closely linked to graph coloring problems [30]. Mixed Horn Formulas (MHFs) have been used in the formulation of level-planarity tests in planar graphs and crossing-minimization problems [31]. In [14], it has been argued that graph colorability can also be formulated as an MHF satisfiability problem.

Convex body inclusion has been well studied in the operations research literature [32, 33]. Convex body inclusion is related to the problem of estimating the volumes of convex bodies [34, 35]. In Section 6, we present an algorithm for polytope inclusion that depends on the fact that maximizing a linear function over a polytope can be accomplished in polynomial time. Integer hull inclusion is different from convex body inclusion since in general, the set of lattice points satisfying a system of linear inequalities do not form a convex set. 2SAT polytopes were introduced in [36], where it was shown that the existence of a lattice point could be determined in 𝑂 ( 𝑛 3 ) time, where 𝑛 is the dimension of the polytope. It is known that the problem of obtaining the integer maximum of a linear function over a 2SAT polytope is, in general, NP-hard. (This problem generalizes the vertex cover problem.) Horn polytopes generalize Horn clausal systems [37] and find wide application in linear complementarity and econometrics research [38].

A secondary motivation for the study of clausal equivalence problems is provided by classical computational complexity. One of the goals in complexity is to find the exact threshold at which problems become hard [10]. This paper shows that the NAE-equivalence and X-equivalence problems are solvable in polynomial time for 2CNF formulas but are provably hard for the other boolean families. Likewise, we show that the integer hull inclusion problem can be solved in polynomial time for 2SAT polytopes. A surprising consequence of our work is the apparent disparity between the clausal and integer programming versions of Horn equivalence. Clausal Horn equivalence can be determined in polynomial time, whereas integer hull inclusion over Horn polytopes is coNP-complete.

4. Boolean Satisfiability Queries

This section focuses on the computational complexity of the satisfiability queries detailed in Section 2. It has been shown that the NAE2SAT problem can be solved in polynomial time [39]. Indeed, the results in [40] establish that NAE2SAT is in the complexity class L (Deterministic Logarithmic Space). Likewise, NAE3SAT has been proven NP-complete in [8]. The arguments in [8] also establish that Monotone XSAT is NP-complete.

We are now ready to prove the following theorem.

Theorem 4.1. XHornSAT is NP-complete.

The proof is a reduction from Monotone XSAT to XHornSAT. Before we construct the reduction, we will prove a minor but useful lemma.

Lemma 4.2. Any X-satisfying assignment for the formula ( 𝑧 1 𝑧 2 ) ( 𝑧 1 𝑧 2 𝑧 3 ) sets 𝑧 3 to false.

Proof. We note that any X-satisfying assignment for ( 𝑧 1 𝑧 2 ) sets one of 𝑧 1 and 𝑧 2 to true and the other to false. Therefore, a consistent X-satisfying assignment to ( 𝑧 1 𝑧 2 𝑧 3 ) must set 𝑧 3 to false.

Note that the formula in Lemma 4.2 is Horn.

Proof of Theorem 4.1. Let 𝜑 = 𝐶 1 𝐶 2 𝐶 𝑘 be a monotone CNF formula. Let 𝑧 1 , 𝑧 2 , and 𝑧 3 be variables that do not occur in 𝜑 , and assume without loss of generality that all variables in 𝜑 appear negated.
Let 𝑓 ( 𝜑 ) = 𝑧 1 𝑧 2 𝑧 1 𝑧 2 𝑧 3 𝑖 𝑘 ¬ 𝐶 𝑖 𝑧 3 . ( 4 . 1 )
Observe that if 𝐶 𝑖 = ( 𝑥 1 , 𝑥 2 , 𝑥 3 ) , then [ ( ¬ 𝐶 𝑖 ) 𝑧 3 ] has the form: [ ( 𝑥 1 𝑥 2 𝑥 3 ) 𝑧 3 ] . As discussed in Lemma 4.2, any X-satisfying assignment to 𝑓 ( 𝜑 ) must set 𝑧 3 to false. However, any X-satisfying assignment for a Horn clause having the form [ ( 𝑥 𝑖 𝑥 𝑗 𝑥 𝑘 ) f a l s e ] must set exactly one literal of ( 𝑥 𝑖 𝑥 𝑗 𝑥 𝑘 ) to true. It follows that 𝑓 ( 𝜑 ) is X-satisfiable if and only if 𝜑 is. Since 𝑓 ( 𝜑 ) can be computed in time linear in | 𝜑 | , this reduction is polynomial-time computable.
It follows that XHornSAT is NP-complete.

There is a similar reduction from monotone NAESAT to NAEHornSAT. The reduction itself is completely straightforward since a monotone clause 𝐶 is equivalent to ( ¬ 𝐶 f a l s e ) . (Again, without loss of generality we assume that all variables in 𝐶 are negated.)

Corollary 4.3. Monotone NAESAT  𝑃 𝑚 NAEHornSAT, where the 𝑃 𝑚 stands for many-to-one polynomial time.

In order to show the complexity of these two satisfiability problems, we introduce a coloring problem.

Definition 4.4. The Set Splitting problem is: given a universe 𝑈 = { 𝑥 1 , , 𝑥 𝑛 } and 𝑆 𝒫 ( 𝑈 ) (subsets of 𝑈 ), is there a coloring of { 𝑥 1 , , 𝑥 𝑛 } by two colors, say red and blue, so that no set in 𝑆 is monochrome?

Sipser gives the NP completeness of Set Splitting as an exercise [41]. There is a straightforward mapping between the sets in 𝑆 and clauses in a monotone formula and between the colors and the values true and false.

Lemma 4.5. The Splitting Set problem is NP-complete, and Monotone NAESAT is equivalent to it.

Corollary 4.6. NAEHornSAT is NP-complete.

Note that any NAESAT assignment to a Horn clause must set at least one body variable to false. Otherwise, the NAE constraint would force the body to true and the head to false, and the assignment would not satisfy the clause.

Observe that NAEHornSAT and XHornSAT are both NP-complete as shown in Theorem 4.1 and Corollary 4.6, respectively. Furthermore, HornSAT is a subclass of MixedHornSAT. Finally, note that the reductions that established the NP-completeness of NAEHornSAT and XHornSAT have the properties that they map inputs either to NAE-satisfiable (resp, X-satisfiable) Horn formulas, or to NAE-unsatisfiable (resp, X-unsatisfiable) Horn formulas. Therefore, these very reductions establish the NP-completeness of NAEMixedHornSAT and XMixedHornSAT, respectively.

Corollary 4.7. NAEMixedHornSAT and XMixedHornSAT are NP-complete.

Table 1 summarizes our discussion on clausal satisfiability queries.

tab1
Table 1: Complexities of various satisfiability queries over different clausal families.

5. Boolean Equivalence Queries

The reasoning in Section 2 can be used to establish that BEQ is coNP-complete over 3CNF and Mixed Horn Formulas.

Theorem 5.1. BEQ is coNP-complete for 3CNF and Mixed Horn Formulas.

Proof. Let 𝜙 1 denote an arbitrary 3CNF formula or Mixed Horn formula. We know that the problem of checking whether 𝜙 1 is satisfiable is NP-complete; thus, if we set 𝜙 2 to false, we can determine the satisfiability of 𝜙 1 by checking whether 𝜙 1 𝜙 2 .

In similar fashion, it can be shown that the NAEEQ and XEQ problems are coNP-complete for 3CNF and Mixed Horn Formulas.

We now prove a general theorem relating the NAEEQ and BEQ problems. Let 𝜙 denote a formula in 𝑘 -CNF form, and let 𝜙 denote the CNF formula obtained by negating every literal in every clause of 𝜙 .

Lemma 5.2. 𝜙 is NAE-satisfiable if and only if 𝜙 𝜙 is satisfiable.

Proof. Only if: Let 𝜙 be NAE-satisfiable and let x denote a NAE-satisfying assignment. Let 𝐶 1 denote a clause of 𝜙 . Since x is a NAE-satisfying assignment, it sets at least one literal to true and at least one literal to false in 𝐶 1 . Let 𝐶 1 denote the clause in which each literal in 𝐶 1 is complemented. Note that the literal that was set to false in 𝐶 1 is set to true in 𝐶 1 and vice versa; since 𝐶 1 was chosen arbitrarily, the same argument applies to all clauses of 𝜙 . In other words, 𝐱 NAE-satisfies 𝜙 , and therefore, x NAE-satisfies 𝜙 𝜙 . Hence 𝜙 𝜙 is satisfiable.
If: Let 𝜙 𝜙 be satisfiable in the ordinary sense, and let x denote a satisfying assignment. Let us study the clauses 𝐶 1 and 𝐶 1 under the assignment x which is obtained by complementing every assignment in x . As per the definition of 𝜙 , every literal that is set to true in 𝐶 𝑖 is set to false in 𝐶 1 and vice versa. It therefore follows that x also satisfies both 𝐶 1 and 𝐶 1 . Inasmuch as 𝐶 1 and 𝐶 1 were chosen arbitrarily, the same argument holds for all clause pairs, that is, x satisfies 𝜙 𝜙 . Now, 𝜙 𝜙 has a complementary pair of assignments and therefore is NAE-satisfiable. But this immediately implies the NAE-satisfiability of 𝜙 .

Lemma 5.2 leads us directly to the following lemma.

Lemma 5.3. ( 𝜙 𝑛 𝜓 ) if and only if 𝜙 ( 𝜙 𝜓 ) ( 𝜓 ) .

Proof. Suppose that ( 𝜙 𝑛 𝜓 ) but 𝜙 ( 𝜙 𝜓 ) ( 𝜓 ) . Without loss of generality, assume that there exists an assignment x which satisfies 𝜙 𝜙 but falsifies 𝜓 𝜓 . Since x does not satisfy 𝜓 𝜓 , it cannot NAE-satisfy 𝜓 , as per Lemma 5.2. As per the hypothesis, it cannot NAE-satisfy 𝜙 either. But since 𝐱 satisfies 𝜙 𝜙 , it must NAE-satisfy 𝜙 , as per Lemma 5.2, and thus we have a contradiction. It follows that ( 𝜙 𝑛 𝜓 ) implies that 𝜙 ( 𝜙 𝜓 ) ( 𝜓 ) . The converse can be proved similarly.

Note that in case of 2CNF formulas, the NAEEQ and XEQ problems are identical.

The next theorem follows from the previous proofs.

Theorem 5.4. The NAEEQ and XEQ problems can be solved in polynomial time for 2CNF formulas.

Table 2 summarizes our discussion on clausal equivalence queries.

tab2
Table 2: Complexities of equivalence queries over different clausal families.

6. Linear Hull Inclusion

In this section, we focus on the problem of checking whether the linear hulls of two polyhedra defined by systems of linear inequalities are equivalent.

Consider two polyhedra represented by A x b , x 0 , ( 6 . 1 ) where

(1) A is an 𝑚 × 𝑛 rational matrix,(2) b is a rational 𝑚 vector,(3) x n + ,

and C x d , x 0 , ( 6 . 2 ) where

(1) C , is an 𝑚 × 𝑛 rational matrix,(2) d is a rational 𝑚 -vector,(3) x n +

The goal is to decide the following predicate: 0 d x A x b C x ? ( 6 . 3 ) Algorithm 1 represents our strategy to decide Query (6.3).

alg1
Algorithm 1: Algorithm for polytope inclusion.

6.1. Analysis

Let ( 𝑚 , 𝑛 ) denote the polynomial running time of a linear programming algorithm on 𝑚 constraints and 𝑛 variables [42]. Since a total of 𝑚 calls are made, the running time of Algorithm 1 is 𝑂 ( 𝑚 ) , which is polynomial, since is a polynomial function of 𝑚 and 𝑛 .

6.2. Correctness

Lemma 6.1. If Algorithm 1 returns true, then for all   𝐱 𝐧 + 𝐝 , 𝐀 𝐱 𝐛 𝐂 𝐱 .

Proof. Let us assume the contrary, that is, Algorithm 1 returns true, yet there exists a point x such that x A b , but x C d . We note that the notation x C d is used to indicate the fact that at least one of the 𝑚 constraints defining the polyhedron d C x is violated. Let c x 𝑑 denote a violated constraint, that is, c x > 𝑑 . (See Figure 2.) Then   m a x A x b , x 0 c x is greater than 𝑑 , contradicting the hypothesis that true was returned by the algorithm.

845804.fig.002
Figure 2: Polytope noninclusion.

Lemma 6.2. If Algorithm 1 returns false, there exists a point 𝐱 𝐑 𝐧 + such that 𝐱 𝐀 𝐛 and 𝐱 𝐂 𝐝 .

Proof. See Figure 2. Let m a x A x b c x exceed 𝑑 at point x . Then x is the required offending point, that is, x 0 A x b , x , but x 0 C x d , x .

Corollary 6.3. Algorithm 1 decides if the polyhedron defined by 𝟎 𝐀 𝐱 𝐛 , 𝐱 is contained in the polyhedron represented by 𝟎 𝐂 𝐱 𝐝 , 𝐱

Note that the linear hull inclusion problem is decidable in polynomial time, irrespective of the polyhedral system involved, that is, the polyhedral system could be completely arbitrary (and not necessarily one of 2SAT, Horn or TUM).

7. Integer Hull Inclusion

Let us restate the Integer hull inclusion problem (IHI).

Given polyhedra   𝑃 1 { A 1 b x 1 } and   𝑃 2 { A 2 b x 2 } , is it the case that the integer hull of   𝑃 1   is contained within the integer hull of   𝑃 2 , that is,  is   𝑆 𝑃 1 𝑆 𝑃 2 ?

We point out some relevant information.

(1)Algorithm 1 shows that the hull inclusion problem (Linear or Integer) is Turing reducible to the problem of finding the maximum (linear or integer) of a linear function over a polyhedron.(2)It therefore follows that the IHI problem can be solved in polynomial time when A 1 , A 2 are TUM. Note that when the vectors b 1 , b 2 are integral, Algorithm 1 works as is, since the linear hull is identical to the integer hull. If the b i vectors are not integral, we make the observation that the integer hull of A i b x i is identical to the linear hull of A i b x 0 𝑥 0 𝑓 8 𝑓 0 i 0 𝑥 0 𝑓 8 𝑓 𝑏 when the A i are TUM, and use Algorithm 1 on the modified polyhedra. For the rest of this paper, we will assume that the vectors b 1 , b 2 are integral.(3)Optimizing a linear function over an arbitrary 2SAT polytope is NP-hard since it subsumes the vertex cover problem [15, 43], and hence we cannot directly use the technique discussed in Section 6. Likewise, maximizing an arbitrary linear function over a Horn polytope is NP-hard, and thus the technique of Section 6 is inapplicable (see Section 7.2).
7.1.  2SAT Polytopes

Assume that A 1 has dimension 𝑚 × 𝑛 and that A 2 has dimensions 𝑚 × 𝑛 . Note that 𝑃 1 is constructed by taking the intersection of the 𝑚 half-spaces a 1 1 x 𝑏 1 1 , a 2 1 x 𝑏 2 1 a , m 1 x 𝑏 𝑚 1 . Likewise, 𝑃 2 is constructed by taking the intersection of the 𝑚 half-spaces, a 1 2 x 𝑏 1 2 , a 2 2 x 𝑏 2 2 a , m 2 x 𝑏 𝑚 2 .

Observe that 𝑆 𝑃 1 𝑆 𝑃 2 if and only if for all lattice points x , ( x 𝑃 1 x 𝑃 2 ) . Now, for a lattice point x , x 𝑃 1 x 𝑃 2 x 𝑃 1 x 𝑚 𝑗 = 1 a j 2 x 𝑏 𝑗 2 𝑚 𝑗 = 1 x 𝑃 1 a j 2 x 𝑏 𝑗 2 . ( 7 . 1 )

Let us focus on proving ( x 𝑃 1 a j 2 x 𝑏 𝑗 2 ) , for a specific constraint of 𝑃 2 , that is, the 𝑗 t h half-space defining 𝑃 2 . As in the case of CNF equivalence, we observe that for lattice points x , ( x 𝑃 1 a j 2 x 𝑏 𝑗 2 ) , if and only if the set 𝑃 1 [ a j 2 x 𝑏 𝑗 2 ] is empty with respect to lattice points. Note that the constraint a j 2 x 𝑏 𝑗 2 can be written as: 𝑙 1 a j 2 x > 𝑏 𝑗 2 . But we are only interested in lattice point solutions. Consequently, a lattice point solution will satisfy the constraint 𝑙 1 if and only if it satisfies the constraint a j 2 x ( 𝑏 𝑗 2 + 1 ) , which is a closed half-space. Thus, we can check that ( x 𝑃 1 a j 2 x 𝑏 𝑗 2 ) for all lattice points x , by checking whether the polyhedron 𝑃 1 a j 2 x ( 𝑏 𝑗 2 + 1 ) is empty with respect to lattice points. The operation of negating a constraint is referred to as constraint complementation.

The discussion above implies the following theorem.

Theorem 7.1. Given polyhedra 𝑃 1 and 𝑃 2 , the IHI problem turing reduces to the problem of checking whether a polyhedron does not have any lattice point.

Corollary 7.2. The IHI problem can be solved in polynomial time for 2SAT polytopes.

Proof. 2SAT polytopes are defined by constraints that are closed under constraint complementation, insofar as lattice points are concerned. For instance, the complement of the constraint 𝑥 1 𝑥 2 4 is 𝑥 1 + 𝑥 2 > 4 , which is equivalent to 𝑥 1 + 𝑥 2 3 if only integral values of 𝑥 1 and 𝑥 2 are permitted. In other words, the complement of a constraint in a 2SAT polytope is also a 2SAT constraint. The presence or absence of lattice points in a 2SAT algorithm can be checked using the algorithm in [36], which runs in 𝑂 ( 𝑛 3 ) time. The corollary follows.

7.2. Horn Polytopes

Observe that Horn constraints are not closed under constraint complementation. For instance, the negation of the Horn constraint 𝑥 1 𝑥 2 𝑥 3 5 is 𝑥 1 𝑥 2 𝑥 3 < 5 , which is equivalent to 𝑥 1 𝑥 2 𝑥 3 4 (since the 𝑥 𝑖 s are integral) and hence equivalent to 𝑥 1 + 𝑥 2 + 𝑥 3 4 . Note that the last constraint is not a Horn constraint but an anti-Horn constraint!

We will show that the IHI problem for Horn polytopes is coNP-complete. In order to establish this result, we study a related problem, namely, PK(Horn, 1 ).

Given a Horn system   b A x   and a single non-Horn constraint   c x 𝑑 ,  does the polyhedral system   b A x c x 𝑑 , enclose a lattice point?

We will use a reduction from the following problem.

Definition 7.3. The Hitting Set (HS) problem is: Given a set 𝑆 = { 𝑠 1 , 𝑠 2 , , 𝑠 𝑛 } called the ground set, a collection of 𝑚 subsets 𝑇 𝑖 𝑆 , 𝑖 = 1 , 2 , , 𝑚 , and a number 𝐾 𝑛 , does there exist a set 𝑆 𝑆 , such that | 𝑆 | 𝐾 and 𝑇 𝑖 𝑆 𝜙 , 𝑖 = 1 , 2 , 𝑚 ?

Theorem 7.4. HS is NP-complete.

The Hitting Set problem and a proof of its NP-completeness are provided in [11].

Corollary 7.5. PK(Horn, 1 ) is NP-complete.

Proof. PK(Horn, 1 )     NP from the NP-completeness of Integer Programming [19]. We reduce the Hitting Set problem to PK(Horn, 1 ).
Given an instance of HS, with ground set 𝑆 = { 𝑠 1 , 𝑠 2 , , 𝑠 𝑛 } , 𝑚 sets 𝑇 𝑖 𝑆 and the target 𝐾 , we construct an instance of the following variation of CNF satisfiability called MCNF. Corresponding to the ground set 𝑆 , we create the literal set 𝐿 = { 𝑥 1 , 𝑥 2 , , 𝑥 𝑛 } . Corresponding to each subset 𝑇 𝑖 = { 𝑠 𝑖 1 , 𝑠 𝑖 2 , , 𝑠 𝑖 𝑝 } , we create the clause 𝐶 𝑖 = { 𝑥 𝑖 1 , 𝑥 𝑖 2 , , 𝑥 𝑖 𝑝 } , where each 𝑖 𝑘 indexes the set { 1 , 2 , , 𝑛 } . The query in MCNF is as follows. Does there exist an assignment that satisfies the clause set 𝜙 = 𝐶 1 𝐶 2 𝐶 𝑚 such that the number of variables set to true is at most 𝐾 ? Note that all literals are positive in the MCNF instance.
Assume that the instance of HS is a “yes” instance, that is, there exists a set 𝑆 𝑆 such that | 𝑆 | 𝑇 𝑖 𝜙 , such that | 𝑆 | 𝐾 . Set the literals corresponding to the variables in 𝑆 to true and all other literals to false. By construction, each clause 𝐶 𝑖 is satisfied. Since the number of literals set to true is 𝐾 , the instance of MCNF is also a “yes” instance.
Now assume that the instance of MCNF is a “yes” instance, that is, there exists a { t r u e , f a l s e } assignment to the literals of 𝜙 , such that all clauses are satisfied and the number of literals set to true is at most 𝐾 . Construct the set 𝑆 with those elements 𝑠 𝑖 𝑆 , such that 𝑥 𝑖 = t r u e . By construction, 𝑆 intersects each 𝑇 𝑖 in at least one element (since each clause is satisfied), and the cardinality of 𝑆 is at most 𝐾 . It follows that the instance of 𝐻 𝑆 is also a “yes” instance.
We now transform the MCNF instance into an instance of PK(Horn, 1 ) as follows. Create 𝑛 variables 𝑦 1 , 𝑦 2 , , 𝑦 𝑛 , where each 𝑦 𝑖 { 0 , 1 } . Corresponding to the clause 𝐶 𝑖 = ( 𝑥 𝑖 1 , 𝑥 𝑖 2 , 𝑥 𝑖 3 ) (say), create the Horn constraint: ( 1 𝑦 𝑖 1 ) + ( 1 𝑦 𝑖 2 ) + ( 1 𝑦 𝑖 3 ) 1 . Finally, add the non-Horn constraint: 𝑛 𝑖 = 1 𝑦 𝑖 𝑛 𝐾 . Thus, the MCNF instance is transformed into the following PK(Horn, 1 ) instance: b A y 𝑛 𝑖 = 1 𝑦 𝑖 𝑛 𝐾 , where A has the Horn structure and b is an integral vector.
Assume that the MCNF instance is a “yes” instance. For each literal 𝑥 𝑖 set to true, set 𝑦 𝑖 to 0 and for each literal 𝑥 𝑗 set to false, set 𝑦 𝑗 to 1 . Since each clause is satisfied, it must be the case that each Horn constraint is satisfied, as per construction of the Horn constraint. Further, since the number of variables set to true in the MCNF instance is at most 𝐾 , the number of 𝑦 𝑖 s set to 0 is at most 𝐾 and hence the number of 𝑦 𝑖 s set to 1 is at least 𝑛 𝐾 , that is, we must have 𝑛 𝑖 = 1 𝑦 𝑖 𝑛 𝐾 . Thus, the PK(Horn, 1 ) instance is a “yes”-instance.
Now assume that the PK(Horn, 1 ) instance is a “yes” instance. Set 𝑥 𝑖 to true, if 𝑦 𝑖 = 0 and 𝑥 𝑖 to false, if 𝑦 𝑖 = 1 . As per the construction, each clause must be satisfied, since each Horn constraint is satisfied. Further, the number of 𝑦 𝑖 s set to 1 is at least 𝑛 𝐾 , and hence the number of 𝑥 𝑖 s set to true is at most 𝐾 . It follows that the MCNF instance is a “yes” instance.

We get a small bonus from this result which is useful for our next theorem.

Definition 7.6. Let HMax denote the following problem. Given a Horn polytope b A x and a number 𝐾 , do there exist 𝑥 1 , 𝑥 2 , , 𝑥 𝑛 { 0 , 1 } such that x A b and 𝑛 𝑖 = 1 𝑥 𝑖 𝐾 , where x = [ 𝑥 1 , 𝑥 2 , , 𝑥 𝑛 ] 𝑇 ?

Corollary 7.7. HMax is NP-complete.

Proof. This follows from Corollary 7.2.

We now use the NP-completeness of HMax to prove the following.

Theorem 7.8. The IHI problem for Horn polytopes, that is, IH-Horn, is coNP-complete.

Proof. From the proof that integer programming is in NP, we know that the IHI problem is in coNP [10].
Let A 1 b x 1 , 𝑥 𝑖 { 0 , 1 } , 𝑖 = 1 , 2 , , 𝑛 , and 𝐾 describe an instance of HMax. We create the following instance of the IHI-Horn problem: 𝑃 1 A 1 b x 1 , 𝑥 𝑖 { 0 , 1 } , 𝑖 = 1 , 2 , , 𝑛 , and 𝑃 2 𝑛 𝑖 = 1 𝑥 𝑖 ( 1 𝐾 ) .
We now argue that the instance of HMax is true if and only if the instance of IHI-Horn is false, that is, x { 0 , 1 } 𝑛 A 1 x b 𝑛 𝑖 = 1 𝑥 𝑖 𝐾 𝑃 1 ̸ 𝑃 2 . ( 7 . 2 )
Note that 𝑃 1 is a Horn system, as per the hypothesis and 𝑃 2 is a Horn system by definition.
Assume that the IHI-Horn instance is true, that is, 𝑃 1 𝑃 2 .
We then have fol all x A 1 x b 𝑛 𝑖 = 1 𝑥 𝑖 ( 1 𝐾 ) . It follows that for all x A 1 x b 𝑛 𝑖 = 1 𝑥 𝑖 ( 𝐾 1 ) . Hence, the instance of HMax is false.
Now assume that the HMax instance is true, that is, 𝐱 { 0 , 1 } 𝑛 A 1 b x 𝑛 𝑖 = 1 𝑥 𝑖 𝐾 . This implies that there exists x 𝑃 1 , with 𝑛 𝑖 = 1 𝑥 𝑖 𝐾 , that is, 𝑛 𝑖 = 1 𝑥 𝑖 𝐾 . Thus, 𝑛 𝑖 = 1 𝑥 𝑖 < ( 𝐾 + 1 ) , and hence 𝑛 𝑖 = 1 𝑥 𝑖 < ( 𝐾 1 ) . It follows that x 𝑃 1 is not contained in 𝑃 2 , and hence the instance of IHI-Horn is false.
The theorem follows.

Table 3 summarizes the discussion on Integer hull inclusion problems.

tab3
Table 3: Complexities of Integer hull inclusion problems over various polyhedral families.

8. Conclusion

In this paper, we discussed clausal equivalence and hull inclusion (both linear and integer) from the perspectives of a number of specialized constraint clauses. We also detailed the complexities of some satisfiability variants. Finally, we showed that the Integer hull inclusion problem for Horn polytopes is coNP-complete. To the best of our knowledge, our results are the first of their kind.

The work in this paper is important from the orthogonal perspectives of providing efficient strategies for special cases of hard problems and exposing interesting avenues for future research. The following interesting open problems have arisen from this work.

(i)While the satisfiability of a Horn clause system can be checked by resolution in 𝑂 ( 𝑛 2 ) time, to date, the only known strategy for checking the feasibility of a general Horn polytope is linear programming [37]. Finding a simpler strategy for Horn polytope feasibility is of paramount importance since Horn polytopes find wide application in engineering domains.(ii)Although the IHI-Horn problem is coNP-complete, the complexity of the problem, when the number of nonzero variables defining each constraint is a fixed constant, is unknown. A polynomial time algorithm for this problem is of enormous practical significance.

Acknowledgments

The author is extremely grateful to Judy Goldsmith for numerous discussions and to Matthew Williamson for proofreading the paper. This research has been supported in part by the Air Force Office of Scientific Research under Grant FA9550-06-0050 and in part by the National Science Foundation through Award CCF-0827397.

References

  1. Editors, Proceedings of SAT 2001, SAT 2002 and SAT 2003.
  2. S. A. Cook, “The complexity of theorem-proving procedures,” in Proceedings of the ACM Symposium on Theory of Computing (STOC '71), 1971.
  3. U. Schöning, “New algorithms for k-SAT based on the local search principle,” in Proceedings of the Symposium on Mathematical Foundations of Computer Science (MFCS '01), 2001.
  4. U. Schöning, “A probabilistic algorithm for k-SAT based on limited local search and restart,” Algorithmica, vol. 32, 2002.
  5. O. Kullmann, “New methods for 3-SAT decision and worst-case analysis,” Theoretical Computer Science, vol. 223, no. 1-2, pp. 1–72, 1999.
  6. B. Selman, H. J. Levesque, and D. G. Mitchell, “A new method for solving hard satisfiability problems,” in Proceedings of the 10th National Conference on Artificial Intelligence (AAAI '92), pp. 440–446, San Jose, Calif, USA, July 1992.
  7. W. Wei and B. Selman, “Accelerating random walks,” in Proceedings of the 8th International Conference on Constraint Programming (CP '02), Lecture Notes in Computer Science, pp. 216–232, 2002.
  8. T. J. Schaefer, “The complexity of satisfiability problems,” in Proceedings of the 10th Annual ACM Symposium on Theory of Computing, A. Aho, Ed., pp. 216–226, ACM Press, San Diego, Calif, USA, 1978.
  9. B. Aspvall, M. F. Plass, and R. E. Tarjan, “A linear-time algorithm for testing the truth of certain quantified Boolean formulas,” Information Processing Letters, vol. 8, no. 3, pp. 121–123, 1979.
  10. C. H. Papadimitriou, Computational Complexity, Addison-Wesley, Reading, Mass, USA, 1994.
  11. M. R. Garey and D. S. Johnson, Computers and Intractability: A Guide to the Theory of NP-Completeness, W. H. Freeman, San Francisco, Calif, USA, 1979.
  12. S. A. Seshia, K. Subramani, and R. E. Bryant, “On solving boolean combinations of UTVPI constraints,” Journal on Satisfiability, Boolean Modeling and Computation, vol. 3, no. 1-2, pp. 67–90, 2007.
  13. S. K. Lahiri and M. Musuvathi, “An efficient decision procedure for UTVPI constraints,” in Proceedings of the 5th International Workshop on Frontiers of Combining Systems (FroCoS '05), pp. 168–183, Vienna, Austria, September 2005.
  14. S. Porschen and E. Speckenmeyer, “Satisfiability of mixed Horn formulas,” Tech. Rep., University of Cologne, Cologne, Germany, 2005.
  15. G. L. Nemhauser and L. A. Wolsey, Integer and Combinatorial Optimization, Wiley-Interscience Series in Discrete Mathematics and Optimization, John Wiley & Sons, New York, NY, USA, 1988.
  16. T. H. Cormen, C. E. Leiserson, and R. L. Rivest, Introduction to Algorithms, MIT Press, Cambridge, Mass, USA, 2nd edition, 1992.
  17. R. K. Ahuja, T. L. Magnanti, and J. B. Orlin, Network Flows: Theory, Algorithms, and Application, Prentice-Hall, Englewood Cliffs, NJ, USA, 1993.
  18. M. L. Pinedo, Scheduling: Theory, Algorithms, and Systems, Prentice-Hall, Englewood Cliffs, NJ, USA, 1995.
  19. A. Schrijver, Theory of Linear and Integer Programming, John Wiley & Sons, New York, NY, USA, 1987.
  20. E. Clarke, A. Biere, R. Raimi, and Y. Zhu, “Bounded model checking using satisfiability solving,” Formal Methods in System Design, vol. 19, no. 1, pp. 7–34, 2001.
  21. A. Wall, K. Sandström, J. Mäki-Turja, C. Norström, and W. Yi, “Verifying temporal constraints on data in multi-rate transactions using timed automata,” in RTCSA, pp. 263–270, 2000.
  22. J. Møller, J. Lichtenberg, H. R. Andersen, and H. Hulgaard, “Difference decision diagrams,” in Computer Science Logic (Madrid, 1999), vol. 1683, pp. 111–125, Springer, Berlin, Germany, 1999.
  23. R. Alur and D. L. Dill, “A theory of timed automata,” Theoretical Computer Science, vol. 126, no. 2, pp. 183–235, 1994.
  24. J. I. Rasmussen, K. G. Larsen, and K. Subramani, “Resource-optimal scheduling using priced timed automata,” in Proceedings of the 10th International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS '04), K. Jensen and A. Podelski, Eds., vol. 2988 of Lecture Notes in Computer Science, pp. 220–235, Springer, April 2004.
  25. A. V. Goldberg, “Scaling algorithms for the shortest paths problem,” SIAM Journal on Computing, vol. 24, no. 3, pp. 494–504, 1995.
  26. P. Brucker, Scheduling Algorithms, Springer, Berlin, Germany, 2nd edition, 1998.
  27. C.-C. Han and K.-J. Lin, “Scheduling real-time computations with separation constraints,” Information Processing Letters, vol. 42, no. 2, pp. 61–66, 1992.
  28. N. Muscettola, B. Smith, S. Chien, et al., “In-board planning for autonomous spacecraft,” in Proceedings of the 4th International Symposium on Artificial Intelligence, Robotics, and Automation for Space (i-SAIRAS '97), July 1997.
  29. N. Muscettola, P. Morris, B. Pell, and B. Smith, “Issues in temporal reasoning for autonomous control systems,” in Proceedings of the 2nd International Conference on Autonomous Agents, Minneapolis, Minn, USA, 1998.
  30. B. A. Madsen, “An algorithm for exact satisfiability analysed with the number of clauses as parameter,” Information Processing Letters, vol. 97, no. 1, pp. 28–30, 2006.
  31. H. van Maaren and L. van Norden, “Hidden threshold phenomena for fixed-density sat formulae,” in Proceedings of the 6th International Conference on Theory and Applications of Satisfiability Testing, 2004.
  32. R. T. Rockafellar, Convex Analysis, vol. 28 of Princeton Mathematics Series, Princeton University Press, Princeton, NJ, USA, 1970.
  33. J. B. Hiriart-Urruty and C. Lemarechal, Convex Analysis and Minimization Algorithms, Springer, Berlin, Germany, 1993.
  34. M. Dyer, A. Frieze, and R. Kannan, “A random polynomial-time algorithm for approximating the volume of convex bodies,” Journal of the Association for Computing Machinery, vol. 38, no. 1, pp. 1–17, 1991.
  35. M. E. Dyer and A. M. Frieze, “On the complexity of computing the volume of a polyhedron,” SIAM Journal on Computing, vol. 17, no. 5, pp. 967–974, 1988.
  36. K. Subramani, “On identifying simple and quantified lattice points in the 2SAT polytope,” in Proceedings of the 5th International Conference on Artificial Intelligence and Symbolic Computation (AISC '02), J. Calmet, et al., Ed., vol. 2385 of Lecture Notes in Artificial Intelligence, pp. 217–230, Springer, July 2002.
  37. V. Chandru and J. Hooker, Optimization Methods for Logical Inference, Wiley-Interscience Series in Discrete Mathematics and Optimization, John Wiley & Sons, New York, NY, USA, 1999.
  38. K. Truemper, personal communication, 2003.
  39. J. H. Reif, “Symmetric complementation,” Journal of the Association for Computing Machinery, vol. 31, no. 2, pp. 401–421, 1984.
  40. O. Reingold, “Undirected ST-connectivity in log-space,” in Proceedings of the 37th Annual ACM Symposium on Theory of Computing (STOC '05), pp. 376–385, Baltimore, Md, USA, May 2005.
  41. M. Sipser, Introduction to the Theory of Computation. Thompson Course Technology, 2nd edition, 2006.
  42. P. M. VaidyaA. Aho, “An algorithm for linear programming which requires O(((m+n)n2+(m+n)n1.5)L) arithmetic operations,” in Proceedings of the 19th Annual ACM Symposium on Theory of Computing, pp. 29–38, ACM Press, New York, NY, USA, May 1987.
  43. K. Subramani, “On deciding the non-emptiness of 2SAT polytopes with respect to first order queries,” Mathematical Logic Quarterly, vol. 50, no. 3, pp. 281–292, 2004.