Satisfiability Testing Using Simplification in Boolean Rings
|
|
- Lee Dawson
- 5 years ago
- Views:
Transcription
1 Satisfiability Testing Using Simplification in Boolean Rings Guan-Shieng Huang 1, Nachum Dershowitz 2,, and Jieh Hsiang 3 1 Department of Computer Science and Information Engineering, National Chi-Nan University, Puli, Nantou, Taiwan shieng@ncnu.edu.tw 2 Department of Computer Science, Tel-Aviv University, Ramat-Aviv, Israel nachum.dershowitz@cs.tau.ac.il 3 Department of Computer Science and Information Engineering, National Taiwan University, Taipei, Taiwan hsiang@csie.ntu.edu.tw Abstract. We propose a method for testing satisfiability based on Boolean rings. We make heavy use of simplification, but avoid the potential size increase associated with the use of the distributive law. We present several complexity results, which suggest why our method may be relatively effective in many cases. 1 Introduction Automated theorem proving and verification have been topics of research since the earliest days of computers. And practical applications of mathematical logic to computer science have burgeoned, particularly in the domain of verification of hardware, artificial intelligence, and logic-based programming languages. Some applications of logic have attained sufficient maturity to have been packaged in commercial products, most notably the finite model checking technique for verification of protocols and circuits. Attempting to prove correctness of programs and verification of circuits faces many difficulties. The general problem is unsolvable, many restrictions that are solvable are intractable, and those that are fast enough require human intervention. The addition of parallel processes makes the situation that much more complex. Traditionally, verification has been attacked through consideration of the program text, a structured syntax, using correctness-preserving transformations, propagation of assertions, and decision procedures or theorem provers for extracted logical statements. Problems are more amenable to automated techniques when they are finite in nature; hardware verification, constraint solving, and finite mathematics fall into this category. A finite problem can be coded as a Boolean formula, and techniques in propositional theorem proving can then be employed. Model checking is an important method for verifying finite sequential designs, and has been used extensively in recent years. A design is expressed in temporal logic and its implementation as a finite state machine, encoded as a Boolean formula. Then a Research supported in part by the Israel Science Foundation (grant no. 254/01).
2 brute force search of all possible semantic interpretations is made. In bounded model checking, one tries larger and larger paths through the design in a search for a satisfying assignment, which serves as counterexample to the correctness of the design (that is, a bug ) [2]. The major difficulty with model checking is the explosion of states in the temporal model generated, hence, of the number of possibilities that need to be checked. Another concept that has been used successfully in recent years in the context of theorem proving is simplification. Simplification is based on a well-founded notion of simplicity, with which one can delete intermediate results that follow from known (or yet to be derived) simpler facts. Simplifying at each stage as much as possible can greatly reduce storage requirements. Simplification-based theorem proving strategies, popularly known as the term rewriting approach, have been used to solve some difficult problems in mathematics, including the well-known Robbins Algebra Conjecture [22]. For surveys of term rewriting, see [7, 8, 26]. A natural way of incorporating simplification in propositional reasoning is to use the Boolean ring formalism. The axioms of Boolean rings are: xx = x x0 = 0 x1 = x x + x = 0 x + 0 = x x(y + z) = xy + xz xy = yx x + y = y + x (xy)z = x(yz) (x + y) + z = x + (y + z) where + can be interpreted as exclusive-or and (or just juxtaposition) as logicaland,. It is straightforward to express inclusive-or and negation using these two operators: x y x y + x + y x x + 1 The Boolean ring formalism differs from Boolean algebra in that it defines a unique normal form (up to associative and commutativity of the two operators) for each Boolean formula, called a Boolean polynomial (also known as Zhegalkin polynomial [31]), that can be obtained directly by applying the first six axioms from left to right to any formula. Using Boolean rings, however, is not without drawbacks. The main problem is that the distributivity law causes the length of the Boolean polynomial to be exponential in the worst case. This paper focuses on satisfiability testing in a Boolean ring. First, in Section 2, we give a quick overview of approaches for satisfiability testing, followed by a discussion of simplification applied to propositional reasoning. Then Section 4 proposes a David-Putnam like method based on Boolean ring for testing satisfiability. This method separates the set of formulæ into two parts, each of
3 which, on its own, can be dealt with efficiently. It is followed by some suggestions for improvements. Section 6 provides several new complexity results. We show NP-completeness, which immediately implies the completeness of the proposed method. We also show several polynomial time results for restricted classes of Boolean ring formulæ, two of which correspond directly to the two sets mentioned above. These results give justification on why the proposed method may be efficient. In the last section we outline what can be done in the future. In particular, we draw a comparison with Stålmarck s method [25]. 2 Approaches to Satisfiability Given a Boolean formula A, the satisfiability problem is the task of determining whether there exists an assignment of truth values (0 and 1) to the propositional variables in A which makes the formula true. For verification, Boolean formulæ are normally derived from two sources: Boolean functions z i = f i (x 1,..., x n ) representing a circuit or program (registers, for example, can be expressed as a sequence of Boolean bit variables). Specifications that the functions z i and variables x j should satisfy. The validity and equivalence problems are special cases of satisfiability: validity of a formula A is the same as unsatisfiability of its negation A ; equivalence of formulæ A and B is the same as validity of the equality A = B (biconditional A B). As is well-known, the satisfiability problem for formulæ given in conjunctive-normal-from (CNF) is NP-complete. There are three basic approaches to deciding satisfiability: normalize, search, and saturate. Normalize. There are various canonical representations for Boolean formulæ. To decide satisfiability, one can transform a formula into a normal form that clearly distinguishes between satisfiable and unsatisfiable cases. Such representations include: disjunctive normal form (DNF), Boolean-ring normal form (see below); conditional normal form (as in OBDDs; see below). Conjunctive normal form, on the other hand, does not provide a unique form for satisfiable formulæ, unless one finds all prime implicants. For efficiency, simplifications (like x0 = 0) may be applied during the process of converting to normal form. Any normal form can of necessity be exponentially larger than the original. Ordered Binary Decision Diagrams (OBDDs) [1] are commonly used now in the VLSI community for verification of circuits, in conjunction with the symbolic model checking method of [4]. They are also used in many software verification systems including concurrent systems. An OBDD is a directed acyclic graph, each node labeled by a Boolean variable, with two out-edges labeled 1 and 0, and two additional nodes, 1 and 0. There is a total ordering on the variables, and therefore the nodes, such that there can only be a path from variable x to y if x < y. An OBDD is constructed from a Boolean formula by manipulating subgraphs and collapsing identical ones. An OBDD is therefore a data structure
4 that represents a fully specified Boolean function. Each operation is very efficient, as long as the size of the intermediate OBDDs in the construction stay small. Unfortunately, the diagram can be of exponential size, depending on the choice of ordering of the variables (and choosing an ordering minimizing the size is NP-complete). Though one can transform a formula A into OBDD form that is not exponentially larger than A and which preserves satisfiability/unsatisfiability (e.g. Tseiten s transformation), the result is not unique it requires the addition of new propositional variables, which, of course, increases the exponential cost of testing for satisfiability. Search. The naïve (British Museum) search method involves attempting each assignment to the variables in a formula (as in a truth table) until it evaluates to 1 (true). An alternative is to extend partial assignments, one variable at a time, simplifying with each new assignment. That has the frequent effect of showing a partially assigned formula to be true (or false), pruning the remainder of the search (or branch). In any case, further assignments are made to the simplified formula. Exponential complexity comes from the exponential size of the search space of all possible assignments. Evaluating each fully-instantiated (variable-free) expression takes about 20 steps on the average (all equal-size formulæ containing logical and, or, not, true, and false being equi-probable) [9]. The Davis-Putnam-Loveland (DPL) procedure [6] was the first attempt to solve the satisfiability problem efficiently. It is essentially a backtracking strategy with heuristics to minimize the formula; a value is assigned to a variable and the formula is recursively solved, trying another value if there is no solution. At each step, one removes tautological clauses, clauses with monotonic variables (those occurring only positively or negatively), and sets literals occurring singly to 1. There are many fast implementations based on DPL procedure, for example, [10, 19, 21, 23, 30]. Saturate. This traditional method to prove a theorem in logic uses inference rules to generate the consequences of a given formula. Logically, an unsatisfiable formula entails all formulæ. So, to establish satisfiability of formula A, one refutes its negation A, by inferring a contradiction (e.g. xx ) from A. The total number of consequences is in general exponential. Most nontrivial proofs require some form of case splitting. Let A[x] denote the current set of formulæ, containing occurrences of the propositional variable x. From A[x], one may infer the disjunction A[0] A[1], where A[0] and A[1] denote the formulæ after making the assignment x = 0 or x = 1, respectively. The original formulation of Davis and Putnam is such a method. Given a CNF formula A[x], one splits on x by computing A[0] and A[1], which is followed by merging, which consists of converting (by distributing and simplifying) their disjunction A[0] A[1] to CNF. More generally, one can split on any formula. Let A[B] be a formula containing a sub-formula B. From A one may infer anything that follows from the disjunction A[1]B A[0]B. In the clausal setting this is the ground resolution rule: D B, B C D C. In the sequent setting, this
5 Table 1. Comparison of DPL and OBDDs OBDD DPL Prover Method Normalize Search Saturate Strategy constructing decision removing branch and merge; diagram; merging redundancy; series-parallel search identical subgraphs assigning values Data type diagrams clauses graphs Implementation dag syntax tree triples Pros often compact doesn t use much often fast space inherently represents similar sub-circuits Cons exponential space slow average case efficiency highly depends on dependent on clauses/variables ordering of variables ratio represents equivalences is the consensus rule, B D, B C D C. One recent saturation-based approach is Stålmarck s Prover [24]. Table 1 compares some aspects of three popular satisfiability methods. The great advantage of OBDDs over DPL is that, with a suitable and fortunate choice of variable ordering, the size of the OBDD can be very small and therefore very tractable. Much of this comes from the sharing of identical subgraphs in the construction process. On the other hand, OBDDs are considerably more sensitive to the chosen order of variables than DPL is [27]. Multipliers, however, are notorious for resulting in OBDDs that are too large to handle, regardless of order. 3 Simplification To counter the certain exponential cost of naïve realizations of satisfiability methods, simplification at intermediate stages is of paramount importance. Simplification can be defined as replacing one or more entries in the current database with simpler entries (in some well-founded sense) by making polynomial-time inferences. Such steps avoid the potentially exponential aspect of the approach (case analysis, splitting, merging, distribution). In the search approach, after assigning 0 or 1 to a variable, simplifiers like x0 = 0, x1 = x, x 0 = x, and x 1 = 1 (and analogous ones for other Boolean operators) should be applied, regardless of the specific manner in which formulæ are represented, since these rules may result in the deletion of all occurrences of some other variables. In the normalization approach, the same simplifiers can reduce dramatically the size of formulæ. Regardless of the method, it is helpful to make cheap and valuable deductions which may enable additional simplifications as early as possible. In
6 particular, virtually all approaches employ some mechanism for detecting necessary assignments. The unit-clause rule in DPL (if the target formula is of the form xb, for some propositional variable x, then for it to be satisfiable it must be that x = 1, so replace xb[x] by B[1], i.e. propagate, and then simplify) is a prime example of this essential ingredient. Indeed, the main mechanism for inference in OBDD systems is Boolean constraint propagation, which is just the transitive closure of the unit-clause rule, applied in this context [29]. Simplification rules used in DPL and OBDD provers include tautology, unit, pure literal, subsumption, and failed literal. Tautology and pure-literal are often omitted: tautological clauses occur only at the onset; literals that occur with only one parity are uncommon and checking for them is expensive. Boolean rings (BRs) are an especially convenient framework for simplification. Distributivity is a potentially expensive step, even when the subterm x is shared in some directed-acyclic-graph. Propositional formulæ can be converted to Boolean ring (exclusive-or) normal form (BRNF): tautologies reduce to 1; contradictions (unsatisfiable formulæ) to 0; contingent formulæ to neither. (See [12].) To begin with, rather than present the whole given formula as one big equation, conjunctions AB = 1 are divided into two, A = 1 and B = 1, and inclusive disjunctions A B = 0 into A = 0, B = 0. A Gröbner basis is constructed from the initial set of equations plus idempotence (xx = x for each propositional variable x), the BR axioms are applied at each step, and equations are interreduced by using each as a simplifier. The resultant representation a set of equations between Boolean polynomials is unique up to associativity and commutativity of + and. By imposing an ordering on variables and extending it to monomials, a unique normal form can be obtained. Efficient techniques (congruence closure, Gröbner bases) can be applied to the task. (See [3].) As an alternative, the Boolean ring formalism can be used in a search-based context, akin to DPL. Splitting is done on variables, as usual, but formulæ are kept as BR equations, simplified by the first five axioms. (See [13].) 4 Using Boolean Rings From the effectiveness point of view, the main difficulty with the Boolean ring approach is the distributivity law, which expands an expression and duplicates its variables. Here we introduce a new approach which gets around this problem. A linear equation is a Boolean equation in which each monomial is either a single variable or a constant; it takes the form x 1 + +x n = 1 or x 1 + +x n = 0, where the x i are distinct propositional variables. A binomial equation is a Boolean equation with at most two monomials, that is, an equation of one of the three forms: m = m, m = 0, or m = 1, where m and m are products of distinct propositional variables. Degenerate equations 0 = 0, 1 = 1, or 1 = 0 can be both linear and binomial. Let B be a set of binomial equations and L be a set of linear equations over the propositional variables. Instead of solving a general set of Boolean-ring
7 equations (e.g. xy + x + y = 0 implies x = 0 and y = 0), we will decide the satisfiability of B L. As will be seen, we will severely limit the simplification between B and L. To be more precise, given a pair B L and an ordering > on monomials, the inferences rules are as follows: 1. Termination Test. If 1 = 0 has been inferred, the system is unsatisfiable. 2. Tautology Deletion. Remove all trivial equations A = A. 3. Decomposition. Decompose any equation x 1 x 2 x k = 1 in B into x 1 = 1,..., x k = Unit Rule. Use all unit equations of the form x = 0 or x = 1 in B L to simplify equations in B L. 5. Equivalence Rule. If a rule such as x = y happens, replace one variable by the other in the whole database. 6. Simplification. Reduce one equation by another within B or L, but not across the two. 7. Splitting Rule. Split the system of equations by considering B {x = 1} and B {x = 0}, individually, for some propositional variable x. Equations in B and L are processed independently except for the Unit Rule and Equivalence Rule. Splitting on x and applying the unit rule will eliminate x from both B {x = 1} L and B {x = 0} L. Relatively fast methods exist for processing each of the two components. The simplification step is not needed for completeness, but rather to improve search efficiency. The method presented above is complete for propositional reasoning. In terms of complexity our method has many advantages. First, it saves on the effort of implementation since commercial packages can be used to handle the computation within the two sets. Furthermore, distributivity is not needed when simplifying Boolean terms. This is because simplification is not performed across the two sets. In conventional Boolean ring based methods the length of a Booleanring equation can become very long during simplifications when distributivity is applied over a sum of monomials, which is a major source of inefficiency. (For example, to simplify xy = 0 by y = s+t+u+v, we would have xs+xt+xu+xv.) Also, in our approach the length of a non-linear equation is at most two. 4.1 An Example The following example shows how the method works. Suppose we want to prove the validity of the formula (p q) ( q s) ( s p) ( p r) ( r p t) (t r). In clausal form its negation becomes six clauses: {(p q), ( q s), ( s p), ( p r), ( r p t), ( t r)}.
8 A clause l 1 l 2 l m can be turned into an equation by expanding (l 1 + 1)(l 2 + 1) (l m + 1) = 0. Thus, clauses 2 through 6 can be converted into Boolean equations that belong to the set B. qs = q (1) sp = s (2) pr = p (3) prt = pr (4) rt = 0 (5) In order to convert the first clause, p q, into the forms suitable for B and L, new variable should be added. We first note that the clause is equivalent to (p + 1)(q + 1) = 0. By adding one new variables u, the above equation becomes p + u = 1 (6) qu = u (7) Note that Eq. (6) is in L, whereas Eq. (7) belongs to B. The Simplification inference rule can now be performed within B. First Eq. (5) simplifies Eq. (4) into which then simplifies Eq. (3) into pr = 0 (8) p = 0. (9) Eq. (9) invokes the Unit Rule and is used to simplify equations in both B and L. Then Eqs. (2) and (6) become which further simplifies Eq. (1) into s = 0 (10) u = 1 (11) q = 0. (12) Finally, Eqs. (11) and (12) combined simplify Eq. (7) into the contradiction 1 = 0 and conclude the proof. 5 Improvements It is advantageous to allow some cross fertilization between B and L so that useful equations can be carried from one set to another. We now introduce some inference rules to add equations to B if they are logical consequences of L. Consider the linear equation y 1 + y 2 + y 3 = 1. By assigning the value 1 to variables y 1 and y 2, the equation become y 3 = 1 since the even number of 1 s
9 Table 2. Inferred binomial equations from y 1 + y y k = c k c inferred binomial equation # equations added even 0 y 1y 2 y k = y 1y 2 y k 1 k even 1 y 1y 2 y k = 0 1 odd 0 y 1y 2 y k = 0 1 odd 1 y 1y 2 y k = y 1y 2 y k 1 k cancelled each other out. Thus, we conclude binomial equation y 1 y 2 y 3 = y 1 y 2 is its logical consequence. The equations produced from cross breeding can be added to B, and are summarized in Table 2. We emphasize that any linear equation can breed some binomial equation(s) according to Table 2. Thus, if we have x 1 + x 2 + x 3 = 0 and x 2 + x 3 + x 4 = 1 in L, we can add x 1 x 2 x 3 = 0, x 2 x 3 x 4 = x 2 x 3, x 2 x 3 x 4 = x 2 x 4, x 2 x 3 x 4 = x 3 x 4 to B. More interesting, if we sum up the two linear equations, we get x 1 + x 4 = 1, which infers x 1 x 4 = 0. It would be better if shorter equations could be derived. A shorter equation has more chance to simplify the others, and also after performing simplification, shorter equations are retained. Additional simplifications within B is also possible. Suppose we have m 1 m 2 = m 3 m 4 and m 1 m 3 = 0 where m i s are monomials. Since either m 1 or m 3 equals 0, it is evident that either m 1 m 2 or m 3 m 4 equals 0. However, m 1 m 2 equals m 3 m 4, hence both must be 0. Therefore, we can use m 1 m 3 = 0 to simplify m 1 m 2 = m 3 m 4 into two equations m 1 m 2 = 0 and m 3 m 4 = 0. Another potential improvement is to use local search to help discover relations between variables and generate new equations. These essential relations can help reduce efforts in exhaustive search. For example, if we can discover that variables x and y have the same truth value, we can split on x and ignore y. The idea of performing shallow inferences to derive essential relations is central to the method of recursive learning [17] (cf. [24]). Let V be the set of propositional variables. An assignment A on V is a set of literals such that for each x V either x A or x A but not both. A subset P of an assignment A is called a partial assignment. A set of partial assignments Π is called a fence. A fence is complete if for any assignment A on V there exists P Π such that P A. The purpose for using a complete fence is to capture a semantic tree, as defined in automated theorem proving, without actually generating the tree. A schema is a Boolean equation that stands for any replacement of its metavariables by propositional variables of the given problem. For example, U = U V is a schema representing x = xy or y = yx, if U and V range over {x, y}. (It also represents the trivial equations x = xx and y = yy, which we ignore.) A schema with m variables is called an m-place schema. As an example, given two variables x and y, the possible 2-place schemata are {U = V, U + V = 1, UV = 0, UV = U}.
10 An instance of any of the schemata can be added to B or to L, as appropriate. Thus we are looking for ways to easily infer an instance of a given schema by performing only the case analyses covered by the given fence. One plan to discover essential relations is as follows: 1. Consider a schema φ and fence Π. 2. Let W be a subset of the propositional variables in the problem such that for any x W, one of x and x is in U(π), the set of all unit equations that can be inferred from B L π without search (splitting), for each π Π. In other words, W is a set of variables that are fully (and cheaply) determined by each case of Π. 3. Suppose that φ is an m-place schema. Choose all combinations of m variables out of W, substitute them in φ, and check if the resultant formula is satisfiable by all assignments π Π. If yes, it is an acquired essential relation. As a trivial example, xy = 0 (an instance of the schema UV = 0) can be inferred from the system {x + y = 1} using the fence {{x 0}, {x 1}}, since each assignment in the fence also determines the value of y. Essential relations are logical consequence of the input formulæ, and thus can be added to the system. 6 Completeness and Complexity In this section we present several complexity results, including a reduction from SAT to a corresponding problem in Boolean ring, and some polynomial-time subclasses. These results serve two purposes. The completeness of the method proposed in the previous section comes as a direct consequence of the first result. The other results give some evidence as to why our method may be quite effective. Let Linear-BRSAT be the problem that intends to solve a system of linear equations in Boolean ring. It can be seen that Gaussian elimination can solve Linear-BRSAT in time O(n 3 ). Faster algorithm could be possible. An algorithm in [5] takes time O(n ). Theorem 1. Linear-BRSAT is solvable in polynomial time. One the other hand, let Binomial-BRSAT be the problem to solve a system of binomial equations. Note that the well-known Horn-SAT is within the class, since any Horn clause x 1 x m y is equivalent to x 1 x m y = x 1 x m in Boolean ring. Indeed, Binomial-BRSAT defines the same Boolean functions as Horn-SAT does, though it is not straightforward. Theorem 2. Binomial-BRSAT is linear-time solvable. Proof. If 1 = 0 is in B, then it is unsatisfiable, Variables appearing in an equation m = 1 can be each assigned 1. These variables can be used to simplify the other
11 equations and this process can continue until all equations are of the form m = 0 or m = m. Observe that these remaining equations can be easily satisfied just by assigning 0 to all variables appearing in them. Hence, the process can terminate in linear time. Despite the fact that Linear-BRSAT and Binomial-BRSAT are easy solvable, their combination, the B L (defined in Section 4) as one would expect, is NPcomplete. Recall that a clause l 1 l 2 l m can be easily converted into an equation by expanding (l 1 + 1)(l 2 + 1) (l m + 1) = 0 (on Page 8). If there are more than two positive literals over the l s, the final equation would contain at least four monomials. To avoid this, we introduce new Boolean variables that serve as the complement of the positive literals. Suppose l i is a positive literal, a new variable l i and a new equation l 1 + l i = 1 are introduced, and l i + 1 is replaced by l i. Finally, several linear equations and one binomial equations represent the clause. Theorem 3. Solving B L is NP-complete. Alternative proof of Theorem 3 is as follows. We could reduce any Boolean formula into a triplet system in Boolean ring that preserves the satisfiability. A Boolean formula is built up recursively from binary operators, ; unary operator ; and propositional variables. Logical-or could be further replaced by transforming y z to ( y z). A parse tree can represent such a formula. At each node of the parse tree, we associate a label that is a Boolean variable logically equivalent to the corresponding subtree. The label of a variable is itself. The relationships between the labels are 1. x = yz if x is the label of F, F = G H, and the labels of G and H are y and z, respectively; 2. x + x = 1 if x is the label of F, x is the label of G, and F = G. And finally for the the label of the root, say r, we add r = 1 to the triplet system. The above transformation is similar to the one proposed in [25]. Note that x = yz is binomial and x + x = 1 is linear in the above transformation. The last equation r = 1 could be eliminated by constraint propagation, which may lead 0 = yz to happen. Hence we could further restricted our B L system, and the resulting class is still NP-complete. We define 3-BRSAT to be subclass of B L, with the restriction that (1) linear equations are of the form x + y = 1; (2) binomial equations can only be either yz = 0 or yz = x. (Note that x, y, and z are meta-variables and can be the same propositional variable.) From the above explanation, clearly 3-BRSAT is NP-complete. Theorem 3 directly implies the completeness of our method. This is because splitting alone is complete for propositional calculus, and the reduction given in the proof implies that every Boolean formula can be converted into the B L form.
12 7 Discussion Simplification is more time-consuming than splitting on a variable or evaluating a truth-assignment. Splitting a variable can usually be carried out in linear time, but we do not know of any linear-time algorithm for checking or performing simplification. An O(n 2 )-algorithm for simplification can be easily found, just by simply examining all possible combinations of two equations in the input. Whether or not simplification can significantly reduce the number of splittings is an interesting issue. In experiments we performed with an implementation of a naïve Boolean ring based Davis-Putnam method, the number of splittings were reduced by 30% [15]. This saving, however, came the price of a time-consuming simplification process, mainly because in that implementation, distributivity was needed, which is not the case with the method proposed here. It should also be interesting to further identify subclasses of Boolean rings for which the satisfiability testing can be accomplished by simplification alone without the Splitting Rule; binomial-brsat was such an example. Simplification for CNF formulæ is also discussed in [20]. The author used simplification to preprocess CNF formulæ coming from circuit testing (DIMACS) [16], bounded model checking [2], combinatorial equivalence checking [18], and superscalar processor verification [28]. The number of variables reduces to onethird of the initial formulæ in many cases as reported in [20]. Consequently, efficiency is gained to solve these instances. The recent approach of Stålmarck [25, 11] has been used for testing satisfiability of several industrial problems. One successful example is the verification of railway interlocking systems that involved some 100,000 propositional variables. The performance of this algorithm is much more sensitive to the structure of a Boolean formula rather than to the number of propositional variables. It tries to identify equivalences between subformulæ. If two complementary literals are found to be equivalent (or 1 0), then unsatisfiability is derived. Suppose that φ(x 1,..., x m ) and φ (x 1,..., x m) are different formulations of the same Boolean function (with x i corresponding to x i ). Then the equivalence between φ and φ can be proved by splitting on m 1 variables by Stålmarck s method provided that the equivalences between x i and x i have been derived. (In fact, Stålmarck does not only define the equivalence on subformulæ; he also defines them together with the negation of subformulæ. Hence, a slight modification on φ and φ with consideration of polarity is needed, but the result is similar.) For example, let x 1 be x + y, x 1 be (x y)( x y), x 2 be 1 + z + t, and x 2 be (z t)( z t). Also let φ(x 1, x 2 ) be x + y and φ (x 1, x 2) be (x y)( x y). Then x 1 x 1 and x 2 x 2 can be proved by splitting on x and on z, respectively. Based on this fact, the equivalence between φ and φ can also be deduced by splitting on x 1. (Since x 1 is equivalent to x 1, splitting on x 1 also causes splitting on x 1.) Boolean rings are a suitable representation for such an approach for the following reasons: 1. Let C be the set of Boolean formulæ over all binary and unary operations, D be over {,, }, and B over {1, +, }. As shown in [14], any formula
13 in C is linearly reducible to one in B, but may not be linearly reducible to one in D. Hence, Boolean-ring formulæ (i.e. B) can preserve the structure of any Boolean formulæ, while in Boolean algebra that can only be done after introducing additional variables. This property is important because Stålmarck s method is sensitive to the structure of the input formula. 2. Simplification can be employed as an additional inference rule. 3. Associativity and commutativity of + and can be incorporated more easily. 4. Essential relations can be considered as a generalization of Stålmarck s method, by setting the schemata to be {X + Y = 0, X + Y = 1} and the complete fence to branch on variables. References 1. R. E. Bryant. Symbolic Boolean manipulation with ordered binary-decision diagrams, ACM Computing Survey, 24 (1992), pp A. Biere, A. Cimatti, E. M. Clarke and Y. Zhu. Symbolic model checking without BDDs, in Tools and Algorithms for the Analysis and Construction of Systems (TACAS 99), Lecture Notes in Computer Science, 1579 (1999), Springer-Verlag. 3. B. Buchberger. Gröbner basis: An algorithmic method in polynomial ideal theory, in Recent Trends in Multidimensional Systems Theory, N. Bose, ed., D. Reidel Publi. Co., J. R. Burch, E. M. Clarke, K. L. McMillan, D. L. Dill, and J. Hwang. Symbolic model checking: states and beyond, in Proceedings of the Fifth Annual Symposium on Logic in Computer Science, June D. Coppersmith and S. Winograd. Matrix multiplication via arithmetic progressions, in Proceedings of the Nineteenth Annual ACM Symposium on Theory of Computing, New York City, May 1987, pp M. Davis, G. Logemann, and D. Loveland. A machine program for theorem proving, Communication of the ACM, 5 (1962), pp N. Dershowitz and J.-P. Jouannaud. Rewrite systems, in Handbook of Theoretical Computer Science, J. van Leeuwen, ed., vol B: Formal Methods and Semantics, North Holland, Amsterdam, N. Dershowitz and D. A. Plaisted. Rewriting, Chap. 9, in Handbook of Automated Reasoning, vol. 1, A. Robinson and A. Voronkov, eds., Elsevier, 2001, pp N. Dershowitz and N. Lindenstrauss. Average time analyses related to logic programming, in Proceedings of the Sixth International Conference on Logic Programming (Lisbon, Portugal), G. Levi and M. Martelli (eds.), MIT Press, 1989, pp E. Goldberg, and Y. Novikov. BerkMin: a fast and robust SAT-solver, in Design, Automation, and Test in Europe (DATE 02), March 2002, pp J. Harrison. Stålmarck s algorithm as a HOL derived rule, in Lecture Notes in Computer Science, 1125 (1996), Springer-Verlag, pp Proceedings of the 9th International Conference on Theorem Proving in Higher Order Logics, TPHOLs J. Hsiang and N. Dershowitz. Rewrite methods for clausal and non-clausal theorem proving, in Proceedings of the Tenth International Colloquium on Automata, Languages and Programming (Barcelona, Spain), Lecture Notes in Computer Science, 154, Berlin, July 1983, European Association of Theoretical Computer Science, Springer-Verlag, pp
14 13. J. Hsiang and G. S. Huang. Some fundamental properties of Boolean ring normal forms, DIMACS Series in Discrete Mathematics and Theoretical Computer Science, 35 (1997), pp J. Hsiang and G. S. Huang. Compact representation of Boolean formulas, Chinese Journal of Advanced Software Research, R. L. Jan. Experimental results on propositional theorem proving with Boolean ring, Master s thesis, National Taiwan University, D. S. Johnson and M. A. Trick. Second DIMACS implementation challenge, American Mathematical Society, W. Kunz. Recursive learning: a new implication technique for efficient solutions to CAD problems test, verification, and optimization, IEEE Trans. on Computer- Aided Design of Integrated Circuits and Systems, 13 (1994), pp W. Kunz and D. Stoffel. Reasoning in Boolean networks, Kluwer Academic Publishers, C. M. Li. A constrained-based approach to narrow search trees for satisfiability, Information processing letters, 71 (1999), pp J. P. Marques-Silva. Algebraic simplification techniques for propositional satisfiability, Technical Report RT/01/2000, INESC, March J. P. Marques-Silva, and K. A. Sakallah. GRASP a search algorithm for propositional satisfiability, IEEE Transactions on Computers, 48 (1999), pp W. McCune. Solution of the Robbins problem, Journal of Automated Reasoning, 19 (December 1997), pp M. W. Moskewicz, C. F. Madigan, Y. Zhao, L. Zhang, and S. Malik. Chaff: engineering an efficient SAT solver, in Proceedings of the 38th Design Automation Conference (DAC 01), June M. Sheeran and G. Stålmarck. A tutorial on Stålmarck s proof procedure for propositional logic, in Proceedings of the 2nd Intl. Conference on Formal Methods in Computer-Aided Design, Lecture Notes in Computer Science, (Nov. 1998), Springer- Verlag, pp G. Stålmarck. System for determining propositional logic theorems by applying values and rules to triplets that are generated from Boolean formula, United States Patent number , See also Swedish Patent Terese. Term rewriting systems, M. Bezem, J. W. Klop and R. de Vrijer, eds., Cambridge Tracts in Theoretical Computer Science, 55 (2003), Cambridge University Press. 27. T. E. Uribe and M. E. Stickel. Ordered binary decision diagrams and the Davis- Putnam procedure, in First International Conference on Constraints in Computational Logics, Lecture Notes in Computer Science, 845 (1994), Springer-Verlag, pp M. N. Velev and R. E. Bryant. Superscalar processor verification using efficient reductions from the logic equality with uninterpreted functions to propositional logic, in Proceedings of Correct Hardware Design and Vefification Methods, Lecture Notes in Computer Science, 1703 (1999), Springer-Verlag, pp R. Zabih and David A. McAllester. A rearrangement search strategy for determining propositional satisfiability, in Proceedings of the National Conference on Artificial Intelligence, (1988), pp H. Zhang. SATO: An efficient propositional prover, in Proc. of the International Conference on Automated Deduction, Lecture Notes in Computer Science, (1997), Springer-Verlag. 31. I. I. Zhegalkin. On a technique of evaluation of propositions in symbolic logic, Matematicheskii Sbornik, 34 (1927), pp
Formal Verification Methods 1: Propositional Logic
Formal Verification Methods 1: Propositional Logic John Harrison Intel Corporation Course overview Propositional logic A resurgence of interest Logic and circuits Normal forms The Davis-Putnam procedure
More informationComputational Logic. Davide Martinenghi. Spring Free University of Bozen-Bolzano. Computational Logic Davide Martinenghi (1/30)
Computational Logic Davide Martinenghi Free University of Bozen-Bolzano Spring 2010 Computational Logic Davide Martinenghi (1/30) Propositional Logic - sequent calculus To overcome the problems of natural
More informationSolvers for the Problem of Boolean Satisfiability (SAT) Will Klieber Aug 31, 2011
Solvers for the Problem of Boolean Satisfiability (SAT) Will Klieber 15-414 Aug 31, 2011 Why study SAT solvers? Many problems reduce to SAT. Formal verification CAD, VLSI Optimization AI, planning, automated
More informationDecision Procedures for Satisfiability and Validity in Propositional Logic
Decision Procedures for Satisfiability and Validity in Propositional Logic Meghdad Ghari Institute for Research in Fundamental Sciences (IPM) School of Mathematics-Isfahan Branch Logic Group http://math.ipm.ac.ir/isfahan/logic-group.htm
More informationPythagorean Triples and SAT Solving
Pythagorean Triples and SAT Solving Moti Ben-Ari Department of Science Teaching Weizmann Institute of Science http://www.weizmann.ac.il/sci-tea/benari/ c 2017-18 by Moti Ben-Ari. This work is licensed
More informationLOGIC PROPOSITIONAL REASONING
LOGIC PROPOSITIONAL REASONING WS 2017/2018 (342.208) Armin Biere Martina Seidl biere@jku.at martina.seidl@jku.at Institute for Formal Models and Verification Johannes Kepler Universität Linz Version 2018.1
More informationCOMP219: Artificial Intelligence. Lecture 20: Propositional Reasoning
COMP219: Artificial Intelligence Lecture 20: Propositional Reasoning 1 Overview Last time Logic for KR in general; Propositional Logic; Natural Deduction Today Entailment, satisfiability and validity Normal
More informationPart 1: Propositional Logic
Part 1: Propositional Logic Literature (also for first-order logic) Schöning: Logik für Informatiker, Spektrum Fitting: First-Order Logic and Automated Theorem Proving, Springer 1 Last time 1.1 Syntax
More informationPropositional Logic: Evaluating the Formulas
Institute for Formal Models and Verification Johannes Kepler University Linz VL Logik (LVA-Nr. 342208) Winter Semester 2015/2016 Propositional Logic: Evaluating the Formulas Version 2015.2 Armin Biere
More informationSAT Solvers: Theory and Practice
Summer School on Verification Technology, Systems & Applications, September 17, 2008 p. 1/98 SAT Solvers: Theory and Practice Clark Barrett barrett@cs.nyu.edu New York University Summer School on Verification
More informationFrom SAT To SMT: Part 1. Vijay Ganesh MIT
From SAT To SMT: Part 1 Vijay Ganesh MIT Software Engineering & SMT Solvers An Indispensable Tactic for Any Strategy Formal Methods Program Analysis SE Goal: Reliable/Secure Software Automatic Testing
More informationAn instance of SAT is defined as (X, S)
SAT: Propositional Satisfiability 22c:45 Artificial Intelligence Russell & Norvig, Ch. 7.6 Validity vs. Satisfiability Validity: A sentence is valid if it is true in every interpretation (every interpretation
More informationBasing Decisions on Sentences in Decision Diagrams
Proceedings of the Twenty-Sixth AAAI Conference on Artificial Intelligence Basing Decisions on Sentences in Decision Diagrams Yexiang Xue Department of Computer Science Cornell University yexiang@cs.cornell.edu
More informationBoolean Rings for Intersection-Based Satisfiability
Boolean Rings for Intersection-Based Satisfiability Nachum Dershowitz 1,,JiehHsiang 2,, Guan-Shieng Huang 3,, and Daher Kaiss 4 1 School of Computer Science, Tel Aviv University, Ramat Aviv, Israel nachumd@tau.ac.il
More information6. Logical Inference
Artificial Intelligence 6. Logical Inference Prof. Bojana Dalbelo Bašić Assoc. Prof. Jan Šnajder University of Zagreb Faculty of Electrical Engineering and Computing Academic Year 2016/2017 Creative Commons
More information1 Algebraic Methods. 1.1 Gröbner Bases Applied to SAT
1 Algebraic Methods In an algebraic system Boolean constraints are expressed as a system of algebraic equations or inequalities which has a solution if and only if the constraints are satisfiable. Equations
More informationTowards an Efficient Tableau Method for Boolean Circuit Satisfiability Checking
Towards an Efficient Tableau Method for Boolean Circuit Satisfiability Checking Tommi A. Junttila and Ilkka Niemelä Helsinki University of Technology Dept. of Computer Science and Engineering Laboratory
More informationCOMP9414: Artificial Intelligence Propositional Logic: Automated Reasoning
COMP9414, Monday 26 March, 2012 Propositional Logic 2 COMP9414: Artificial Intelligence Propositional Logic: Automated Reasoning Overview Proof systems (including soundness and completeness) Normal Forms
More informationEECS 219C: Computer-Aided Verification Boolean Satisfiability Solving III & Binary Decision Diagrams. Sanjit A. Seshia EECS, UC Berkeley
EECS 219C: Computer-Aided Verification Boolean Satisfiability Solving III & Binary Decision Diagrams Sanjit A. Seshia EECS, UC Berkeley Acknowledgments: Lintao Zhang Announcement Project proposals due
More informationClause/Term Resolution and Learning in the Evaluation of Quantified Boolean Formulas
Journal of Artificial Intelligence Research 1 (1993) 1-15 Submitted 6/91; published 9/91 Clause/Term Resolution and Learning in the Evaluation of Quantified Boolean Formulas Enrico Giunchiglia Massimo
More informationTopics in Model-Based Reasoning
Towards Integration of Proving and Solving Dipartimento di Informatica Università degli Studi di Verona Verona, Italy March, 2014 Automated reasoning Artificial Intelligence Automated Reasoning Computational
More informationFirst-order resolution for CTL
First-order resolution for Lan Zhang, Ullrich Hustadt and Clare Dixon Department of Computer Science, University of Liverpool Liverpool, L69 3BX, UK {Lan.Zhang, U.Hustadt, CLDixon}@liverpool.ac.uk Abstract
More informationCS156: The Calculus of Computation
CS156: The Calculus of Computation Zohar Manna Winter 2010 It is reasonable to hope that the relationship between computation and mathematical logic will be as fruitful in the next century as that between
More informationFirst-Order Theorem Proving and Vampire
First-Order Theorem Proving and Vampire Laura Kovács 1,2 and Martin Suda 2 1 TU Wien 2 Chalmers Outline Introduction First-Order Logic and TPTP Inference Systems Saturation Algorithms Redundancy Elimination
More informationClassical Propositional Logic
Classical Propositional Logic Peter Baumgartner http://users.cecs.anu.edu.au/~baumgart/ Ph: 02 6218 3717 Data61/CSIRO and ANU July 2017 1 / 71 Classical Logic and Reasoning Problems A 1 : Socrates is a
More informationComp487/587 - Boolean Formulas
Comp487/587 - Boolean Formulas 1 Logic and SAT 1.1 What is a Boolean Formula Logic is a way through which we can analyze and reason about simple or complicated events. In particular, we are interested
More informationFoundations of Artificial Intelligence
Foundations of Artificial Intelligence 8. Satisfiability and Model Construction Davis-Putnam-Logemann-Loveland Procedure, Phase Transitions, GSAT Joschka Boedecker and Wolfram Burgard and Bernhard Nebel
More informationCompiling Knowledge into Decomposable Negation Normal Form
Compiling Knowledge into Decomposable Negation Normal Form Adnan Darwiche Cognitive Systems Laboratory Department of Computer Science University of California Los Angeles, CA 90024 darwiche@cs. ucla. edu
More informationWarm-Up Problem. Is the following true or false? 1/35
Warm-Up Problem Is the following true or false? 1/35 Propositional Logic: Resolution Carmen Bruni Lecture 6 Based on work by J Buss, A Gao, L Kari, A Lubiw, B Bonakdarpour, D Maftuleac, C Roberts, R Trefler,
More informationFoundations of Artificial Intelligence
Foundations of Artificial Intelligence 31. Propositional Logic: DPLL Algorithm Malte Helmert and Gabriele Röger University of Basel April 24, 2017 Propositional Logic: Overview Chapter overview: propositional
More informationUSING SAT FOR COMBINATIONAL IMPLEMENTATION CHECKING. Liudmila Cheremisinova, Dmitry Novikov
International Book Series "Information Science and Computing" 203 USING SAT FOR COMBINATIONAL IMPLEMENTATION CHECKING Liudmila Cheremisinova, Dmitry Novikov Abstract. The problem of checking whether a
More informationAgenda. Artificial Intelligence. Reasoning in the Wumpus World. The Wumpus World
Agenda Artificial Intelligence 10. Propositional Reasoning, Part I: Principles How to Think About What is True or False 1 Introduction Álvaro Torralba Wolfgang Wahlster 2 Propositional Logic 3 Resolution
More informationLogic: Propositional Logic (Part I)
Logic: Propositional Logic (Part I) Alessandro Artale Free University of Bozen-Bolzano Faculty of Computer Science http://www.inf.unibz.it/ artale Descrete Mathematics and Logic BSc course Thanks to Prof.
More informationDetecting Backdoor Sets with Respect to Horn and Binary Clauses
Detecting Backdoor Sets with Respect to Horn and Binary Clauses Naomi Nishimura 1,, Prabhakar Ragde 1,, and Stefan Szeider 2, 1 School of Computer Science, University of Waterloo, Waterloo, Ontario, N2L
More informationIntroduction to Artificial Intelligence Propositional Logic & SAT Solving. UIUC CS 440 / ECE 448 Professor: Eyal Amir Spring Semester 2010
Introduction to Artificial Intelligence Propositional Logic & SAT Solving UIUC CS 440 / ECE 448 Professor: Eyal Amir Spring Semester 2010 Today Representation in Propositional Logic Semantics & Deduction
More informationPropositional Logic: Methods of Proof (Part II)
Propositional Logic: Methods of Proof (Part II) You will be expected to know Basic definitions Inference, derive, sound, complete Conjunctive Normal Form (CNF) Convert a Boolean formula to CNF Do a short
More informationTecniche di Verifica. Introduction to Propositional Logic
Tecniche di Verifica Introduction to Propositional Logic 1 Logic A formal logic is defined by its syntax and semantics. Syntax An alphabet is a set of symbols. A finite sequence of these symbols is called
More informationFirst-Order Theorem Proving and Vampire. Laura Kovács (Chalmers University of Technology) Andrei Voronkov (The University of Manchester)
First-Order Theorem Proving and Vampire Laura Kovács (Chalmers University of Technology) Andrei Voronkov (The University of Manchester) Outline Introduction First-Order Logic and TPTP Inference Systems
More informationLecture Notes on SAT Solvers & DPLL
15-414: Bug Catching: Automated Program Verification Lecture Notes on SAT Solvers & DPLL Matt Fredrikson André Platzer Carnegie Mellon University Lecture 10 1 Introduction In this lecture we will switch
More informationWHAT IS AN SMT SOLVER? Jaeheon Yi - April 17, 2008
WHAT IS AN SMT SOLVER? Jaeheon Yi - April 17, 2008 WHAT I LL TALK ABOUT Propositional Logic Terminology, Satisfiability, Decision Procedure First-Order Logic Terminology, Background Theories Satisfiability
More informationVerification using Satisfiability Checking, Predicate Abstraction, and Craig Interpolation. Himanshu Jain THESIS ORAL TALK
Verification using Satisfiability Checking, Predicate Abstraction, and Craig Interpolation Himanshu Jain THESIS ORAL TALK 1 Computer Systems are Pervasive Computer Systems = Software + Hardware Software/Hardware
More informationPropositional Reasoning
Propositional Reasoning CS 440 / ECE 448 Introduction to Artificial Intelligence Instructor: Eyal Amir Grad TAs: Wen Pu, Yonatan Bisk Undergrad TAs: Sam Johnson, Nikhil Johri Spring 2010 Intro to AI (CS
More informationCritical Reading of Optimization Methods for Logical Inference [1]
Critical Reading of Optimization Methods for Logical Inference [1] Undergraduate Research Internship Department of Management Sciences Fall 2007 Supervisor: Dr. Miguel Anjos UNIVERSITY OF WATERLOO Rajesh
More informationPropositional Resolution
Artificial Intelligence Propositional Resolution Marco Piastra Propositional Resolution 1] Deductive systems and automation Is problem decidible? A deductive system a la Hilbert (i.e. derivation using
More informationLogic in AI Chapter 7. Mausam (Based on slides of Dan Weld, Stuart Russell, Subbarao Kambhampati, Dieter Fox, Henry Kautz )
Logic in AI Chapter 7 Mausam (Based on slides of Dan Weld, Stuart Russell, Subbarao Kambhampati, Dieter Fox, Henry Kautz ) 2 Knowledge Representation represent knowledge about the world in a manner that
More informationThe Strength of Multilinear Proofs
The Strength of Multilinear Proofs Ran Raz Iddo Tzameret December 19, 2006 Abstract We introduce an algebraic proof system that manipulates multilinear arithmetic formulas. We show that this proof system
More informationPart 1: Propositional Logic
Part 1: Propositional Logic Literature (also for first-order logic) Schöning: Logik für Informatiker, Spektrum Fitting: First-Order Logic and Automated Theorem Proving, Springer 1 Last time 1.1 Syntax
More informationKnowledge base (KB) = set of sentences in a formal language Declarative approach to building an agent (or other system):
Logic Knowledge-based agents Inference engine Knowledge base Domain-independent algorithms Domain-specific content Knowledge base (KB) = set of sentences in a formal language Declarative approach to building
More informationAdvanced Topics in LP and FP
Lecture 1: Prolog and Summary of this lecture 1 Introduction to Prolog 2 3 Truth value evaluation 4 Prolog Logic programming language Introduction to Prolog Introduced in the 1970s Program = collection
More informationFoundations of Artificial Intelligence
Foundations of Artificial Intelligence 7. Propositional Logic Rational Thinking, Logic, Resolution Joschka Boedecker and Wolfram Burgard and Frank Hutter and Bernhard Nebel Albert-Ludwigs-Universität Freiburg
More informationLecture 9: The Splitting Method for SAT
Lecture 9: The Splitting Method for SAT 1 Importance of SAT Cook-Levin Theorem: SAT is NP-complete. The reason why SAT is an important problem can be summarized as below: 1. A natural NP-Complete problem.
More informationReduced Ordered Binary Decision Diagrams
Reduced Ordered Binary Decision Diagrams Lecture #12 of Advanced Model Checking Joost-Pieter Katoen Lehrstuhl 2: Software Modeling & Verification E-mail: katoen@cs.rwth-aachen.de December 13, 2016 c JPK
More informationTutorial 1: Modern SMT Solvers and Verification
University of Illinois at Urbana-Champaign Tutorial 1: Modern SMT Solvers and Verification Sayan Mitra Electrical & Computer Engineering Coordinated Science Laboratory University of Illinois at Urbana
More informationAn Introduction to SAT Solving
An Introduction to SAT Solving Applied Logic for Computer Science UWO December 3, 2017 Applied Logic for Computer Science An Introduction to SAT Solving UWO December 3, 2017 1 / 46 Plan 1 The Boolean satisfiability
More informationSatisfiability Modulo Theories
Satisfiability Modulo Theories Summer School on Formal Methods Menlo College, 2011 Bruno Dutertre and Leonardo de Moura bruno@csl.sri.com, leonardo@microsoft.com SRI International, Microsoft Research SAT/SMT
More informationChapter 7 R&N ICS 271 Fall 2017 Kalev Kask
Set 6: Knowledge Representation: The Propositional Calculus Chapter 7 R&N ICS 271 Fall 2017 Kalev Kask Outline Representing knowledge using logic Agent that reason logically A knowledge based agent Representing
More informationSAT-based Combinational Equivalence Checking
SAT-based Combinational Equivalence Checking Zhuo Huang zhuang@cise.ufl.edu Prabhat Mishra prabhat@cise.ufl.edu CISE Technical Report #05-007 Department of Computer and Information Science and Engineering,
More informationPropositional and Predicate Logic - V
Propositional and Predicate Logic - V Petr Gregor KTIML MFF UK WS 2016/2017 Petr Gregor (KTIML MFF UK) Propositional and Predicate Logic - V WS 2016/2017 1 / 21 Formal proof systems Hilbert s calculus
More informationTowards Understanding and Harnessing the Potential of Clause Learning
Journal of Artificial Intelligence Research 22 (2004) 319-351 Submitted 12/03; published 12/04 Towards Understanding and Harnessing the Potential of Clause Learning Paul Beame Henry Kautz Ashish Sabharwal
More informationA brief introduction to Logic. (slides from
A brief introduction to Logic (slides from http://www.decision-procedures.org/) 1 A Brief Introduction to Logic - Outline Propositional Logic :Syntax Propositional Logic :Semantics Satisfiability and validity
More informationAn Efficient Decision Procedure for Functional Decomposable Theories Based on Dual Constraints
An Efficient Decision Procedure for Functional Decomposable Theories Based on Dual Constraints Khalil Djelloul Laboratoire d Informatique Fondamentale d Orléans. Bat. 3IA, rue Léonard de Vinci. 45067 Orléans,
More informationOn the Complexity of the Reflected Logic of Proofs
On the Complexity of the Reflected Logic of Proofs Nikolai V. Krupski Department of Math. Logic and the Theory of Algorithms, Faculty of Mechanics and Mathematics, Moscow State University, Moscow 119899,
More informationIntroduction to Logic in Computer Science: Autumn 2006
Introduction to Logic in Computer Science: Autumn 2006 Ulle Endriss Institute for Logic, Language and Computation University of Amsterdam Ulle Endriss 1 Plan for Today The first part of the course will
More informationPropositional Logic. Methods & Tools for Software Engineering (MTSE) Fall Prof. Arie Gurfinkel
Propositional Logic Methods & Tools for Software Engineering (MTSE) Fall 2017 Prof. Arie Gurfinkel References Chpater 1 of Logic for Computer Scientists http://www.springerlink.com/content/978-0-8176-4762-9/
More informationBoolean decision diagrams and SAT-based representations
Boolean decision diagrams and SAT-based representations 4th July 200 So far we have seen Kripke Structures 2 Temporal logics (and their semantics over Kripke structures) 3 Model checking of these structures
More informationWorst-Case Upper Bound for (1, 2)-QSAT
Worst-Case Upper Bound for (1, 2)-QSAT Minghao Yin Department of Computer, Northeast Normal University, Changchun, China, 130117 ymh@nenu.edu.cn Abstract. The rigorous theoretical analysis of the algorithm
More informationConjunctive Normal Form and SAT
Notes on Satisfiability-Based Problem Solving Conjunctive Normal Form and SAT David Mitchell mitchell@cs.sfu.ca October 4, 2015 These notes are a preliminary draft. Please use freely, but do not re-distribute
More information3 Propositional Logic
3 Propositional Logic 3.1 Syntax 3.2 Semantics 3.3 Equivalence and Normal Forms 3.4 Proof Procedures 3.5 Properties Propositional Logic (25th October 2007) 1 3.1 Syntax Definition 3.0 An alphabet Σ consists
More informationA New 3-CNF Transformation by Parallel-Serial Graphs 1
A New 3-CNF Transformation by Parallel-Serial Graphs 1 Uwe Bubeck, Hans Kleine Büning University of Paderborn, Computer Science Institute, 33098 Paderborn, Germany Abstract For propositional formulas we
More informationMathematical Logic Propositional Logic - Tableaux*
Mathematical Logic Propositional Logic - Tableaux* Fausto Giunchiglia and Mattia Fumagalli University of Trento *Originally by Luciano Serafini and Chiara Ghidini Modified by Fausto Giunchiglia and Mattia
More informationLecture 2: Symbolic Model Checking With SAT
Lecture 2: Symbolic Model Checking With SAT Edmund M. Clarke, Jr. School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213 (Joint work over several years with: A. Biere, A. Cimatti, Y.
More informationA Logically Complete Reasoning Maintenance System Based on a Logical Constraint Solver
A Logically Complete Reasoning Maintenance System Based on a Logical Constraint Solver J.C. Madre and O. Coudert Bull Corporate Research Center Rue Jean Jaurès 78340 Les Clayes-sous-bois FRANCE Abstract
More information1 Propositional Logic
CS 2800, Logic and Computation Propositional Logic Lectures Pete Manolios Version: 384 Spring 2011 1 Propositional Logic The study of logic was initiated by the ancient Greeks, who were concerned with
More informationLecture 1: Logical Foundations
Lecture 1: Logical Foundations Zak Kincaid January 13, 2016 Logics have two components: syntax and semantics Syntax: defines the well-formed phrases of the language. given by a formal grammar. Typically
More informationPropositional Logic: Methods of Proof (Part II)
Propositional Logic: Methods of Proof (Part II) This lecture topic: Propositional Logic (two lectures) Chapter 7.1-7.4 (previous lecture, Part I) Chapter 7.5 (this lecture, Part II) (optional: 7.6-7.8)
More informationThe complexity of SPP formula minimization
The complexity of SPP formula minimization David Buchfuhrer Computer Science Department California Institute of Technology Pasadena, CA 91125 dave@cs.caltech.edu Abstract Circuit minimization is a useful
More informationTitle: Logical Agents AIMA: Chapter 7 (Sections 7.4 and 7.5)
B.Y. Choueiry 1 Instructor s notes #12 Title: Logical Agents AIMA: Chapter 7 (Sections 7.4 and 7.5) Introduction to Artificial Intelligence CSCE 476-876, Fall 2018 URL: www.cse.unl.edu/ choueiry/f18-476-876
More informationDuality in Knowledge Compilation Techniques
Duality in Knowledge Compilation Techniques Neil V. Murray 1 and Erik Rosenthal 2 1 Department of Computer Science, State University of New York, Albany, NY 12222, USA, nvm@cs.albany.edu 2 Department of
More informationCS156: The Calculus of Computation Zohar Manna Autumn 2008
Page 3 of 52 Page 4 of 52 CS156: The Calculus of Computation Zohar Manna Autumn 2008 Lecturer: Zohar Manna (manna@cs.stanford.edu) Office Hours: MW 12:30-1:00 at Gates 481 TAs: Boyu Wang (wangboyu@stanford.edu)
More informationA Method for Generating All the Prime Implicants of Binary CNF Formulas
A Method for Generating All the Prime Implicants of Binary CNF Formulas Yakoub Salhi CRIL-CNRS, Université d Artois, F-62307 Lens Cedex, France salhi@cril.fr Abstract In this paper, we propose a method
More informationMotivation. CS389L: Automated Logical Reasoning. Lecture 10: Overview of First-Order Theories. Signature and Axioms of First-Order Theory
Motivation CS389L: Automated Logical Reasoning Lecture 10: Overview of First-Order Theories Işıl Dillig Last few lectures: Full first-order logic In FOL, functions/predicates are uninterpreted (i.e., structure
More informationCardinality Networks: a Theoretical and Empirical Study
Constraints manuscript No. (will be inserted by the editor) Cardinality Networks: a Theoretical and Empirical Study Roberto Asín, Robert Nieuwenhuis, Albert Oliveras, Enric Rodríguez-Carbonell Received:
More informationA Resolution Method for Modal Logic S5
EPiC Series in Computer Science Volume 36, 2015, Pages 252 262 GCAI 2015. Global Conference on Artificial Intelligence A Resolution Method for Modal Logic S5 Yakoub Salhi and Michael Sioutis Université
More informationHeuristics for Efficient SAT Solving. As implemented in GRASP, Chaff and GSAT.
Heuristics for Efficient SAT Solving As implemented in GRASP, Chaff and GSAT. Formulation of famous problems as SAT: k-coloring (1/2) The K-Coloring problem: Given an undirected graph G(V,E) and a natural
More informationA Unit Resolution Approach to Knowledge Compilation. 2. Preliminaries
A Unit Resolution Approach to Knowledge Compilation Arindama Singh and Manoj K Raut Department of Mathematics Indian Institute of Technology Chennai-600036, India Abstract : Knowledge compilation deals
More informationBoolean Algebra CHAPTER 15
CHAPTER 15 Boolean Algebra 15.1 INTRODUCTION Both sets and propositions satisfy similar laws, which are listed in Tables 1-1 and 4-1 (in Chapters 1 and 4, respectively). These laws are used to define an
More informationLogical Agents (I) Instructor: Tsung-Che Chiang
Logical Agents (I) Instructor: Tsung-Che Chiang tcchiang@ieee.org Department of Computer Science and Information Engineering National Taiwan Normal University Artificial Intelligence, Spring, 2010 編譯有誤
More informationPropositional Logic Language
Propositional Logic Language A logic consists of: an alphabet A, a language L, i.e., a set of formulas, and a binary relation = between a set of formulas and a formula. An alphabet A consists of a finite
More information02 Propositional Logic
SE 2F03 Fall 2005 02 Propositional Logic Instructor: W. M. Farmer Revised: 25 September 2005 1 What is Propositional Logic? Propositional logic is the study of the truth or falsehood of propositions or
More information2.5.2 Basic CNF/DNF Transformation
2.5. NORMAL FORMS 39 On the other hand, checking the unsatisfiability of CNF formulas or the validity of DNF formulas is conp-complete. For any propositional formula φ there is an equivalent formula in
More informationEE562 ARTIFICIAL INTELLIGENCE FOR ENGINEERS
EE562 ARTIFICIAL INTELLIGENCE FOR ENGINEERS Lecture 10, 5/9/2005 University of Washington, Department of Electrical Engineering Spring 2005 Instructor: Professor Jeff A. Bilmes Logical Agents Chapter 7
More informationPrice: $25 (incl. T-Shirt, morning tea and lunch) Visit:
Three days of interesting talks & workshops from industry experts across Australia Explore new computing topics Network with students & employers in Brisbane Price: $25 (incl. T-Shirt, morning tea and
More informationClausal Presentation of Theories in Deduction Modulo
Gao JH. Clausal presentation of theories in deduction modulo. JOURNAL OF COMPUTER SCIENCE AND TECHNOL- OGY 28(6): 1085 1096 Nov. 2013. DOI 10.1007/s11390-013-1399-0 Clausal Presentation of Theories in
More informationTableaux, Path Dissolution, and Decomposable Negation Normal Form for Knowledge Compilation
Tableaux, Path Dissolution, and Decomposable Negation Normal Form for Knowledge Compilation Neil V. Murray 1 and Erik Rosenthal 2 1 Department of Computer Science, State University of New York, Albany,
More informationPropositional Calculus
Propositional Calculus Dr. Neil T. Dantam CSCI-498/598 RPM, Colorado School of Mines Spring 2018 Dantam (Mines CSCI, RPM) Propositional Calculus Spring 2018 1 / 64 Calculus? Definition: Calculus A well
More informationIntelligent Agents. Pınar Yolum Utrecht University
Intelligent Agents Pınar Yolum p.yolum@uu.nl Utrecht University Logical Agents (Based mostly on the course slides from http://aima.cs.berkeley.edu/) Outline Knowledge-based agents Wumpus world Logic in
More informationCOMPRESSED STATE SPACE REPRESENTATIONS - BINARY DECISION DIAGRAMS
QUALITATIVE ANALYIS METHODS, OVERVIEW NET REDUCTION STRUCTURAL PROPERTIES COMPRESSED STATE SPACE REPRESENTATIONS - BINARY DECISION DIAGRAMS LINEAR PROGRAMMING place / transition invariants state equation
More informationLecture 2 Propositional Logic & SAT
CS 5110/6110 Rigorous System Design Spring 2017 Jan-17 Lecture 2 Propositional Logic & SAT Zvonimir Rakamarić University of Utah Announcements Homework 1 will be posted soon Propositional logic: Chapter
More informationNon-Deterministic Time
Non-Deterministic Time Master Informatique 2016 1 Non-Deterministic Time Complexity Classes Reminder on DTM vs NDTM [Turing 1936] (q 0, x 0 ) (q 1, x 1 ) Deterministic (q n, x n ) Non-Deterministic (q
More informationConjunctive Normal Form and SAT
Notes on Satisfiability-Based Problem Solving Conjunctive Normal Form and SAT David Mitchell mitchell@cs.sfu.ca September 10, 2014 These notes are a preliminary draft. Please use freely, but do not re-distribute
More information