Master s Project Proposal: Enhancements of SAT-Solvers for Some Combinatorial NAE-SAT Problems

Size: px
Start display at page:

Download "Master s Project Proposal: Enhancements of SAT-Solvers for Some Combinatorial NAE-SAT Problems"

Transcription

1 Master s Project Proposal: Enhancements of SAT-Solvers for Some Combinatorial NAE-SAT Problems Nicolette Nicolosi Department of Computer Science Rochester Institute of Technology Rochester, NY nan2563@cs.rit.edu June 2, 2013 Committee Members Chair: Signature: Date: Prof. Stanis law Radziszowski spr@cs.rit.edu Reader: Signature: Date: Prof. Hans-Peter Bischof hpb@cs.rit.edu Observer: Signature: Date: Prof. Zack Butler zjb@cs.rit.edu 1

2 Abstract Improvements on specific subsets of SAT relevant to certain NP-complete problems can yield further results in both fields. This project proposes to utilize knowledge of phase transition boundaries for variants of SAT to work toward improving one or more existing SAT-solvers to specifically target improvements for not-all-equivalent satisfiability (NAE-SAT). This is particularly applicable to the field of Ramsey theory because expressions that are created when searching for non-monochromatic complete subgraphs will tend to be in NAE-SAT form. The improvements will include modifications to the solver logic to recognize satisfying assignments for NAE-SAT, which may allow for reduction of large SAT formulas that typically represent NAE-SAT instances. Because the typical NAE-SAT representation contains approximately twice as many clauses as a similar regular SAT instance, improvements to the solver logic may lead to significant reductions in running times for these cases due to the ability to greatly decrease the input formula size. Additionally, there may be a different phase transition point for these NAE-SAT instances, which may lead to improvements for problems that lie near the regular SAT phase transition point due to the ability to express the problem in multiple ways. These modifications will be tested on both Ramsey problems and randomly generated SAT instances. 2

3 Contents 1 Introduction 4 2 Background Satisfiability SAT-Solvers Phase Transition Ramsey Theory Project Approach Theory Software Software Tools SAT-Solver Design Languages Project Results Deliverables Evaluation Proposed Outline Milestones List of Figures 1 A CNF formula Phase Transition for 3-SAT A 2-coloring of K 5 that does not contain any monochromatic K Monochromatic triangles on K List of Algorithms 1 DPLL Algorithm CDCL Algorithm

4 1 Introduction There are constant improvements being made in approximating solutions for boolean satisfiability (SAT) problems. This coupled with the wide availability of general and specialized SAT-solvers makes it easy to see the utility of expressing other NP-complete problems in the form of a SAT problem [17]. Improvements on specific subsets of SAT relevant to these problems can yield further results in both fields. This project proposes to work toward improving one or more existing SAT-solvers to specifically target producing new results in the field of Ramsey theory. In particular, targeting improvements for not-all-equivalent satisfiability (NAE-SAT) problems seems as though it would be useful for solving Ramsey problems. 2 Background 2.1 Satisfiability Satisfiability is the problem of determining a qualifying assignment of logical values for a boolean expression that results in the expression evaluating to true. A boolean satisfiability expression typically consists of a series of clauses (disjunctions of literals) joined by conjunctions. This is known as Conjunctive Normal Form (CNF). See Figure 1 for an example. (x y) (y z) Figure 1: A CNF formula The general case of SAT (k-sat, where k is the exact number of literals per clause) has been widely studied. 3-SAT is a subset of the generalized k-sat problem that requires that each clause contain exactly three literals - this and all variants of k-sat where k > 2 are NP-complete. NAE-SAT is a subproblem within SAT which requires that a satisfying assignment contain no clause which has all literals equal in value. [16] [13] As an example, consider the CNF formula from Figure 1. A qualifying assignment in regular SAT would set x = true, y = true, and z = true. However, this assignment is not valid in NAE-SAT because x and y cannot both be true, so we must assign x = true, y = false, and z = true. 2.2 SAT-Solvers The International SAT Competition is held on a yearly basis to compare performance of entered SAT-solvers on three categories of SAT problems - application (typical problems one might see in real life), maliciously crafted (designed to trip up most solvers), and random. Recent successful solvers include minisat, glucose, SATzilla, and ppfolio. 4

5 There are typically two approaches to writing improved SAT-solvers - enhancements to the DPLL or CDCL (conflict driven clause learning) algorithms, and using a portfolio of other solvers in addition to some sort of heuristic for choosing the best solver for a given problem. minisat and variants on it use the first approach, while SATzilla uses a portfoliobased approach that trains a preprocessor to categorize SAT problems and then uses that knowledge to choose the most effective solvers to try. ppfolio by itself uses a naive portfolio based approach. The basic SAT-solver algorithm is DPLL, named for the authors Davis, Putnam, Logemann, and Loveland [4]. It is a chronological backtracking algorithm that systematically examines all possible truth assignments to find a satisfying assignment. A clause is considered in one of four possible states - unsatisfied, satisfied, unit, or unresolved. An unsatisfied clause has all literals assigned to false (0), while a satisfied clause has one or more literals assigned to true (1). A clause is considered unit if all literals but one are assigned to false, and the remaining literal is unassigned. An unresolved clause is one that is in none of these states. If a clause is unit, then the unassigned literal must be assigned true for the clause to be satisfied - this is known as the unit clause rule. Iteratively applying this rule is known as unit propagation or Boolean Constraint Propagation (BCP) and is done after branching steps to identify variables that must be assigned certain values. If this results in an unsatisfied clause, there is a conflict and backtracking occurs. [8] This can be done recursively, but is typically implemented iteratively - see Algorithm 1. Conflict-Driven Clause Learning (CDCL) is an improved approach that came from the original DPLL backtracking algorithm, which relies on trying to set a literal to a value and then adjusting that assignment based on the conflicts that arise. CDCL is a non-chronological backtracking algorithm that is designed to be more intelligent than DPLL in that it uses additional techniques such as learning clauses from backtracking for future use, periodically restarting the backtracking search, and heuristic branching techniques [7]. Each variable has a number of properties that CDCL solvers can take into account, including the value (ν(x i ) {0, u, 1}), antecedent (α(x i ) ϕ {NIL}), and decision level (δ(x i ) { 1, 0, 1,..., X }). A variable s value is implied if it is set as a result of applying the unit clause rule. The antecedent of the variable is the unit clause ω used to imply this value - unassigned or decision variables (variables used for branching) have a NIL antecedent. The decision level of a variable is simply the depth within the decision tree at which the variable is assigned to true or false - unassigned variables have a decision level of 1. The decision level of an arbitrary variable can be calculated as follows: δ(x i ) = max({0} {δ(x j ) x j ω x j x i }) [8] The basic algorithm is shown in Algorithm 2. The main drawback to this approach is that it rapidly becomes difficult to preserve learned clauses due to memory constraints. However, not preserving learned clauses can lead to repeating conflict resolutions. Solvers approach this problem in different ways - a naive approach is to only remember the most recently learned clauses. Another simple approach is to prefer to remember shorter clauses to reduce memory usage. The Chaff algorithm and the minisat [5] implementation of it track the activity of a learnt clause in resolving conflicts - more used clauses are preserved while less used ones are pruned. glucose uses a new method 5

