Automatic verification of annotated code

D. Peled, H. Qu

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review


Model checking is an automatic approach for the verification of systems. Explicit states model checking applies a search algorithm (e.g., depth or breadth first search) to the state space of the verified system. In concurrent systems, and in particular in communication protocols, the number of states can grow exponentially with the number of independent components (processes). There are many different methods that attempt to automatically reduce the number of checked states. Such methods show encouraging results, but often still fail to reduce the number of states required for the verification to become manageable. We propose here the use of code annotation in order to control the verification process and reduce the number of states searched. Our extension of the C programming language allows the user to put into the code instructions that are executed by the model checker during the verification. With the new language construct, we may exploit additional insight that the verifier may have about the checked program in order to limit the search. We describe our implementation and present some experimental results.
Original languageAmerican English
Title of host publicationInternational Conference on Formal Techniques for Networked and Distributed Systems
EditorsHartmut König, Monika Heiner, Adam Wolisz
PublisherSpringer Berlin Heidelberg
StatePublished - 2003

Bibliographical note

Place of conference:Berlin, Germany


Dive into the research topics of 'Automatic verification of annotated code'. Together they form a unique fingerprint.

Cite this