Catálogo de publicaciones - libros

Compartir en
redes sociales


Computer Aided Verification: 17th International Conference, CAV 2005, Edinburgh, Scotland, UK, July 6-10, 2005, Proceedings

Kousha Etessami ; Sriram K. Rajamani (eds.)

En conferencia: 17º International Conference on Computer Aided Verification (CAV) . Edinburgh, United Kingdom . July 6, 2005 - July 10, 2005

Resumen/Descripción – provisto por la editorial

No disponible.

Palabras clave – provistas por la editorial

Logics and Meanings of Programs; Software Engineering; Mathematical Logic and Formal Languages; Artificial Intelligence (incl. Robotics); Logic Design

Disponibilidad
Institución detectada Año de publicación Navegá Descargá Solicitá
No detectada 2005 SpringerLink

Información

Tipo de recurso:

libros

ISBN impreso

978-3-540-27231-1

ISBN electrónico

978-3-540-31686-2

Editor responsable

Springer Nature

País de edición

Reino Unido

Fecha de publicación

Información sobre derechos de publicación

© Springer-Verlag Berlin Heidelberg 2005

Tabla de contenidos

Romeo: A Tool for Analyzing Time Petri Nets

Guillaume Gardey; Didier Lime; Morgan Magnin; Olivier (H. ) Roux

In this paper, we present the features of , a Time Petri Net (TPN) analyzer. The tool allows state space computation of and on-the-fly model-checking of reachability properties. It performs translations from to Timed Automata () that preserve the behavioural semantics (timed bisimilarity) of the . Besides, our tool also deals with an extension of Time Petri Nets () for which the valuations of transitions may be stopped and resumed, thus allowing the modeling preemption.

- Tool Papers III | Pp. 418-423

TRANSYT:A Tool for the Verification of Asynchronous Concurrent Systems

Enric Pastor; Marco A. Peña; Marc Solé

is a BDD-based tool specifically designed for the verification of timed and untimed asynchronous concurrent systems. system architecture is designed to be modular, open and flexible, such that additional capabilities can be easily integrated. A state of the art BDD package [1] is integrated into the system, and a middleware extension [2] provides support complex BDD manipulation strategies.

- Tool Papers III | Pp. 424-428

Ymer: A Statistical Model Checker

Håkan L. S. Younes

We present Ymer, a tool for verifying probabilistic transient properties of stochastic discrete event systems. Ymer implements both statistical and numerical model checking techniques. We focus on two features of Ymer: distributed acceptance sampling and statistical model checking of nested probabilistic statements.

- Tool Papers III | Pp. 429-433

Extended Weighted Pushdown Systems

Akash Lal; Thomas Reps; Gogul Balakrishnan

Recent work on weighted-pushdown systems shows how to generalize interprocedural-dataflow analysis to answer “stack-qualified queries”, which answer the question “what dataflow values hold at a program node for a particular set of calling contexts?” The generalization, however, does not account for precise handling of local variables. Extended-weighted-pushdown systems address this issue, and provide answers to stack-qualified queries in the presence of local variables as well.

- Program Analysis and Verification I | Pp. 434-448

Incremental Algorithms for Inter-procedural Analysis of Safety Properties

Christopher L. Conway; Kedar S. Namjoshi; Dennis Dams; Stephen A. Edwards

Automaton-based static program analysis has proved to be an effective tool for bug finding. Current tools generally re-analyze a program from scratch in response to a change in the code, which can result in much duplicated effort. We present an inter-procedural algorithm that analyzes in response to program changes and present experiments for a null-pointer dereference analysis. It shows a substantial speed-up over re-analysis from scratch, with a manageable amount of disk space used to store information between analysis runs.

- Program Analysis and Verification I | Pp. 449-461

A Policy Iteration Algorithm for Computing Fixed Points in Static Analysis of Programs

A. Costan; S. Gaubert; E. Goubault; M. Martel; S. Putot

We present a new method for solving the fixed point equations that appear in the static analysis of programs by abstract interpretation. We introduce and analyze a policy iteration algorithm for monotone self-maps of complete lattices. We apply this algorithm to the particular case of lattices arising in the interval abstraction of values of variables. We demonstrate the improvements in terms of speed and precision over existing techniques based on Kleene iteration, including traditional widening/narrowing acceleration mecanisms.

- Program Analysis and Verification I | Pp. 462-475

Data Structure Specifications via Local Equality Axioms

Scott McPeak; George C. Necula

We describe a program verification methodology for specifying global shape properties of data structures by means of axioms involving predicates on scalar fields, pointer equalities, and pointer disequalities, in the neighborhood of a memory cell. We show that such local invariants are both natural and sufficient for describing a large class of data structures. We describe a complete decision procedure for axioms without disequalities, and practical heuristics for the full language. The procedure has the key advantage that it can be extended easily with reasoning for any decidable theory of scalar fields.

- Program Analysis and Verification II | Pp. 476-490

Linear Ranking with Reachability

Aaron R. Bradley; Zohar Manna; Henny B. Sipma

We present a complete method for synthesizing supported by inductive linear invariants for loops with linear guards and transitions. Proving termination via linear ranking functions often requires invariants; yet invariant generation is expensive. Thus, we describe a technique that discovers just the invariants necessary for proving termination. Finally, we describe an implementation of the method and provide extensive experimental evidence of its effectiveness for proving termination of C loops.

- Program Analysis and Verification II | Pp. 491-504

Reasoning About Threads Communicating via Locks

Vineet Kahlon; Franjo Ivančić; Aarti Gupta

We propose a new technique for the static analysis of concurrent programs comprised of multiple threads. In general, the problem is known to be undecidable even for programs with only two threads but where the threads communicate using CCS-style pairwise rendezvous [11]. However, in practice, a large fraction of concurrent programs can either be directly modeled as threads communicating solely using locks or can be reduced to such systems either by applying standard abstract interpretation techniques or by exploiting separation of control from data. For such a framework, we show that for the commonly occurring case of threads with nested access to locks, the problem is efficiently decidable. Our technique involves reducing the analysis of a concurrent program with multiple threads to individually analyzing augmented versions of the given threads. This not only yields decidability but also avoids construction of the state space of the concurrent program at hand and thus bypasses the state explosion problem making our technique scalable. We go on to show that for programs with threads that have non-nested access to locks, the static analysis problem for programs with even two threads becomes undecidable even for reachability, thus sharpening the result of [11]. As a case study, we consider the Daisy file system [1] which is a benchmark for analyzing the efficacy of different methodologies for debugging concurrent programs and provide results for the detection of several bugs.

- Program Analysis and Verification II | Pp. 505-518

Abstraction Refinement via Inductive Learning

Alexey Loginov; Thomas Reps; Mooly Sagiv

This paper concerns how to automatically create abstractions for program analysis. We show that inductive learning, the goal of which is to identify general rules from a set of observed instances, provides new leverage on the problem. An advantage of an approach based on inductive learning is that it does not require the use of a theorem prover.

- Applications of Learning | Pp. 519-533