Results 1  10
of
14
A Simple and Flexible Way of Computing Small Unsatisfiable Cores in SAT Modulo Theories
 IN: PROCEEDINGS OF THE 10TH INTERNATIONAL CONFERENCE ON THEORY AND APPLICATIONS OF SATISFIABILITY TESTING (SAT2007
, 2007
"... Finding small unsatisfiable cores for SAT problems has recently received a lot of interest, mostly for its applications in formal verification. Surprisingly, the same problem in the context of SAT Modulo Theories (SMT) has instead received very little attention in the literature; in particular, we ..."
Abstract

Cited by 21 (3 self)
 Add to MetaCart
Finding small unsatisfiable cores for SAT problems has recently received a lot of interest, mostly for its applications in formal verification. Surprisingly, the same problem in the context of SAT Modulo Theories (SMT) has instead received very little attention in the literature; in particular, we are not aware of any work aiming at producing small unsatisfiable cores in SMT. The purpose of this paper is to start filling the gap in this area, by proposing a novel approach for computing small unsat cores in SMT. The main idea is to combine an SMT solver with an external propositional core extractor: the SMT solver produces the theory lemmas found during the search; the core extractor is then called on the boolean abstraction of the original SMT problem and of the theory lemmas. This results in an unsatisfiable core for the original SMT problem, once the remaining theory lemmas have been removed. The approach has several advantages: it is extremely simple to implement
LocalSearch Extraction of MUSes
"... SAT is probably one of the moststudied constraint satisfaction problems. In this paper, a new hybrid technique based on local search is introduced in order to approximate and extract minimally unsatisfiable subformulas (in short, MUSes) of unsatisfiable SAT instances. It is based on an original cou ..."
Abstract

Cited by 16 (2 self)
 Add to MetaCart
SAT is probably one of the moststudied constraint satisfaction problems. In this paper, a new hybrid technique based on local search is introduced in order to approximate and extract minimally unsatisfiable subformulas (in short, MUSes) of unsatisfiable SAT instances. It is based on an original counting heuristic grafted to a local search algorithm, which explores the neighborhood of the current interpretation in an original manner, making use of a critical clause concept. Intuitively, a critical clause is a falsified clause that becomes true thanks to a local search flip only when some other clauses become false at the same time. In the paper, the critical clause concept is investigated. It is shown to be the cornerstone of the efficiency of our approach, which outperforms competing ones to compute MUSes, inconsistent covers and sets of MUSes, most of the time. 1
WithinProblem Learning for Efficient Lower Bound Computation in MaxSAT Solving
, 2008
"... This paper focuses on improving branchandbound MaxSAT solvers by speeding up the lower bound computation. We notice that the existing propagationbased computing methods and the resolutionbased computing methods, which have been studied intensively, both suffer from several drawbacks. In order t ..."
Abstract

Cited by 16 (1 self)
 Add to MetaCart
This paper focuses on improving branchandbound MaxSAT solvers by speeding up the lower bound computation. We notice that the existing propagationbased computing methods and the resolutionbased computing methods, which have been studied intensively, both suffer from several drawbacks. In order to overcome these drawbacks, we propose a new method with a nice property that guarantees the increment of lower bounds. The new method exploits withinproblem learning techniques. More specifically, at each branch point in the searchtree, the current node is enabled to inherit inconsistencies from its parent and learn information about effectiveness of the lower bound computing procedure from previous nodes. Furthermore, after branching on a new variable, the inconsistencies may shrink by applying unit propagation to them, and such process increases the probability of getting better lower bounds. We graft the new techniques into maxsatz and the experimental results demonstrate that the new solver outperforms the best stateoftheart solvers on a wide range of instances including random and structured ones.
On Approaches to Explaining Infeasibility of Sets of Boolean Clauses
, 2008
"... These last years, the issue of locating and explaining contradictions inside sets of propositional clauses has received a renewed attention due to the emergence of very efficient SAT solvers. In case of inconsistency, many such solvers merely conclude that no solution exists or provide an upper appr ..."
Abstract

Cited by 11 (0 self)
 Add to MetaCart
(Show Context)
These last years, the issue of locating and explaining contradictions inside sets of propositional clauses has received a renewed attention due to the emergence of very efficient SAT solvers. In case of inconsistency, many such solvers merely conclude that no solution exists or provide an upper approximation of the subset of clauses that are contradictory. However, in most application domains, only knowing that a problem does not admit any solution is not enough informative, and it is important to know which clauses are actually conflicting. In this paper, the focus is on the concept of Minimally Unsatisfiable Subformulas (MUSes), which explain logical inconsistency in terms of minimal sets of contradictory clauses. Specifically, various recent results and computational approaches about MUSes and related concepts are discussed.
Searching for Autarkies to Trim Unsatisfiable Clause Sets
"... Abstract. An autarky is a partial assignment to the variables of a Boolean CNF formula that satisfies every clause containing an assigned variable. For an unsatisfiable formula, an autarky provides information about those clauses that are essentially independent from the infeasibility; clauses satis ..."
Abstract

Cited by 9 (1 self)
 Add to MetaCart
(Show Context)
Abstract. An autarky is a partial assignment to the variables of a Boolean CNF formula that satisfies every clause containing an assigned variable. For an unsatisfiable formula, an autarky provides information about those clauses that are essentially independent from the infeasibility; clauses satisfied by an autarky are not contained in any minimal unsatisfiable subset (MUS) or minimal correction subset (MCS) of clauses. This suggests a preprocessing step of detecting autarkies and trimming such independent clauses from an instance prior to running an algorithm for finding MUSes or MCSes. With little existing work on algorithms for finding autarkies or experimental evaluations thereof, there is room for further research in this area. Here, we present a novel algorithm that searches for autarkies directly using a standard satisfiability solver. We investigate the autarkies of several industrial benchmark suites, and experimental results show that our algorithm compares favorably to an existing approach for discovering autarkies. Finally, we explore the potential of trimming autarkies in MCS or MUSextraction flows. 1
A Branch and Bound Algorithm for Extracting Smallest Minimal Unsatisfiable Subformulas
, 2008
"... ..."
(Show Context)
Lineartime reductions of resolution proofs
 HVC ’08: 4th Intl. Haifa Verification Conf. on Hardware and Software, volume 5394 of Lecture Notes in Computer Science
, 2009
"... Abstract. DPLLbased SAT solvers progress by implicitly applying binary resolution. The resolution proofs that they generate are used, after the SAT solver’s run has terminated, for various purposes. Most notable uses in formal verification are: extracting an unsatisfiable core, extracting an inter ..."
Abstract

Cited by 8 (0 self)
 Add to MetaCart
(Show Context)
Abstract. DPLLbased SAT solvers progress by implicitly applying binary resolution. The resolution proofs that they generate are used, after the SAT solver’s run has terminated, for various purposes. Most notable uses in formal verification are: extracting an unsatisfiable core, extracting an interpolant, and detecting clauses that can be reused in an incremental satisfiability setting (the latter uses the proof only implicitly, during the run of the SAT solver). Making the resolution proof smaller can benefit all of these goals. We suggest two methods that are linear in the size of the proof for doing so. Our first technique, called RecycleUnits, uses each learned constant (unit clause) (x) for simplifying resolution steps in which x was the pivot, prior to when it was learned. Our second technique, called RecyclePivots, simplifies proofs in which there are several nodes in the resolution graph, one of which dominates the others, that correspond to the same pivot. Our experiments with industrial instances show that these simplifications reduce the core by ≈ 5 % and the proof by ≈ 13%. It reduces the core less than competing methods such as runtillfix, but whereas our algorithms are linear in the size of the proof, the latter and other competing techniques are all exponential as they are based on SAT runs. If we consider the size of the proof graph as being polynomial in the number of variables (it is not necessarily the case in general), this gives our method an exponential time reduction comparing to existing tools for small core extraction. Our experiments show that this result is evident in practice more so for the second method: rarely it takes more than a few seconds, even when competing tools time out, and hence it can be used as a cheap proof postprocessing procedure. 1
Computing small unsatisfiable cores in satisfiability modulo theories
 Journal of Artificial Intelligence Research
, 2011
"... Abstract The problem of finding small unsatisfiable cores for SAT formulas has recently received a lot of interest, mostly for its applications in formal verification. However, propositional logic is often not expressive enough for representing many interesting verification problems, which can be m ..."
Abstract

Cited by 6 (0 self)
 Add to MetaCart
(Show Context)
Abstract The problem of finding small unsatisfiable cores for SAT formulas has recently received a lot of interest, mostly for its applications in formal verification. However, propositional logic is often not expressive enough for representing many interesting verification problems, which can be more naturally addressed in the framework of Satisfiability Modulo Theories, SMT. Surprisingly, the problem of finding unsatisfiable cores in SMT has received very little attention in the literature. In this paper we present a novel approach to this problem, called the LemmaLifting approach. The main idea is to combine an SMT solver with an external propositional core extractor. The SMT solver produces the theory lemmas found during the search, dynamically lifting the suitable amount of theory information to the Boolean level. The core extractor is then called on the Boolean abstraction of the original SMT problem and of the theory lemmas. This results in an unsatisfiable core for the original SMT problem, once the remaining theory lemmas are removed. The approach is conceptually interesting, and has several advantages in practice. In fact, it is extremely simple to implement and to update, and it can be interfaced with every propositional core extractor in a plugandplay manner, so as to benefit for free of all unsatcore reduction techniques which have been or will be made available. We have evaluated our algorithm with a very extensive empirical test on SMTLIB benchmarks, which confirms the validity and potential of this approach. Motivations and Goals In the last decade we have witnessed an impressive advance in the efficiency of SAT techniques, which has brought large and previouslyintractable problems at the reach of stateoftheart SAT solvers. As a consequence, SAT solvers are now a fundamental tool in many industrialstrength applications, including most formal verification design flows for hardware systems, for equivalence, property checking, and ATPG. In particular, one of the most relevant problems in this context, thanks to its many important applications, is that of finding small unsatisfiable cores, that is, small unsatisfiable subsets of unsatisfiable sets of clauses. Surprisingly, the problem of finding unsatisfiable cores in SMT has received virtually no attention in the literature. Although some SMT tools do compute unsat cores, this is done either as a byproduct of the more general task of producing proofs, or by modifying the embedded DPLL solver so that to apply basic propositional techniques to produce an unsat core. In particular, we are not aware of any work aiming at producing small unsatisfiable cores in SMT. In this paper we present a novel approach addressing this problem, which we call the LemmaLifting approach. The main idea is to combine an SMT solver with an external propositional core extractor. The SMT solver stores and returns the theory lemmas it had to prove in order to refute the input formula; the external core extractor is then called on the Boolean abstraction of the original SMT problem and of the theory lemmas. Our algorithm is based on the following two key observations: i) the theory lemmas discovered by the SMT solver during search are valid clauses in the theory T under consideration, and therefore they do not affect the satisfiability of a formula in T ; and ii) the conjunction of the original SMT formula with all the theory lemmas is propositionally unsatisfiable. Therefore, the external (Boolean) core extractor finds an unsatisfiable core for (the Boolean abstraction of) the conjunction of the original formula and the theory lemmas, which can then be refined back into a subset of the original clauses by simply removing from it (the Boolean abstractions of) all theory lemmas. The result is an unsatisfiable core of the original SMT problem. 702 Computing Small Unsatisfiable Cores in Satisfiability Modulo Theories Although simple in principle, the approach is conceptually interesting: basically, the SMT solver is used to dynamically lift the suitable amount of theory information to the Boolean level. Furthermore, the approach has several advantages in practice: first, it is extremely simple to implement and to update; second, it is effective in finding small cores; third, the core extraction is not prone to complex SMT reasoning; finally, it can be interfaced with every propositional core extractor in a plugandplay manner, so as to benefit for free of all unsatcore reduction techniques which have been or will be made available. We have evaluated our approach by a very extensive empirical test on SMTLIB benchmarks, in terms of both effectiveness (reduction in size of the cores) and efficiency (execution time). The results confirm the validity and versatility of this approach. As a byproduct, we have also produced an extensive and insightful evaluation of the main Boolean unsatcoregeneration tools currently available. Content. The paper is organized as follows. In §2 and §3 we provide some background knowledge on techniques for SAT and SMT ( §2), and for the extraction of unsatisfiable cores in SAT and in SMT ( §3). In §4 we present and discuss our new approach and algorithm. In §5 we present and comment on the empirical tests. In §6 we conclude, suggesting some future developments.
Synthesizing Complementary Circuits Automatically
 ICCAD'09
