Results 1  10
of
11
Weakest precondition synthesis for compiler optimizations
 In Proc. of the 15th International Conference on Verification, Model Checking, and Abstract Interpretation
, 2014
"... Abstract. Compiler optimizations play an increasingly important role in code generation. This is especially true with the advent of resourcelimited mobile devices. We rely on compiler optimizations to improve performance, reduce code size, and reduce power consumption of our programs. Despite being ..."
Abstract

Cited by 4 (3 self)
 Add to MetaCart
(Show Context)
Abstract. Compiler optimizations play an increasingly important role in code generation. This is especially true with the advent of resourcelimited mobile devices. We rely on compiler optimizations to improve performance, reduce code size, and reduce power consumption of our programs. Despite being a mature field, compiler optimizations are still designed and implemented by hand, and usually without providing any guarantee of correctness. In addition to devising the code transformations, designers and implementers have to come up with an analysis that determines in which cases the optimization can be safely applied. In other words, the optimization designer has to specify a precondition that ensures that the optimization is semanticspreserving. However, devising preconditions for optimizations by hand is a nontrivial task. It is easy to specify a precondition that, although correct, is too restrictive, and therefore misses some optimization opportunities. In this paper, we propose, to the best of our knowledge, the first algorithm for the automatic synthesis of preconditions for compiler optimizations. The synthesized preconditions are provably correct by construction, and they are guaranteed to be the weakest in the precondition language that we consider. We implemented the proposed technique in a tool named PSyCO. We present examples of preconditions synthesized by PSyCO, as well as the results of running PSyCO on a set of optimizations. 1
MUS Extraction using Clausal Proofs
"... Abstract. Recent work introduced an effective method for extraction of reduced unsatisfiable cores of CNF formulas as a byproduct of validation of clausal proofs emitted by conflictdriven clause learning SAT solvers. In this paper, we demonstrate that this method for trimming CNF formulas can als ..."
Abstract

Cited by 2 (2 self)
 Add to MetaCart
(Show Context)
Abstract. Recent work introduced an effective method for extraction of reduced unsatisfiable cores of CNF formulas as a byproduct of validation of clausal proofs emitted by conflictdriven clause learning SAT solvers. In this paper, we demonstrate that this method for trimming CNF formulas can also benefit stateoftheart tools for the computation of a Minimal Unsatisfiable Subformula (MUS). Furthermore, we propose a number of techniques that improve the quality of trimming, and demonstrate a significant positive impact on the performance of MUS extractors from the improved trimming. 1
Network verification in the light of program verification
"... Abstract The fastest tools for network reachability queries use adhoc algorithms to compute all packets from a source S that can reach a destination D. This paper examines whether network reachability can be solved efficiently using existing verification tools. While most verification tools only co ..."
Abstract

Cited by 2 (0 self)
 Add to MetaCart
(Show Context)
Abstract The fastest tools for network reachability queries use adhoc algorithms to compute all packets from a source S that can reach a destination D. This paper examines whether network reachability can be solved efficiently using existing verification tools. While most verification tools only compute reachability ("Can S reach D?"), we efficiently generalize them to compute all reachable packets. Using new and old benchmarks, we compare model checkers, SAT solvers and various Datalog implementations. The only existing verification method that worked competitively on all benchmarks in seconds was Datalog with a new composite FilterProject operator and a Difference of Cubes representation. While Datalog is slightly slower than the Hassel C tool, it is far more flexible. We also present new results that more precisely characterize the computational complexity of network verification. This paper also provides a gentle introduction to program verification for the networking community.
A.: SAT modulo monotonic theories
 In: Proc. AAAI’15. AAAI Press
, 2015
"... Abstract. We define the concept of a “monotonic theory ” and show how to build efficient SMT (SAT Modulo Theory) solvers, including effective theory propagation and clause learning, for such theories. We present examples showing that monotonic theories arise from many common problems, e.g., graph ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
(Show Context)
Abstract. We define the concept of a “monotonic theory ” and show how to build efficient SMT (SAT Modulo Theory) solvers, including effective theory propagation and clause learning, for such theories. We present examples showing that monotonic theories arise from many common problems, e.g., graph properties such as reachability, shortest paths, connected components, minimum spanning tree, and maxflow/mincut, and then demonstrate our framework by building SMT solvers for each of these theories. We apply these solvers to procedural content generation problems, demonstrating major speedups over stateoftheart approaches based on SAT or Answer Set Programming, and easily solving several instances that were previously impractical to solve. 1
FixedParameter Tractable Reductions to SAT FixedParameter Tractable Reductions to SAT
"... Abstract. Today's SAT solvers have an enormous importance and impact in many practical settings. They are used as efficient backend to solve many NPcomplete problems. However, many computational problems are located at the second level of the Polynomial Hierarchy or even higher, and hence po ..."
Abstract
 Add to MetaCart
