Departmental Papers (CIS)

Document Type

Conference Paper

Date of this Version

1-2010

Comments

Alur, R. & Chaudhuri, S., Temporal Reasoning for Procedural Programs, 11th International Conference on Verification, Model Checking, and Abstract Interpretation, Jan. 2010, doi: 10.1007/978-3-642-11319-2_7

Abstract

While temporal verification of programs is a topic with a long history, its traditional basis—semantics based on word languages—is ill-suited for modular reasoning about procedural programs. We address this issue by defining the semantics of procedural (potentially recursive) programs using languages of nested words and developing a framework for temporal reasoning around it. This generalization has two benefits. First, this style of reasoning naturally unifies Manna-Pnueli-style temporal reasoning with Hoare-style reasoning about structured programs. Second, it allows verification of "non-regular" properties of specific procedural contexts—e.g., "If a lock is acquired in a context, then it is released in the same context." We present proof rules for a variety of properties such as local safety, local response, and staircase reactivity; our rules are sufficient to prove all temporal properties over nested words. We show that our rules are sound and relatively complete.



Share

COinS

Date Posted: 16 July 2012