, 2009
"... One of the most difficult jobs in designing communication and multimedia chips, is to design and verify complex complementary circuit pair (E, E −1), in which circuit E transforms information into a format that is suitable for transmission and storage, while E’s complementary circuit E −1 recovers t ..."
Abstract

Cited by 4 (2 self)
 Add to MetaCart
(Show Context)
One of the most difficult jobs in designing communication and multimedia chips, is to design and verify complex complementary circuit pair (E, E −1), in which circuit E transforms information into a format that is suitable for transmission and storage, while E’s complementary circuit E −1 recovers this information. In order to ease this job, we propose a novel twostep approach to synthesize complementary circuit E −1 from E fully automatically. First, we assume that the circuit E satisfies parameterized complementary assumption, which means its input can be recovered from its output under some parameter setting. We check this assumption with SAT solver and find out proper values of these parameters. Second, with parameter values and the SAT instance obtained in the first step, we build the complementary circuit E −1 with an efficient satisfying assignments enumeration technique that is specially designed for circuits with lots of XOR gates. To illustrate its usefulness and efficiency, we run our algorithm on several complex encoders from industrial projects, including PCIE and 10G ethernet, and successfully generate correct complementary circuits for them.
Quantified maximum satisfiability: A coreguided approach
 In International Conference Theory and Applications of Satisfiability Testing
, 2013
"... Abstract. In recent years, there have been significant improvements in algorithms both for Quantified Boolean Formulas (QBF) and for Maximum Satisfiability (MaxSAT). This paper studies the problem of solving quantified formulas subject to a cost function, and considers the problem in a quantified ..."
Abstract

Cited by 4 (3 self)
 Add to MetaCart
(Show Context)
Abstract. In recent years, there have been significant improvements in algorithms both for Quantified Boolean Formulas (QBF) and for Maximum Satisfiability (MaxSAT). This paper studies the problem of solving quantified formulas subject to a cost function, and considers the problem in a quantified MaxSAT setting. Two approaches are investigated. One is based on relaxing the soft clauses and performing a linear search on the cost function. The other approach, which is the main contribution of the paper, is inspired by recent work on MaxSAT, and exploits the iterative identification of unsatisfiable cores. The paper investigates the application of these approaches to the concrete problem of computing smallest minimal unsatisfiable subformulas (SMUS), a decision version of which is a wellknown problem in the second level of the polynomial hierarchy. Experimental results, obtained on representative problem instances, indicate that the coreguided approach for the SMUS problem outperforms the use of linear search over the values of the cost function. More significantly, the coreguided approach also outperforms the stateoftheart SMUS extractor Digger. 1