6 Algorithm 1 Iterative DPLL Backtracking Algorithm [11] function RESOLVE-CONFLICT(c) d = most recent decision not tried for all values if d == NULL then return false end if Set d to opposite value Mark d tried Undo invalidated implications return true end function function BCP(c) while NOT CONFLICT do Apply the unit clause rule until satisfiable or a conflict is found end while end function while φ contains unassigned literals do Assign a value to an unassigned literal and push a record of this to the decision stack while NOT BCP() do if NOT RESOLVE-CONFLICT() then return UNSAT end if end while end while return SAT that attempts to predict whether a clause is likely to be used in the future [3]. The Chaff algorithm [11] features a number of improvements on DPLL/CDCL algorithms. It introduces the concept of watched literals, which prevents unnecessary checking of clauses during unit propagation by having two literals in a clause be watched - until one of those two literals is set to 0, it isn t necessary to attempt unit propagation. For deciding which variable and state should be selected, Chaff uses a new decision heuristic called Variable State Independent Decaying Sum (VSIDS). This heuristic attempts to first satisfy recent conflict clauses, and has low overhead since it does not rely on the variable state and the statistics are only updated when a new conflict is discovered. Another optimization involves occasionally clearing the current variable state and restarting the search with the knowledge of the learned clauses. Minisat provides a minimal implementation of an improved variant on the Chaff algorithm that is designed to be easily extensible. Glucose is an extension of this solver that identifies glue clauses and calculates Literal Blocks Difference (LBD) for clauses to deter- 6

7 Algorithm 2 Conflict-Driven Clause Learning (CDCL) (modified from Rintanen[14]) function CDCL(C) Initialize v to satisfy all unit clauses in C Extend v by unit propagation with v and C Initialize decision level to 0 while C does not contain empty clauses do Choose a variable a with an unassigned value v(a) Increase the decision level by 1 Assign v(a) to either true or false Extend v by unit propagation with v and C if v causes a conflict in a clause in C then Infer a new clause c and add it to C (learn a new clause) Undo implied assignments caused by a so that c is not falsified end if end while end function mine whether they should be kept. A block is defined by Audemard and Simon [3] as all literals of the same level in the decision tree. If the literals of a clause are partitioned by decision level, the number of subsets that result from such a partitioning is called the Literal Blocks Distance (LBD) of that clause. When a clause is learned, glucose computes and also stores the LBD of the clause. Glue clauses are defined as clauses which have an LBD of 2 - these clauses are important because they only contain one variable of the last decision level. This variable will be glued to the block of literals that was propagated previous to this point by the solver. Another important feature of glucose is aggressive deletion of clauses - half of the learned clauses are deleted at regular conflict intervals to increase the efficiency of the unit propagation step. The increased efficiency from using the LBD measure allows for this aggressive clause deletion without negatively affecting overall performance because this measure is designed to preserve good clauses instead of every clause. The portfolio-based approach to creating SAT-solvers is typically successful because it can rely on the strengths of all the component solvers while mitigating their weaknesses by using other solvers that work better for those cases. Ppfolio takes a naive approach by simply starting the 5 component solvers either sequentially or in parallel [15]. SATzilla relies on a pattern recognition-based approach that trains the system initially on a large data set containing previously used SAT problems. This training is done to determine classes of SAT problems and which solvers work best for these types of problems. When attempting to solve novel instances, SATzilla will first attempt to categorize the problem based on what it knows about the previous instances it has seen. It then will select the two predicted best performing solvers for that class to attempt to find a satisfying assignment - the second solver is used if the first is unable to find a satisfying assignment in the given amount of time. [18] 7

8 2.3 Phase Transition Many problems exhibit behavior such that we can predict whether or not an instance of the problem will be easy to solve. In the general case, there appears a point at which instances of certain problems rapidly become very difficult and instances that are further away from this point become much easier to solve. For satisfiability, we can compare the ratio of variables to clauses (α) to the fraction of unsatisfiable problems [6] or to the computation cost [10] to approximate points at which boolean satisfiability expressions will likely be satisfiable or not, and how quickly such a determination can be made. See Figure 2 for an example graph illustrating phase transition. Figure 2: An example graph illustrating phase transition for 3-SAT for varying numbers of total literals (N)[6] A paper by Kirkpatrick [6] shows that for 3-SAT, α appears to be around A paper by Achlioptas et al. [2] studies the phenomenon of phase transition for the NAE-SAT problem and is particularly relevant to this project. This paper has found that the phase transition boundary for random NAE-SAT lies somewhere in 2 < α < 2.1. This is consistent with the finding that the boundary for general 3-SAT is about 4.2 given the statement by Achlioptas et al. [2] that NAE-3SAT instances typically contain twice as many clauses as instances of general 3-SAT. 8

9 2.4 Ramsey Theory Ramsey theory is an area within combinatorics that studies combinatorial objects which contain smaller objects - the classical 2-color definition of a Ramsey number R(r, s) is the smallest positive integer n such that for any complete 2-colored graph on R(r, s) vertices, there exists either a complete subgraph on r vertices that is entirely one color, or a complete subgraph on s vertices that is completely the other color [12]. As an example, we can show that R(3, 3) = 6 by showing that R(3, 3) > 5 and R(3, 3) 6. We can easily show that R(3, 3) > 5 because it is possible to 2-color a K 5 without a monochromatic K 3 (see Figure 3). Figure 3: A 2-coloring of K 5 that does not contain any monochromatic K 3 To show that R(3, 3) 6, we assume we have a 2-colored K 6. For any vertex v in the graph, we know that there are 5 edges connected to v, and thus we know that at least 3 must be the same color. If any of the three vertices at the end of these edges are connected to each other by an edge of the same color, then there is a monochromatic triangle. If not, then those three edges are all the opposite color and make up a monochromatic triangle of that color. Thus, any 2-colored K 6 must contain a monochromatic K 3, so R(3, 3) 6. See Figure 4 for an illustration. Because this is expressed as a 2 color graph coloring problem, it can be easily converted to a satisfiability problem with the literals representing whether or not a particular edge is a specific color. An example of expressing a Ramsey problem as a SAT problem is given in [17], which describes a graph G with two colors F and T. We consider each edge to be a boolean variable. When seeing if G (K 3, J 4 ), we define two types of clauses to check that there is no K 3 formed in color F and no J 4 formed in color T. To check the case where no K 3 (containing edges {e 1, e 2, e 3 }) is formed in color F, we include the clause (e 1 e 2 e 3 ) which will force at least one edge to have color T. For the other case, where no J 4 (containing 9

10 Figure 4: Monochromatic triangles on K 6 - if edge d or e were red instead of blue, there will be a monochromatic triangle. If both edges are blue as shown, coloring edge f either color will produce a monochromatic triangle edges {e 1, e 2, e 3, e 4, e 5 }) is formed in color F, we include the clause (e 1 e 2 e 3 e 4 e 5 ), which, similarly to the previous clause, will force at least one edge to have the color F. Enhancements to solving NAE-SAT problems may be useful since the expressions that we will create when searching for non-monochromatic complete subgraphs will tend to be in NAE-SAT form - that is, if we have three edges {e 1, e 2, e 3 }, we will check (e 1 e 2 e 3 ) (e 1 e 2 e 3 ) [2]. 3 Project Approach 3.1 Theory This project will study current state of the art SAT-solvers and their approaches with the goal of modifying one or two to produce improved results for NAE-SAT. I will modify glucose (an extension of minisat) by either building a layer on top that calls the original solver or 10

