scispace - formally typeset
Open AccessBook ChapterDOI

A Tool for Checking ANSI-C Programs

Reads0
Chats0
TLDR
The tool supports almost all ANSI-C language features, including pointer constructs, dynamic memory allocation, recursion, and the float and double data types, and is integrated into a graphical user interface.
Abstract
We present a tool for the formal verification of ANSI-C programs using Bounded Model Checking (BMC). The emphasis is on usability: the tool supports almost all ANSI-C language features, including pointer constructs, dynamic memory allocation, recursion, and the float and double data types. From the perspective of the user, the verification is highly automated: the only input required is the BMC bound. The tool is integrated into a graphical user interface. This is essential for presenting long counterexample traces: the tool allows stepping through the trace in the same way a debugger allows stepping through a program.

read more

Content maybe subject to copyright    Report

Citations
More filters
Proceedings ArticleDOI

KLEE: unassisted and automatic generation of high-coverage tests for complex systems programs

TL;DR: A new symbolic execution tool, KLEE, capable of automatically generating tests that achieve high coverage on a diverse set of complex and environmentally-intensive programs, and significantly beat the coverage of the developers' own hand-written test suite is presented.

Tools and Algorithms for the Construction and Analysis of Systems. Proc. TACAS 2009

TL;DR: This paper presents a meta-modelling framework for modeling and testing the robustness of the modeled systems and some of the techniques used in this framework have been developed and tested in the field.
Proceedings ArticleDOI

TrustVisor: Efficient TCB Reduction and Attestation

TL;DR: TrustVisor is presented, a special-purpose hypervisor that provides code integrity as well as data integrity and secrecy for selected portions of an application that has a very small code base that makes verification feasible.
Book ChapterDOI

CPACHECKER: a tool for configurable software verification

TL;DR: CPAchecker as discussed by the authors is a tool and framework that aims at easy integration of new verification components, such as configurable program analysis (CPA), in one single formalism.
Book ChapterDOI

The ASTREÉ analyzer

TL;DR: ASTREE is an abstract interpretation-based static program analyzer aiming at proving automatically the absence of run time errors in programs written in the C programming language, producing a correctness proof for complex software without any false alarm in a few hours of computation.
References
More filters
Book ChapterDOI

A Temporal Logic of Nested Calls and Returns

TL;DR: This work introduces a temporal logic of calls and returns (CaRet) for specification and algorithmic verification of correctness requirements of structured programs and presents a tableau construction that reduces the model checking problem to the emptiness problem for a Buchi pushdown system.
Proceedings ArticleDOI

Chaff: engineering an efficient SAT solver

TL;DR: The development of a new complete solver, Chaff, is described which achieves significant performance gains through careful engineering of all aspects of the search-especially a particularly efficient implementation of Boolean constraint propagation (BCP) and a novel low overhead decision strategy.
Book ChapterDOI

Symbolic Model Checking without BDDs

TL;DR: This paper shows how boolean decision procedures, like Stalmarck's Method or the Davis & Putnam Procedure, can replace BDDs, and introduces a bounded model checking procedure for LTL which reduces model checking to propositional satisfiability.

Tools and Algorithms for the Construction and Analysis of Systems. Proc. TACAS 2009

TL;DR: This paper presents a meta-modelling framework for modeling and testing the robustness of the modeled systems and some of the techniques used in this framework have been developed and tested in the field.
Proceedings ArticleDOI

Behavioral consistency of C and Verilog programs using bounded model checking

TL;DR: This work presents an algorithm that checks behavioral consistency between an ANSI-C program and a circuit given in Verilog using Bounded Model Checking and describes experimental results on various reactive circuits and programs.