Results 11  20
of
133
Expressiveness + automation + soundness: Towards combining SMT solvers and interactive proof assistants
 IN TOOLS AND ALGORITHMS FOR CONSTRUCTION AND ANALYSIS OF SYSTEMS (TACAS
, 2006
"... Formal system development needs expressive specification languages, but also calls for highly automated tools. These two goals are not easy to reconcile, especially if one also aims at high assurances for correctness. In this paper, we describe a combination of Isabelle/HOL with a proofproducing ..."
Abstract

Cited by 31 (5 self)
 Add to MetaCart
(Show Context)
Formal system development needs expressive specification languages, but also calls for highly automated tools. These two goals are not easy to reconcile, especially if one also aims at high assurances for correctness. In this paper, we describe a combination of Isabelle/HOL with a proofproducing SMT (Satisfiability Modulo Theories) solver that contains a SAT engine and a decision procedure for quantifierfree firstorder logic with equality. As a result, a user benefits from the expressiveness of Isabelle/HOL when modeling a system, but obtains much better automation for those fragments of the proofs that fall within the scope of the (automatic) SMT solver. Soundness is not compromised because all proofs are submitted to the trusted kernel of Isabelle for certification. This architecture is straightforward to extend for other interactive proof assistants and proofproducing reasoners.
P.: Iterative abstraction using SATbased BMC with proof analysis
 In: Proceedings of the IEEE/ACM international conference on Computeraided design (ICCAD’03
, 2003
"... Resolutionbased proof analysis techniques have been proposed recently to identify a sufficient set of reasons for unsatisfiability derived by a CNFbased SAT solver. We have adapted these techniques to work with a hybrid SAT solver. We use the proof analysis technique with SATbased BMC, in order t ..."
Abstract

Cited by 31 (5 self)
 Add to MetaCart
(Show Context)
Resolutionbased proof analysis techniques have been proposed recently to identify a sufficient set of reasons for unsatisfiability derived by a CNFbased SAT solver. We have adapted these techniques to work with a hybrid SAT solver. We use the proof analysis technique with SATbased BMC, in order to generate useful abstract models. Our abstraction procedure is used iteratively in a topdown framework, starting from the concrete models. We apply various SATbased and BDDbased verification methods on these abstract models, in order to obtain proofs of correctness, or to perform deeper searches for counterexamples. We demonstrate the effectiveness of our prototype implementation on several large industry designs. 1.
Debugging Overconstrained Declarative Models Using Unsatisfiable Cores
 In 18th IEEE International Conference on Automated Software Engineering
, 2003
"... Declarative models, in which conjunction and negation are freely used, are susceptible to unintentional overconstraint. Core extraction is a new analysis that mitigates this problem in the context of a checker based on reduction to SAT. It exploits a recently developed facility of SAT solvers that ..."
Abstract

Cited by 31 (3 self)
 Add to MetaCart
Declarative models, in which conjunction and negation are freely used, are susceptible to unintentional overconstraint. Core extraction is a new analysis that mitigates this problem in the context of a checker based on reduction to SAT. It exploits a recently developed facility of SAT solvers that provides an "unsatisfiable core" of an unsatisfiable set of clauses, often much smaller than the clause set as a whole. The unsatisfiable core is mapped back into the syntax of the original model, showing the user fragments of the model found to be irrelevant. This information can be a great help in discovering and localizing overconstraint, and in some cases pinpoints it immediately. The construction of the mapping is given for a generalized modelling language, along with a justification of the soundness of the claim that the marked portions of the model are irrelevant. Experiences in applying core extraction to a variety of existing models are discussed.
Inferring specifications to detect errors in code
 In ASE’04
, 2004
"... Abstract. A new technique is presented to statically check a given procedure against a userprovided property. The method requires no annotations; it automatically infers a contextdependent specification for each procedure call, so that only as much information about a procedure is used as is neede ..."
Abstract

Cited by 31 (2 self)
 Add to MetaCart
Abstract. A new technique is presented to statically check a given procedure against a userprovided property. The method requires no annotations; it automatically infers a contextdependent specification for each procedure call, so that only as much information about a procedure is used as is needed to analyze its caller. Specifications are inferred iteratively. Empty specifications are initially used to overapproximate the effects of all procedure calls; these are later refined in response to spurious counterexamples. When the analysis terminates, any remaining counterexample is guaranteed to be valid. However, since the heap is finitized, the absence of a counterexample does not guarantee the validity of the given property. 1.
SMT techniques for fast predicate abstraction
 In Computer Aided Verification (CAV
, 2006
"... Abstract. Predicate abstraction is a technique for automatically extracting finitestate abstractions for systems with potentially infinite state space. The fundamental operation in predicate abstraction is to compute the best approximation of a Boolean formula ϕ over a set of predicates P. In this ..."
Abstract

Cited by 30 (2 self)
 Add to MetaCart
(Show Context)
Abstract. Predicate abstraction is a technique for automatically extracting finitestate abstractions for systems with potentially infinite state space. The fundamental operation in predicate abstraction is to compute the best approximation of a Boolean formula ϕ over a set of predicates P. In this work, we demonstrate the use for this operation of a decision procedure based on the DPLL(T) framework for SAT Modulo Theories (SMT). The new algorithm is based on a careful generation of the set of all satisfying assignments over a set of predicates. It consistently outperforms previous methods by a factor of at least 20, on a diverse set of hardware and software verification benchmarks. We report detailed analysis of the results and the impact of a number of variations of the techniques. We also propose and evaluate a scheme for incremental refinement of approximations for predicate abstraction in the above framework. 1
OPIUM: Optimal Package Install/Uninstall Manager
"... Common Linux distributions often include package management tools such as aptget in Debian or yum in RedHat. Using information about package dependencies and conflicts, such tools can determine how to install a new package (and its dependencies) on a system of already installed packages. Using off ..."
Abstract

Cited by 28 (0 self)
 Add to MetaCart
(Show Context)
Common Linux distributions often include package management tools such as aptget in Debian or yum in RedHat. Using information about package dependencies and conflicts, such tools can determine how to install a new package (and its dependencies) on a system of already installed packages. Using offtheshelf SAT solvers, pseudoboolean solvers, and Integer Linear Programming solvers, we have developed a new packagemanagement tool, called Opium, that improves on current tools in two ways: (1) Opium is complete, in that if there is a solution, Opium is guaranteed to find it, and (2) Opium can optimize a userprovided objective function, which could for example state that smaller packages should be preferred over larger ones. We performed a comparative study of our tool against Debian’s aptget on 600 traces of realworld package installations. We show that Opium runs fast enough to be usable, and that its completeness and optimality guarantees provides concrete benefits to end users. 1
Fast Reflexive Arithmetic Tactics the linear case and beyond
 in &quot;Types for Proofs and Programs (TYPES’06)&quot;, Lecture Notes in Computer Science
, 2006
"... Abstract. When goals fall in decidable logic fragments, users of proofassistants expect automation. However, despite the availability of decision procedures, automation does not come for free. The reason is that decision procedures do not generate proof terms. In this paper, we show how to design ef ..."
Abstract

Cited by 27 (5 self)
 Add to MetaCart
(Show Context)
Abstract. When goals fall in decidable logic fragments, users of proofassistants expect automation. However, despite the availability of decision procedures, automation does not come for free. The reason is that decision procedures do not generate proof terms. In this paper, we show how to design efficient and lightweight reflexive tactics for a hierarchy of quantifierfree fragments of integer arithmetics. The tactics can cope with a wide class of linear and nonlinear goals. For each logic fragment, offtheshelf algorithms generate certificates of infeasibility that are then validated by straightforward reflexive checkers proved correct inside the proofassistant. This approach has been prototyped using the Coq proofassistant. Preliminary experiments are promising as the tactics run fast and produce small proof terms. 1
Extended resolution proofs for conjoining BDDs
 IN: PROC. OF THE 1ST INTL. COMPUTER SCIENCE SYMP. IN RUSSIA (CSR 2006). LNCS 3967
, 2006
"... We present a method to convert the construction of binary decision diagrams (BDDs) into extended resolution proofs. Besides in proof checking, proofs are fundamental to many applications and our results allow the use of BDDs instead—or in combination with—established proof generation techniques, ba ..."
Abstract

Cited by 25 (5 self)
 Add to MetaCart
(Show Context)
We present a method to convert the construction of binary decision diagrams (BDDs) into extended resolution proofs. Besides in proof checking, proofs are fundamental to many applications and our results allow the use of BDDs instead—or in combination with—established proof generation techniques, based for instance on clause learning. We have implemented a proof generator for propositional logic formulae in conjunctive normal form, called EBDDRES. We present details of our implementation and also report on experimental results. To our knowledge this is the first step towards a practical application of extended resolution.
Parallel Multithreaded Satisfiability Solver: Design and Implementation
, 2005
"... This thesis describes the design and implementation of a highly optimized, multithreaded algorithm for the propositional satisfiability problem. The algorithm is based on the DavisLogemannLoveland sequential algorithm, but includes many of the optimization techniques introduced in recent years. Th ..."
Abstract

Cited by 23 (1 self)
 Add to MetaCart
This thesis describes the design and implementation of a highly optimized, multithreaded algorithm for the propositional satisfiability problem. The algorithm is based on the DavisLogemannLoveland sequential algorithm, but includes many of the optimization techniques introduced in recent years. The document provides experimental results for the execution of the parallel algorithm on a variety of multiprocessor machines with shared memory architecture. In particular, the overwhelming e#ect of parallel execution on the performance of processor cache is studied.
SATbased Finite Model Generation for HigherOrder Logic
 PH.D. THESIS, INSTITUT FÃR INFORMATIK, TECHNISCHE UNIVERSITÃT
, 2008
"... ..."