11 editing the solver source code to include optimizations of the CDCL algorithm for NAE- SAT - it may be necessary to combine these approaches. Once the SAT-solver modifications are made, I will test the modified and original solvers on randomly generated and Ramsey problems, and possibly other similar problems, and try to determine if there is a phase transition point specific to these problems expressed as NAE-SAT and where the threshold for that lies. As a second test, I will include my new solver in a portfolio-based solver such as SATzilla or ppfolio. I will then measure the effectiveness of my solver both by comparing its performance to the performance of the unmodified solver that I started with and by comparing it against the other solvers in the portfolio. 3.2 Software 3.3 Software Tools I will generate graphs using both custom tools that I will write and the nauty software package by Brendan McKay [9]. I will also write a tool to convert instances of these graphs to SAT problems in CNF form so that they can be input to the SAT-solver. The SAT-solvers that I will modify will be glucose and SATzilla or ppfolio. 3.4 SAT-Solver Design Glucose is based on minisat, which uses a Conflict-Driven Clause Learning (CDCL) algorithm. For this part I will have to write something to recognize NAE-SAT instances and additionally include some optimizations such as reducing the problem to a more easily solved form. Reducing the problem may work for certain cases where we have knowledge of the typical form the SAT problem will take. Because NAE-SAT has additional restrictions on what is considered a satisfying assignment, I will likely need to include some logic to reject assignments that would be considered satisfying for SAT but not NAE-SAT. SATzilla is a portfolio-based SAT-solver that includes 31 leading solvers. It initially trains a preprocessor to recognize different classes of SAT problems and classifies them based on which solvers produce the fastest output. Time-permitting, I may add my solver to SATzilla s portfolio and then retrain my instance to include a set of NAE-SAT problems. A simpler portfoliobased modification might be to add my solver to the naive ppfolio solver since it simply runs all component solvers at once on different cores, or in sequence, and does not require any retraining. 3.5 Languages The graphs to be tested will be expressed as SAT problems in conjunctive normal form (CNF) using the DIMACS format [1]. Glucose and ppfolio are written in C, while SATzilla uses Java and Ruby. The modifications to glucose will be written in C, while any preprocessing and helper code will either be written in C or an interpreted language such as Ruby. If it 11

12 is feasible to run tests using a portfolio solver such as SATzilla or ppfolio, I will likely not need to write much, if any, additional code for these tests. 4 Project Results 4.1 Deliverables The project deliverables will include the project code, any test files, my results, and a written report containing an in-depth discussion of the topic, my project approach, and my results Evaluation The main outcomes expected from this project are a comparison between NAE-SAT and regular SAT, exploration of the phase transition boundary for NAE-SAT and comparison of this value with the phase transition boundary for regular SAT, tests of the performance of a SAT-solver modified for NAE-SAT on random instances, and tests of this solver on instances generated from select Ramsey and Folkman problems Proposed Outline The following is a proposed outline for my final report. 1. Introduction I will provide a high-level overview of the project and its intended outcomes. I will also provide a brief discussion of the motivation for the project. 2. Background Satisfiability SAT-Solvers Phase Transition Ramsey Theory 3. Problem Description This section will discuss the application of the background information discussed in the previous section and the purpose of the project. 4. Algorithms and Implementation The algorithms that were used will be described, as will the implementation details, system design, and usage instructions. 5. Results and Discussion The results will be presented and discussed. 12

13 6. Conclusion The work and results will be summarized, and ideas for future work will be briefly presented. 7. References I expect to have approximately 20 to 30 references. 4.2 Milestones The following timeline for project milestones and completion is proposed: Research and Test SAT-solvers April 21, 2013 Proposal completion May 20, 2013 Baseline tests May 30, 2013 Initial SAT-solver modifications June 7, 2013 Tests on modified solvers complete June 14, 2013 Initial report draft June 19, 2013 Final report draft sent to committee June 21, 2013 Final Report June 25, 2013 Defense July 5, 2013 References [1] Dimacs CNF format. [2] Dimitris Achlioptas, Arthur Chtcherba, Gabriel Istrate, and Cristopher Moore. The Phase Transition in 1-in-k SAT and NAE 3-SAT. In Proceedings of the twelfth annual ACM-SIAM symposium on Discrete algorithms, SODA 01, pages , Philadelphia, PA, USA, Society for Industrial and Applied Mathematics. [3] Gilles Audemard and Laurent Simon. Predicting Learnt Clauses Quality in Modern SAT Solvers. In Proceedings of the 21st international joint conference on Artificial intelligence, pages Morgan Kaufmann Publishers Inc., [4] Martin Davis, George Logemann, and Donald Loveland. A Machine Program for Theorem-proving. Communications of the ACM, 5(7): , [5] Niklas Eén and Niklas Sörensson. An Extensible SAT-Solver. In Theory and Applications of Satisfiability Testing, pages Springer,

14 [6] Scott Kirkpatrick, Bart Selman, et al. Critical Behavior in the Satisfiability of Random Boolean Expressions. Science-AAAS-Weekly Paper Edition-including Guide to Scientific Information, 264(5163): , [7] João P Marques-Silva and Karem A. Sakallah. GRASP: A Search Algorithm for Propositional Satisfiability. Computers, IEEE Transactions on, 48(5): , [8] Joao Marques-Silve, Ines Lynce, and Sharad Malik. Handbook of Satisfiability. IOS Press, [9] Brendan D McKay. Nauty users guide (version 2.4). Computer Science Dept., Australian National University, [10] Rémi Monasson, Riccardo Zecchina, Scott Kirkpatrick, Bart Selman, and Lidror Troyansky. Determining Computational Complexity from Characteristic Phase Transitions. Nature, 400(6740): , [11] Matthew W Moskewicz, Conor F Madigan, Ying Zhao, Lintao Zhang, and Sharad Malik. Chaff: Engineering an Efficient SAT Solver. In Proceedings of the 38th annual Design Automation Conference, pages ACM, [12] Stanis law P Radziszowski. Small Ramsey Numbers [13] Vishwambhar Rathi, Erik Aurell, Lars Rasmussen, and Mikael Skoglund. Bounds on Threshold of Regular Random k-sat. Theory and Applications of Satisfiability Testing SAT 2010, pages , [14] Jussi Rintanen. Heuristics for Planning with SAT. In Principles and Practice of Constraint Programming CP 2010, pages Springer, [15] Olivier Roussel. Description of ppfolio. SAT Competition 2011, [16] Thomas J Schaefer. The Complexity of Satisfiability Problems. In Proceedings of the tenth annual ACM symposium on Theory of computing, pages , [17] Daniel S Shetler, Michael A Wurtz, and Stanis law P Radziszowski. On Some Multicolor Ramsey Numbers Involving k 3 + e and k 4 e. SIAM Journal on Discrete Mathematics, 26(3): , [18] Lin Xu, Frank Hutter, Holger H Hoos, and Kevin Leyton-Brown. SATzilla: Portfoliobased Algorithm Selection for SAT. Journal of Artificial Intelligence Research, 32(1): ,

EECS 219C: Computer-Aided Verification Boolean Satisfiability Solving. Sanjit A. Seshia EECS, UC Berkeley

EECS 219C: Computer-Aided Verification Boolean Satisfiability Solving. Sanjit A. Seshia EECS, UC Berkeley EECS 219C: Computer-Aided Verification Boolean Satisfiability Solving Sanjit A. Seshia EECS, UC Berkeley Project Proposals Due Friday, February 13 on bcourses Will discuss project topics on Monday Instructions

More information

