scispace - formally typeset
Book ChapterDOI

Loop Summarization Using Abstract Transformers

Reads0
Chats0
TLDR
A new algorithm is proposed to compute an over-approximation of the set of reachable states of a program by replacing loops in the control flow graph by their abstract transformer, able to generate diagnostic information in case of property violations.
Abstract
Existing program analysis tools that implement abstraction rely on saturating procedures to compute over-approximations of fixpoints. As an alternative, we propose a new algorithm to compute an over-approximation of the set of reachable states of a program by replacing loops in the control flow graph by their abstract transformer. Our technique is able to generate diagnostic information in case of property violations, which we call leaping counterexamples. We have implemented this technique and report experimental results on a set of large ANSI-C programs using abstract domains that focus on properties related to string-buffers.

read more

Content maybe subject to copyright    Report

Citations
More filters
Book ChapterDOI

A lightweight approach for loop summarization

TL;DR: This work uses inference rules to compute summaries of loop summaries and was able to verify safety properties for many examples which are out of the scope of several existing tools.
Journal ArticleDOI

A Survey of Symbolic Execution Techniques

TL;DR: A survey of the main challenges, challenges, and solutions for symbolic execution can be found in this paper, where the authors provide an overview of main ideas, challenges and solutions developed in the area.
Posted Content

A Survey of Symbolic Execution Techniques

TL;DR: The goal of this survey is to provide an overview of the main ideas, challenges, and solutions developed in Symbolic execution, distilling them for a broad audience.
Book ChapterDOI

Bound analysis of imperative programs with the size-change abstraction

TL;DR: In this paper, a bound analysis tool based on size-change abstraction (SCA) for imperative programs has been implemented, which can capture many of the essential ideas of previous termination and bound analysis and goes beyond in a conceptually simpler framework.
Book ChapterDOI

Software verification using k-induction

TL;DR: A new k-induction rule is presented that takes an unstructured, reducible control flow graph, a natural loop occurring in the CFG, and a positive integer k, and constructs a single CFG in which the given loop is eliminated via an unwinding proportional to k.
References
More filters

Model checking

TL;DR: Model checking tools, created by both academic and industrial teams, have resulted in an entirely novel approach to verification and test case generation that often enables engineers in the electronics industry to design complex systems with considerable assurance regarding the correctness of their initial designs.
Proceedings ArticleDOI

Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints

TL;DR: In this paper, the abstract interpretation of programs is used to describe computations in another universe of abstract objects, so that the results of abstract execution give some information on the actual computations.
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.