#### Filter Results:

- Full text PDF available (204)

#### Publication Year

1999

2017

- This year (14)
- Last 5 years (113)
- Last 10 years (192)

#### Publication Type

#### Co-author

#### Journals and Conferences

#### Key Phrases

Learn More

- Edmund M. Clarke, Daniel Kroening, Flavio Lerda
- TACAS
- 2004

W l f h f l ifi i f ANSI C i e present a too or t e orma ver cat on o programs us ng Bounded Model Checking (BMC). The emphasis is on usability: the tool supports almost all ANSI-C language features, including pointer constructs, d i ll ti i d th fl t d d bl d t t ynam c memory a oca on, recurs on, an e oa an ou e a a ypes. From the perspective of the user,… (More)

- Edmund M. Clarke, Daniel Kroening, Natasha Sharygina, Karen Yorav
- TACAS
- 2005

This paper presents a model checking tool, SatAbs, that implements a predicate abstraction refinement loop. Existing software verification tools such as Slam, Blast, or Magic use decision procedures for abstraction and simulation that are limited to integers. SatAbs overcomes these limitations by using a SAT-solver. This allows the model checker to handle… (More)

- Daniel Kroening, Ofer Strichman
- Texts in Theoretical Computer Science. An EATCS…
- 2008

- Edmund M. Clarke, Daniel Kroening, Karen Yorav
- DAC
- 2003

We present an algorithm that checks behavioral consistency between an ANSI-C program and a circuit given in Verilog using Bounded Model Checking. Both the circuit and the program are unwound and translated into a formula that is satisfiable if and only if the circuit and the code disagree. The formula is then checked using a SAT solver. We are able to… (More)

- Edmund M. Clarke, Daniel Kroening, Joël Ouaknine, Ofer Strichman
- VMCAI
- 2004

For every finite model M and an LTL property φ, there exists a number CT (the Completeness Threshold) such that if there is no counterexample to φ in M of length CT or less, then M |= φ. Finding this number, if it is sufficiently small, offers a practical method for making Bounded Model Checking complete. We describe how to compute an over-approximation to… (More)

The number of interleavings of a concurrent program makes automatic analysis of such software very hard. Modern multiprocessors’ execution models make this problem even harder. Modelling program executions with partial orders rather than interleavings addresses both issues: we obtain an efficient encoding into integer difference logic for bounded model… (More)

- Edmund M. Clarke, Daniel Kroening, Natasha Sharygina, Karen Yorav
- Formal Methods in System Design
- 2004

Predicate abstraction is a major method for verification of software. However, the generation of the abstract Boolean program from the set of predicates and the original program suffers from an exponential number of theorem prover calls as well as from soundness issues. This paper presents a novel technique that uses an efficient SAT solver for generating… (More)

- Daniel Kroening, Michael Tautschnig
- TACAS
- 2014

Interpolant-based model checking is an approximate method for computing invariants of transition systems. The performance of the model checker is contingent on the approximation computed, which in turn depends on the logical strength of the interpolants. A good approximation is coarse enough to enable rapid convergence but strong enough to be contained… (More)

- Byron Cook, Daniel Kroening, Natasha Sharygina
- CAV
- 2005

Many symbolic software verification engines such as Slam and ESC/Java rely on automatic theorem provers. The existing theorem provers, such as Simplify, lack precise support for important programming language constructs such as pointers, structures and unions. This paper describes a theorem prover, Cogent, that accurately supports all ANSI-C expressions.… (More)