EECS 219C: Formal Methods Boolean Satisfiability Solving. Sanjit A. Seshia EECS, UC Berkeley

EECS 219C: Formal Methods Boolean Satisfiability Solving. Sanjit A. Seshia EECS, UC Berkeley EECS 219C: Formal Methods Boolean Satisfiability Solving Sanjit A. Seshia EECS, UC Berkeley The Boolean Satisfiability Problem (SAT) Given: A Boolean formula F(x 1, x 2, x 3,, x n ) Can F evaluate to 1

More information

CS-E3200 Discrete Models and Search

CS-E3200 Discrete Models and Search Shahab Tasharrofi Department of Information and Computer Science, Aalto University Lecture 7: Complete and local search methods for SAT Outline Algorithms for solving Boolean satisfiability problems Complete

More information

An Introduction to SAT Solvers

An Introduction to SAT Solvers An Introduction to SAT Solvers Knowles Atchison, Jr. Fall 2012 Johns Hopkins University Computational Complexity Research Paper December 11, 2012 Abstract As the first known example of an NP Complete problem,

More information

SAT/SMT Solvers and Applications

SAT/SMT Solvers and Applications SAT/SMT Solvers and Applications University of Waterloo Winter 2013 Today s Lecture Lessons learnt so far Implementation-related attacks (control-hazard, malware,...) Program analysis techniques can detect

More information

Normal Forms for Boolean Expressions

Normal Forms for Boolean Expressions Normal Forms for Boolean Expressions A NORMAL FORM defines a class expressions s.t. a. Satisfy certain structural properties b. Are usually universal: able to express every boolean function 1. Disjunctive

More information

Heuristic Backtracking Algorithms for SAT

Heuristic Backtracking Algorithms for SAT Heuristic Backtracking Algorithms for SAT A. Bhalla, I. Lynce, J.T. de Sousa and J. Marques-Silva IST/INESC-ID, Technical University of Lisbon, Portugal fateet,ines,jts,jpmsg@sat.inesc.pt Abstract In recent

More information

Learning Techniques for Pseudo-Boolean Solving and Optimization

Learning Techniques for Pseudo-Boolean Solving and Optimization Learning Techniques for Pseudo-Boolean Solving and Optimization José Faustino Fragoso Fremenin dos Santos September 29, 2008 Abstract The extension of conflict-based learning from Propositional Satisfiability

More information

SAT Solver Heuristics

SAT Solver Heuristics SAT Solver Heuristics SAT-solver History Started with David-Putnam-Logemann-Loveland (DPLL) (1962) Able to solve 10-15 variable problems Satz (Chu Min Li, 1995) Able to solve some 1000 variable problems

More information

Boolean Satisfiability Solving Part II: DLL-based Solvers. Announcements

Boolean Satisfiability Solving Part II: DLL-based Solvers. Announcements EECS 219C: Computer-Aided Verification Boolean Satisfiability Solving Part II: DLL-based Solvers Sanjit A. Seshia EECS, UC Berkeley With thanks to Lintao Zhang (MSR) Announcements Paper readings will be

More information

CS-E3220 Declarative Programming

CS-E3220 Declarative Programming CS-E3220 Declarative Programming Lecture 5: Premises for Modern SAT Solving Aalto University School of Science Department of Computer Science Spring 2018 Motivation The Davis-Putnam-Logemann-Loveland (DPLL)

More information

Constraint Satisfaction Problems

Constraint Satisfaction Problems Constraint Satisfaction Problems Tuomas Sandholm Carnegie Mellon University Computer Science Department [Read Chapter 6 of Russell & Norvig] Constraint satisfaction problems (CSPs) Standard search problem:

More information

Boolean Satisfiability: From Theoretical Hardness to Practical Success. Sharad Malik Princeton University

Boolean Satisfiability: From Theoretical Hardness to Practical Success. Sharad Malik Princeton University Boolean Satisfiability: From Theoretical Hardness to Practical Success Sharad Malik Princeton University SAT in a Nutshell Given a Boolean formula, find a variable assignment such that the formula evaluates

More information

Chapter 2 PRELIMINARIES

Chapter 2 PRELIMINARIES 8 Chapter 2 PRELIMINARIES Throughout this thesis, we work with propositional or Boolean variables, that is, variables that take value in the set {true, false}. A propositional formula F representing a

More information

SAT Solvers. Ranjit Jhala, UC San Diego. April 9, 2013

SAT Solvers. Ranjit Jhala, UC San Diego. April 9, 2013 SAT Solvers Ranjit Jhala, UC San Diego April 9, 2013 Decision Procedures We will look very closely at the following 1. Propositional Logic 2. Theory of Equality 3. Theory of Uninterpreted Functions 4.

More information

Efficient satisfiability solver

Efficient satisfiability solver Graduate Theses and Dissertations Iowa State University Capstones, Theses and Dissertations 2014 Efficient satisfiability solver Chuan Jiang Iowa State University Follow this and additional works at: https://lib.dr.iastate.edu/etd

More information

Practical SAT Solving

Practical SAT Solving Practical SAT Solving Lecture 5 Carsten Sinz, Tomáš Balyo May 23, 2016 INSTITUTE FOR THEORETICAL COMPUTER SCIENCE KIT University of the State of Baden-Wuerttemberg and National Laboratory of the Helmholtz

More information

Better test results for the graph coloring and the Pigeonhole Problems using DPLL with k-literal representation

Better test results for the graph coloring and the Pigeonhole Problems using DPLL with k-literal representation Proceedings of the 7 th International Conference on Applied Informatics Eger, Hungary, January 28 31, 2007. Vol. 2. pp. 127 135. Better test results for the graph coloring and the Pigeonhole Problems using

More information

Adding New Bi-Asserting Clauses for Faster Search in Modern SAT Solvers

Adding New Bi-Asserting Clauses for Faster Search in Modern SAT Solvers Proceedings of the Tenth Symposium on Abstraction, Reformulation, and Approximation Adding New Bi-Asserting Clauses for Faster Search in Modern SAT Solvers Saïd Jabbour 1 and Jerry Lonlac 1,2 and Lakhdar

More information

Boolean Functions (Formulas) and Propositional Logic

Boolean Functions (Formulas) and Propositional Logic EECS 219C: Computer-Aided Verification Boolean Satisfiability Solving Part I: Basics Sanjit A. Seshia EECS, UC Berkeley Boolean Functions (Formulas) and Propositional Logic Variables: x 1, x 2, x 3,, x

More information

Massively Parallel Seesaw Search for MAX-SAT

Massively Parallel Seesaw Search for MAX-SAT Massively Parallel Seesaw Search for MAX-SAT Harshad Paradkar Rochester Institute of Technology hp7212@rit.edu Prof. Alan Kaminsky (Advisor) Rochester Institute of Technology ark@cs.rit.edu Abstract The

More information

Deductive Methods, Bounded Model Checking

Deductive Methods, Bounded Model Checking Deductive Methods, Bounded Model Checking http://d3s.mff.cuni.cz Pavel Parízek CHARLES UNIVERSITY IN PRAGUE faculty of mathematics and physics Deductive methods Pavel Parízek Deductive Methods, Bounded

More information

DM841 DISCRETE OPTIMIZATION. Part 2 Heuristics. Satisfiability. Marco Chiarandini

DM841 DISCRETE OPTIMIZATION. Part 2 Heuristics. Satisfiability. Marco Chiarandini DM841 DISCRETE OPTIMIZATION Part 2 Heuristics Satisfiability Marco Chiarandini Department of Mathematics & Computer Science University of Southern Denmark Outline 1. Mathematical Programming Constraint