(Show Context)
Abstract. Today's SAT solvers have an enormous importance and impact in many practical settings. They are used as efficient backend to solve many NPcomplete problems. However, many computational problems are located at the second level of the Polynomial Hierarchy or even higher, and hence polynomialtime transformations to SAT are not possible, unless the hierarchy collapses. In certain cases one can break through these complexity barriers by fixedparameter tractable (fpt) reductions which exploit structural aspects of problem instances in terms of problem parameters. Recent research established a general theoretical framework that supports the classification of parameterized problems on whether they admit such an fptreduction to SAT or not. We use this framework to analyze some problems that are related to Boolean satisfiability. We consider several natural parameterizations of these problems, and we identify for which of these an fptreduction to SAT is possible. The problems that we look at are related to minimizing an implicant of a DNF formula, minimizing a DNF formula, and satisfiability of quantified Boolean formulas.
Small Inductive Safe Invariants
"... AbstractComputing minimal (or even just small) certificates is a central problem in automated reasoning and, in particular, in automated formal verification. For example, Minimal Unsatisfiable Subsets (MUSes) have a wide range of applications in verification ranging from abstraction and generaliza ..."
Abstract
 Add to MetaCart
AbstractComputing minimal (or even just small) certificates is a central problem in automated reasoning and, in particular, in automated formal verification. For example, Minimal Unsatisfiable Subsets (MUSes) have a wide range of applications in verification ranging from abstraction and generalization to vacuity detection and more. In this paper, we study the problem of computing minimal certificates for safety properties. In this setting, a certificate is a set of clauses Inv such that each clause contains initial states, and their conjunction is safe (no bad states) and inductive. A certificate is minimal, if no subset of Inv is safe and inductive. We propose a twotiered approach for computing a Minimal Safe Inductive Subset (MSIS) of Inv . The first tier is two efficient approximation algorithms that underand overapproximate MSIS, respectively. The second tier is an optimized reduction from MSIS to a sequence of computations of Maximal Inductive Subsets (MIS). We evaluate our approach on the HWMCC benchmarks and certificates produced by our variant of IC3. We show that our approach is several orders of magnitude more effective than the naïve reduction of MSIS to MIS.
Proceedings of the TwentyThird International Joint Conference on Artificial Intelligence On Computing Minimal Correction Subsets
"... A set of constraints that cannot be simultaneously satisfied is overconstrained. Minimal relaxations and minimal explanations for overconstrained problems find many practical uses. For Boolean formulas, minimal relaxations of overconstrained problems are referred to as Minimal Correction Subsets ..."
Abstract
 Add to MetaCart
A set of constraints that cannot be simultaneously satisfied is overconstrained. Minimal relaxations and minimal explanations for overconstrained problems find many practical uses. For Boolean formulas, minimal relaxations of overconstrained problems are referred to as Minimal Correction Subsets (MCSes). MCSes find many applications, including the enumeration of MUSes. Existing approaches for computing MCSes either use a Maximum Satisfiability (MaxSAT) solver or iterative calls to a Boolean Satisfiability (SAT) solver. This paper shows that existing algorithms for MCS computation can be inefficient, and so inadequate, in certain practical settings. To address this problem, this paper develops a number of novel techniques for improving the performance of existing MCS computation algorithms. More importantly, the paper proposes a novel algorithm for computing MCSes. Both the techniques and the algorithm are evaluated empirically on representative problem instances, and are shown to yield the most efficient and robust solutions for MCS computation. 1
On Minimal Corrections in ASP
"... Abstract. As a programming paradigm, answer set programming (ASP) brings about the usual issue of the human error. Hence, it is desirable to provide automated techniques that could help the programmer to find the error. This paper addresses the question of computing a subsetminimal correction of a ..."
Abstract
 Add to MetaCart
(Show Context)
Abstract. As a programming paradigm, answer set programming (ASP) brings about the usual issue of the human error. Hence, it is desirable to provide automated techniques that could help the programmer to find the error. This paper addresses the question of computing a subsetminimal correction of a contradictory ASP program. A contradictory ASP program is often undesirable and we wish to provide an automated way of fixing it. We consider a minimal correction set of a contradictory program to be an irreducible set of rules whose removal makes the program consistent. In contrast to propositional logic, corrections of ASP programs behave nonmonotonically. Nevertheless, we show that a variety of algorithms for correction set computation in propositional logic can be ported to ASP. An experimental evaluation was carried showing that having a portfolio of such algorithms is indeed of benefit. 1