Temporal Reasoning for Procedural Programs

Free registration required

Executive Summary

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. The authors 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."

  • Format: PDF
  • Size: 236.3 KB