More information

Satisfiability. Michail G. Lagoudakis. Department of Computer Science Duke University Durham, NC SATISFIABILITY

Satisfiability. Michail G. Lagoudakis. Department of Computer Science Duke University Durham, NC SATISFIABILITY Satisfiability Michail G. Lagoudakis Department of Computer Science Duke University Durham, NC 27708 COMPSCI 271 - Spring 2001 DUKE UNIVERSITY Page 1 Why SAT? Historical Reasons The first NP-COMPLETE problem

More information

Satisfiability Solvers

Satisfiability Solvers Satisfiability Solvers Part 1: Systematic Solvers 600.325/425 Declarative Methods - J. Eisner 1 Vars SAT solving has made some progress 100000 10000 1000 100 10 1 1960 1970 1980 1990 2000 2010 Year slide

More information

Locality and hard SAT-instances

Locality and hard SAT-instances Locality and hard SAT-instances Klas Markström Klas.Markstrom@math.umu.se Department of Mathematics, UmeåUniversity, SE-901 87 Umeå, Sweden Abstract In this note we construct a family of SAT-instance based

More information

Learning Techniques for Pseudo-Boolean Solving

Learning Techniques for Pseudo-Boolean Solving José Santos IST/UTL, INESC-ID Lisbon, Portugal jffs@sat.inesc-id.pt Vasco Manquinho IST/UTL, INESC-ID Lisbon, Portugal vmm@sat.inesc-id.pt Abstract The extension of conflict-based learning from Propositional

More information

CafeSat: A Modern SAT Solver for Scala

CafeSat: A Modern SAT Solver for Scala CafeSat: A Modern SAT Solver for Scala Régis Blanc École Polytechnique Fédérale de Lausanne (EPFL), Switzerland regis.blanc@epfl.ch July 30, 2013 Abstract We present CafeSat, a SAT solver written in the

More information

On Computing Minimum Size Prime Implicants

On Computing Minimum Size Prime Implicants On Computing Minimum Size Prime Implicants João P. Marques Silva Cadence European Laboratories / IST-INESC Lisbon, Portugal jpms@inesc.pt Abstract In this paper we describe a new model and algorithm for

More information

Unrestricted Backtracking Algorithms for Satisfiability

Unrestricted Backtracking Algorithms for Satisfiability From: AAAI Technical Report FS-01-04. Compilation copyright 2001, AAAI (www.aaai.org). All rights reserved. Unrestricted Backtracking Algorithms for Satisfiability I. Lynce, L. Baptista and J. Marques-Silva

More information

4.1 Review - the DPLL procedure

4.1 Review - the DPLL procedure Applied Logic Lecture 4: Efficient SAT solving CS 4860 Spring 2009 Thursday, January 29, 2009 The main purpose of these notes is to help me organize the material that I used to teach today s lecture. They

More information

Chaff: Engineering an Efficient SAT Solver

Chaff: Engineering an Efficient SAT Solver Chaff: Engineering an Efficient SAT Solver Matthew W.Moskewicz, Concor F. Madigan, Ying Zhao, Lintao Zhang, Sharad Malik Princeton University Slides: Tamir Heyman Some are from Malik s presentation Last

More information

The log-support encoding of CSP into SAT

The log-support encoding of CSP into SAT The log-support encoding of CSP into SAT Marco Gavanelli 1 Dept. of Engineering, Ferrara University, WWW home page: http://www.ing.unife.it/docenti/marcogavanelli/ Abstract. Various encodings have been

More information

SAT Solver and its Application to Combinatorial Problems

SAT Solver and its Application to Combinatorial Problems SAT Solver and its Application to Combinatorial Problems Naoyuki Tamura Kobe University 2014 December 14th, 2014 1 / 46 Contents 1 SAT Problems and SAT Solvers SAT Problems SAT Solvers Don Knuth s TAOCP

More information

SAT-Solving: Performance Analysis of Survey Propagation and DPLL

SAT-Solving: Performance Analysis of Survey Propagation and DPLL SAT-Solving: Performance Analysis of Survey Propagation and DPLL Christian Steinruecken June 2007 Abstract The Boolean Satisfiability Problem (SAT) belongs to the class of NP-complete problems, meaning

More information

Solving 3-SAT. Radboud University Nijmegen. Bachelor Thesis. Supervisors: Henk Barendregt Alexandra Silva. Author: Peter Maandag s

Solving 3-SAT. Radboud University Nijmegen. Bachelor Thesis. Supervisors: Henk Barendregt Alexandra Silva. Author: Peter Maandag s Solving 3-SAT Radboud University Nijmegen Bachelor Thesis Author: Peter Maandag s3047121 Supervisors: Henk Barendregt Alexandra Silva July 2, 2012 Contents 1 Introduction 2 1.1 Problem context............................

More information

ESE535: Electronic Design Automation CNF. Today CNF. 3-SAT Universal. Problem (A+B+/C)*(/B+D)*(C+/A+/E)

ESE535: Electronic Design Automation CNF. Today CNF. 3-SAT Universal. Problem (A+B+/C)*(/B+D)*(C+/A+/E) ESE535: Electronic Design Automation CNF Day 21: April 21, 2008 Modern SAT Solvers ({z}chaff, GRASP,miniSAT) Conjunctive Normal Form Logical AND of a set of clauses Product of sums Clauses: logical OR

More information

Random backtracking in backtrack search algorithms for satisfiability

Random backtracking in backtrack search algorithms for satisfiability Discrete Applied Mathematics 155 (2007) 1604 1612 www.elsevier.com/locate/dam Random backtracking in backtrack search algorithms for satisfiability I. Lynce, J. Marques-Silva Technical University of Lisbon,

More information

A Pearl on SAT Solving in Prolog (extended abstract)

A Pearl on SAT Solving in Prolog (extended abstract) A Pearl on SAT Solving in Prolog (extended abstract) Jacob M. Howe and Andy King 1 Introduction The Boolean satisfiability problem, SAT, is of continuing interest because a variety of problems are naturally

More information

Validating SAT Solvers Using an Independent Resolution-Based Checker: Practical Implementations and Other Applications

Validating SAT Solvers Using an Independent Resolution-Based Checker: Practical Implementations and Other Applications Validating SAT Solvers Using an Independent Resolution-Based Checker: Practical Implementations and Other Applications Lintao Zhang Department of Electrical Engineering Princeton University lintaoz@ee.princeton.edu

More information

Zchaff: A fast SAT solver. Zchaff: A fast SAT solver

Zchaff: A fast SAT solver. Zchaff: A fast SAT solver * We d like to build a complete decision procedure for SAT which is efficient. Generalized D-P-L algorithm: while (true) { if (! decide( )) /* no unassigned variables */ return (sat) while (! bcp ( ))

More information

SAT Solvers: A Condensed History. Sharad Malik Princeton University COS 598d 3/1/2010

SAT Solvers: A Condensed History. Sharad Malik Princeton University COS 598d 3/1/2010 SAT Solvers: A Condensed History Sharad Malik Princeton University COS 598d 3/1/2010 Where are we today? Intractability of the problem no longer daunting Can regularly handle practical instances with millions

More information

Symbolic Methods. The finite-state case. Martin Fränzle. Carl von Ossietzky Universität FK II, Dpt. Informatik Abt.

Symbolic Methods. The finite-state case. Martin Fränzle. Carl von Ossietzky Universität FK II, Dpt. Informatik Abt. Symbolic Methods The finite-state case Part I Martin Fränzle Carl von Ossietzky Universität FK II, Dpt. Informatik Abt. Hybride Systeme 02917: Symbolic Methods p.1/34 What you ll learn How to use and manipulate

More information

of m clauses, each containing the disjunction of boolean variables from a nite set V = fv 1 ; : : : ; vng of size n [8]. Each variable occurrence with

of m clauses, each containing the disjunction of boolean variables from a nite set V = fv 1 ; : : : ; vng of size n [8]. Each variable occurrence with A Hybridised 3-SAT Algorithm Andrew Slater Automated Reasoning Project, Computer Sciences Laboratory, RSISE, Australian National University, 0200, Canberra Andrew.Slater@anu.edu.au April 9, 1999 1 Introduction

More information

An Analysis and Comparison of Satisfiability Solving Techniques

An Analysis and Comparison of Satisfiability Solving Techniques An Analysis and Comparison of Satisfiability Solving Techniques Ankur Jain, Harsha V. Madhyastha, Craig M. Prince Department of Computer Science and Engineering University of Washington Seattle, WA 98195

More information

Linear Time Unit Propagation, Horn-SAT and 2-SAT

Linear Time Unit Propagation, Horn-SAT and 2-SAT Notes on Satisfiability-Based Problem Solving Linear Time Unit Propagation, Horn-SAT and 2-SAT David Mitchell mitchell@cs.sfu.ca September 25, 2013 This is a preliminary draft of these notes. Please do

More information

Parallel Search for Boolean Optimization

Parallel Search for Boolean Optimization Parallel Search for Boolean Optimization Ruben Martins, Vasco Manquinho, and Inês Lynce IST/INESC-ID, Technical University of Lisbon, Portugal {ruben,vmm,ines}@sat.inesc-id.pt Abstract. The predominance

More information

Example: Map coloring

Example: Map coloring Today s s lecture Local Search Lecture 7: Search - 6 Heuristic Repair CSP and 3-SAT Solving CSPs using Systematic Search. Victor Lesser CMPSCI 683 Fall 2004 The relationship between problem structure and

More information

Improving Unsatisfiability-based Algorithms for Boolean Optimization

Improving Unsatisfiability-based Algorithms for Boolean Optimization Improving Unsatisfiability-based Algorithms for Boolean Optimization Vasco Manquinho, Ruben Martins, and Inês Lynce IST/INESC-ID, Technical University of Lisbon, Portugal {vmm,ruben,ines}@sat.inesc-id.pt

More information

PROPOSITIONAL LOGIC (2)

PROPOSITIONAL LOGIC (2) PROPOSITIONAL LOGIC (2) based on Huth & Ruan Logic in Computer Science: Modelling and Reasoning about Systems Cambridge University Press, 2004 Russell & Norvig Artificial Intelligence: A Modern Approach

More information

SAT Solver. CS 680 Formal Methods Jeremy Johnson

SAT Solver. CS 680 Formal Methods Jeremy Johnson SAT Solver CS 680 Formal Methods Jeremy Johnson Disjunctive Normal Form A Boolean expression is a Boolean function Any Boolean function can be written as a Boolean expression s x 0 x 1 f Disjunctive normal

More information

Full CNF Encoding: The Counting Constraints Case

Full CNF Encoding: The Counting Constraints Case Full CNF Encoding: The Counting Constraints Case Olivier Bailleux 1 and Yacine Boufkhad 2 1 LERSIA, Université de Bourgogne Avenue Alain Savary, BP 47870 21078 Dijon Cedex olivier.bailleux@u-bourgogne.fr

More information

Towards More Effective Unsatisfiability-Based Maximum Satisfiability Algorithms

Towards More Effective Unsatisfiability-Based Maximum Satisfiability Algorithms Towards More Effective Unsatisfiability-Based Maximum Satisfiability Algorithms Joao Marques-Silva and Vasco Manquinho School of Electronics and Computer Science, University of Southampton, UK IST/INESC-ID,

More information

A Pearl on SAT Solving in Prolog

A Pearl on SAT Solving in Prolog A Pearl on SAT Solving in Prolog Jacob M. Howe 1 and Andy King 2 1 Department of Computing, City University London, EC1V 0HB, UK 2 School of Computing, University of Kent, CT2 7NF, UK Abstract. A succinct

More information

Circuit versus CNF Reasoning for Equivalence Checking

Circuit versus CNF Reasoning for Equivalence Checking Circuit versus CNF Reasoning for Equivalence Checking Armin Biere Institute for Formal Models and Verification Johannes Kepler University Linz, Austria Equivalence Checking Workshop 25 Madonna di Campiglio,

More information

Integration of Supercubing and Learning in a SAT Solver

Integration of Supercubing and Learning in a SAT Solver Integration of Supercubing and Learning in a SAT Solver Domagoj Babić and Alan J. Hu Department of Computer Science University of British Columbia {babic,ajh}@cs.ubc.ca Abstract Learning is an essential

More information

Combinational Equivalence Checking

Combinational Equivalence Checking Combinational Equivalence Checking Virendra Singh Associate Professor Computer Architecture and Dependable Systems Lab. Dept. of Electrical Engineering Indian Institute of Technology Bombay viren@ee.iitb.ac.in

More information

arxiv: v1 [cs.lo] 17 Oct 2013

arxiv: v1 [cs.lo] 17 Oct 2013 Effectiveness of pre- and inprocessing for CDCL-based SAT solving Andreas Wotzlaw, Alexander van der Grinten, and Ewald Speckenmeyer Institut für Informatik, Universität zu Köln, Pohligstr. 1, D-50969

More information

Heuristic-Based Backtracking for Propositional Satisfiability

Heuristic-Based Backtracking for Propositional Satisfiability Heuristic-Based Backtracking for Propositional Satisfiability A. Bhalla, I. Lynce, J.T. de Sousa, and J. Marques-Silva Technical University of Lisbon, IST/INESC-ID, Lisbon, Portugal {ateet,ines,jts,jpms}@sat.inesc.pt

More information

An Experimental Evaluation of Conflict Diagnosis and Recursive Learning in Boolean Satisfiability

An Experimental Evaluation of Conflict Diagnosis and Recursive Learning in Boolean Satisfiability An Experimental Evaluation of Conflict Diagnosis and Recursive Learning in Boolean Satisfiability Fadi A. Aloul and Karem A. Sakallah Department of Electrical Engineering and Computer Science University

More information

Solving Constraint Satisfaction Problems by a SAT Solver

Solving Constraint Satisfaction Problems by a SAT Solver SAT Encodings Sugar Examples Demo Summary Solving Constraint Satisfaction Problems by a SAT Solver Kobe University, JAPAN CICLOPS-WLPE-2010 SAT Encodings Sugar Examples Demo Summary Contents 3 A SAT-based

More information

Solving Satisfiability with a Novel CPU/GPU Hybrid Solution

Solving Satisfiability with a Novel CPU/GPU Hybrid Solution Solving Satisfiability with a Novel CPU/GPU Hybrid Solution Cas Craven, Bhargavi Narayanasetty, Dan Zhang Department of Electrical & Computer Engineering University of Texas, Austin, TX 78705 {dcraven,

More information

CDCL SAT Solvers. Joao Marques-Silva. Theory and Practice of SAT Solving Dagstuhl Workshop. April INESC-ID, IST, ULisbon, Portugal

CDCL SAT Solvers. Joao Marques-Silva. Theory and Practice of SAT Solving Dagstuhl Workshop. April INESC-ID, IST, ULisbon, Portugal CDCL SAT Solvers Joao Marques-Silva INESC-ID, IST, ULisbon, Portugal Theory and Practice of SAT Solving Dagstuhl Workshop April 2015 The Success of SAT Well-known NP-complete decision problem [C71] The

More information

CSP- and SAT-based Inference Techniques Applied to Gnomine

CSP- and SAT-based Inference Techniques Applied to Gnomine CSP- and SAT-based Inference Techniques Applied to Gnomine Bachelor Thesis Faculty of Science, University of Basel Department of Computer Science Artificial Intelligence ai.cs.unibas.ch Examiner: Prof.

More information

Problem-Sensitive Restart Heuristics for the DPLL Procedure

Problem-Sensitive Restart Heuristics for the DPLL Procedure Problem-Sensitive Restart Heuristics for the DPLL Procedure Carsten Sinz and Markus Iser Research Group Verification meets Algorithm Engineering Institute for Theoretical Computer Science University of

More information

The Impact of Branching Heuristics in Propositional Satisfiability Algorithms

The Impact of Branching Heuristics in Propositional Satisfiability Algorithms The Impact of Branching Heuristics in Propositional Satisfiability Algorithms João Marques-Silva Technical University of Lisbon, IST/INESC, Lisbon, Portugal jpms@inesc.pt URL: http://algos.inesc.pt/~jpms

More information

Searching for Monochromatic-Square-Free Ramsey Grid Colorings via SAT Solvers

Searching for Monochromatic-Square-Free Ramsey Grid Colorings via SAT Solvers Searching for Monochromatic-Square-Free Ramsey Grid Colorings via SAT Solvers Paul Walton Computer Science and Computer Engineering University of Arkansas Fayetteville, AR 72701, USA pwalton@uark.edu Wing

More information

Improving Glucose for Incremental SAT Solving with Assumptions: Application to MUS Extraction. Gilles Audemard Jean-Marie Lagniez and Laurent Simon

Improving Glucose for Incremental SAT Solving with Assumptions: Application to MUS Extraction. Gilles Audemard Jean-Marie Lagniez and Laurent Simon Improving Glucose for Incremental SAT Solving with Assumptions: Application to MUS Extraction Gilles Audemard Jean-Marie Lagniez and Laurent Simon SAT 2013 Glucose and MUS SAT 2013 1 / 17 Introduction

More information

Improved Exact Solver for the Weighted Max-SAT Problem

Improved Exact Solver for the Weighted Max-SAT Problem Adrian Faculty of Engineering and Computer Sciences Ulm University Adrian.Kuegel@uni-ulm.de Abstract Many exact Max-SAT solvers use a branch and bound algorithm, where the lower bound is calculated with

More information

arxiv: v2 [cs.cc] 29 Mar 2010

arxiv: v2 [cs.cc] 29 Mar 2010 On a variant of Monotone NAE-3SAT and the Triangle-Free Cut problem. arxiv:1003.3704v2 [cs.cc] 29 Mar 2010 Peiyush Jain, Microsoft Corporation. June 28, 2018 Abstract In this paper we define a restricted

More information

Using Community Structure to Detect Relevant Learnt Clauses

Using Community Structure to Detect Relevant Learnt Clauses Using Community Structure to Detect Relevant Learnt Clauses Carlos Ansótegui 1, Jesús Giráldez-Cru 2, Jordi Levy 2, and Laurent Simon 3 1 DIEI, Universitat de Lleida carlos@diei.udl.cat 2 Artificial Intelligence

More information

Memory Hierarchy Utilization of a SAT Solver

Memory Hierarchy Utilization of a SAT Solver Belegarbeit Memory Hierarchy Utilization of a SAT Solver Norbert Manthey March 31, 2010 Technische Universität Dresden Fakultät Informatik Betreuende Hochschullehrer: Prof. Dr. rer. nat. Hermann Härtig,

More information

P Is Not Equal to NP. ScholarlyCommons. University of Pennsylvania. Jon Freeman University of Pennsylvania. October 1989

P Is Not Equal to NP. ScholarlyCommons. University of Pennsylvania. Jon Freeman University of Pennsylvania. October 1989 University of Pennsylvania ScholarlyCommons Technical Reports (CIS) Department of Computer & Information Science October 1989 P Is Not Equal to NP Jon Freeman University of Pennsylvania Follow this and

More information

On CafeSat: A Modern SAT Solver for Scala

On CafeSat: A Modern SAT Solver for Scala Technical Report, April 2013 On CafeSat: A Modern SAT Solver for Scala Régis Blanc École Polytechnique Fédérale de Lausanne (EPFL), Switzerland regis.blanc@epfl.ch Abstract We present CafeSat, a SAT solver

More information

Advances and Insights into Parallel SAT Solving

Advances and Insights into Parallel SAT Solving Advances and Insights into Parallel SAT Solving Stephen Plaza, Ian Kountanis, Zaher Andraus, Valeria Bertacco, Trevor Mudge EECS Department, University of Michigan, Ann Arbor, MI 48109-2121 {splaza, ikountan,

More information

Watching Clauses in Quantified Boolean Formulae

Watching Clauses in Quantified Boolean Formulae Watching Clauses in Quantified Boolean Formulae Andrew G D Rowley University of St. Andrews, Fife, Scotland agdr@dcs.st-and.ac.uk Abstract. I present a way to speed up the detection of pure literals and

More information

ON SOLVING OPTIMIZATION PROBLEMS USING BOOLEAN SATISFIABILITY

ON SOLVING OPTIMIZATION PROBLEMS USING BOOLEAN SATISFIABILITY ON SOLVING OPTIMIZATION PROBLEMS USING BOOLEAN SATISFIABILITY Fadi A. Aloul American University of Sharjah Department of Computer Engineering P.O. Box 26666, Sharjah, UAE faloul@ausharjah.edu ABSTRACT

More information

Towards a Symmetric Treatment of Satisfaction and Conflicts in Quantified Boolean Formula Evaluation

Towards a Symmetric Treatment of Satisfaction and Conflicts in Quantified Boolean Formula Evaluation Towards a Symmetric Treatment of Satisfaction and Conflicts in Quantified Boolean Formula Evaluation Lintao Zhang, Sharad Malik Department of Electrical Engineering, Princeton University, Princeton, NJ

More information

Preprocessing in Pseudo-Boolean Optimization: An Experimental Evaluation

Preprocessing in Pseudo-Boolean Optimization: An Experimental Evaluation Preprocessing in Pseudo-Boolean Optimization: An Experimental Evaluation Ruben Martins, Inês Lynce, and Vasco Manquinho IST/INESC-ID, Technical University of Lisbon, Portugal {ruben,ines,vmm}@sat.inesc-id.pt

More information

QingTing: A Fast SAT Solver Using Local Search and E cient Unit Propagation

QingTing: A Fast SAT Solver Using Local Search and E cient Unit Propagation QingTing: A Fast SAT Solver Using Local Search and E cient Unit Propagation Xiao Yu Li, Matthias F. Stallmann, and Franc Brglez Dept. of Computer Science, NC State Univ., Raleigh, NC 27695, USA {xyli,mfms,brglez}@unity.ncsu.edu

More information

Adding a New Conflict Based Branching Heuristic in two Evolved DPLL SAT Solvers

Adding a New Conflict Based Branching Heuristic in two Evolved DPLL SAT Solvers Adding a New Conflict Based Branching Heuristic in two Evolved DPLL SAT Solvers Renato Bruni, Andrea Santori Università di Roma La Sapienza, Dip. di Informatica e Sistemistica, Via Michelangelo Buonarroti

More information

Symmetry Breaking for Pseudo-Boolean Formulas

Symmetry Breaking for Pseudo-Boolean Formulas Symmetry Breaking for Pseudo-Boolean Formulas FADI A. ALOUL American University of Sharjah and ARATHI RAMANI, IGOR L. MARKOV, and KAREM A. SAKALLAH University of Michigan, Ann Arbor 1.3 Many important

More information

Solving Constraint Satisfaction Problems by a SAT Solver

Solving Constraint Satisfaction Problems by a SAT Solver SAT Encodings Systems Summary Solving Constraint Satisfaction Problems by a SAT Solver Kobe University, JAPAN Osaka Workshop for Verification and Validation Feb 28, 2011 at AIST Amagasaki SAT Encodings

More information

Integrating a SAT Solver with Isabelle/HOL

Integrating a SAT Solver with Isabelle/HOL Integrating a SAT Solver with / Tjark Weber (joint work with Alwen Tiu et al.) webertj@in.tum.de First Munich-Nancy Workshop on Decision Procedures for Theorem Provers March 6th & 7th, 2006 Integrating

More information

MiFuMax a Literate MaxSAT Solver system description

MiFuMax a Literate MaxSAT Solver system description Journal on Satisfiability, Boolean Modeling and Computation 9 (2015) 83-88 MiFuMax a Literate MaxSAT Solver system description Mikoláš Janota Microsoft Research, Cambridge United Kingdom mikolas.janota@gmail.com

More information

Bounded Model Checking with QBF

Bounded Model Checking with QBF Bounded Model Checking with QBF N. Dershowitz, Z. Hanna and J. Katz Abstract. Current algorithms for bounded model checking (BMC) use SAT methods for checking satisfiability of Boolean formulas. These

More information

Boolean Representations and Combinatorial Equivalence

Boolean Representations and Combinatorial Equivalence Chapter 2 Boolean Representations and Combinatorial Equivalence This chapter introduces different representations of Boolean functions. It then discusses the applications of these representations for proving

More information

Multi Domain Logic and its Applications to SAT

Multi Domain Logic and its Applications to SAT Multi Domain Logic and its Applications to SAT Tudor Jebelean RISC Linz, Austria Tudor.Jebelean@risc.uni-linz.ac.at Gábor Kusper Eszterházy Károly College gkusper@aries.ektf.hu Abstract We describe a new

More information

Seminar decision procedures: Certification of SAT and unsat proofs

Seminar decision procedures: Certification of SAT and unsat proofs Seminar decision procedures: Certification of SAT and unsat proofs Wolfgang Nicka Technische Universität München June 14, 2016 Boolean satisfiability problem Term The boolean satisfiability problem (SAT)

More information

Unrestricted Nogood Recording in CSP search

Unrestricted Nogood Recording in CSP search Unrestricted Nogood Recording in CSP search George Katsirelos and Fahiem Bacchus Department of Computer Science, University Of Toronto, Toronto, Ontario, Canada [gkatsi,fbacchus]@cs.toronto.edu Abstract.

More information

Formally Certified Satisfiability Solving

Formally Certified Satisfiability Solving SAT/SMT Proof Checking Verifying SAT Solver Code Future Work Computer Science, The University of Iowa, USA April 23, 2012 Seoul National University SAT/SMT Proof Checking Verifying SAT Solver Code Future

More information

On Resolution Proofs for Combinational Equivalence Checking

On Resolution Proofs for Combinational Equivalence Checking On Resolution Proofs for Combinational Equivalence Checking Satrajit Chatterjee Alan Mishchenko Robert Brayton Department of EECS U. C. Berkeley {satrajit, alanmi, brayton}@eecs.berkeley.edu Andreas Kuehlmann

More information

2 Decision Procedures for Propositional Logic

2 Decision Procedures for Propositional Logic 2 Decision Procedures for Propositional Logic 2.1 Propositional Logic We assume that the reader is familiar with propositional logic, and with the complexity classes NP and NP-complete. The syntax of formulas

More information

Parallelization of SAT Algorithms on GPUs

Parallelization of SAT Algorithms on GPUs Parallelization of SAT Algorithms on GPUs Carlos Costa carlos.silva.costa@ist.utl.pt Instituto Superior Técnico Abstract. The Boolean Satisfability Problem is one of the most important problems in computer

More information

QuteSat. A Robust Circuit-Based SAT Solver for Complex Circuit Structure. Chung-Yang (Ric) Huang National Taiwan University

QuteSat. A Robust Circuit-Based SAT Solver for Complex Circuit Structure. Chung-Yang (Ric) Huang National Taiwan University QuteSat A Robust Circuit-Based SAT Solver for Complex Circuit Structure Chung-Yang (Ric) Huang National Taiwan University To appear: DATE 27 2/1/27 Fact Sheet (Background) Boolean Satisfiability (SAT)

More information

Clone: Solving Weighted Max-SAT in a Reduced Search Space

Clone: Solving Weighted Max-SAT in a Reduced Search Space Clone: Solving Weighted Max-SAT in a Reduced Search Space Knot Pipatsrisawat and Adnan Darwiche {thammakn,darwiche}@cs.ucla.edu Computer Science Department University of California, Los Angeles Abstract.

More information

1.4 Normal Forms. We define conjunctions of formulas as follows: and analogously disjunctions: Literals and Clauses

1.4 Normal Forms. We define conjunctions of formulas as follows: and analogously disjunctions: Literals and Clauses 1.4 Normal Forms We define conjunctions of formulas as follows: 0 i=1 F i =. 1 i=1 F i = F 1. n+1 i=1 F i = n i=1 F i F n+1. and analogously disjunctions: 0 i=1 F i =. 1 i=1 F i = F 1. n+1 i=1 F i = n

More information

Study of efficient techniques for implementing a Pseudo-Boolean solver based on cutting planes

Study of efficient techniques for implementing a Pseudo-Boolean solver based on cutting planes DEGREE PROJECT IN COMPUTER ENGINEERING, FIRST CYCLE, 15 CREDITS STOCKHOLM, SWEDEN 2017 Study of efficient techniques for implementing a Pseudo-Boolean solver based on cutting planes ALEIX SACREST GASCON

More information

Foundations of AI. 8. Satisfiability and Model Construction. Davis-Putnam, Phase Transitions, GSAT and GWSAT. Wolfram Burgard & Bernhard Nebel

Foundations of AI. 8. Satisfiability and Model Construction. Davis-Putnam, Phase Transitions, GSAT and GWSAT. Wolfram Burgard & Bernhard Nebel Foundations of AI 8. Satisfiability and Model Construction Davis-Putnam, Phase Transitions, GSAT and GWSAT Wolfram Burgard & Bernhard Nebel Contents Motivation Davis-Putnam Procedure Average complexity

More information

Boolean satisfiability

Boolean satisfiability DoI:10.1145/1536616.1536637 Satisfiability solvers can now be effectively deployed in practical applications. BY sharad malik AnD LInTAo zhang Boolean satisfiability from Theoretical hardness to Practical

More information