ACM Home Page
Please provide us with feedback. Feedback
A fixpoint calculus for local and global program flows
Full text PdfPdf (280 KB)
Source Annual Symposium on Principles of Programming Languages archive
Conference record of the 33rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages table of contents
Charleston, South Carolina, USA
Pages: 153 - 165  
Year of Publication: 2006
ISBN:1-59593-027-2
Also published in ...
Authors
Rajeev Alur  University of Pennsylvania
Swarat Chaudhuri  University of Pennsylvania
P. Madhusudan  University of Illinois, Urbana-Champaign
Sponsors
SIGPLAN: ACM Special Interest Group on Programming Languages
ACM: Association for Computing Machinery
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 6,   Downloads (12 Months): 61,   Citation Count: 0
Additional Information:

abstract   references   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1111037.1111051
What is a DOI?

ABSTRACT

We define a new fixpoint modal logic, the visibly pushdown μ-calculus (VP-μ), as an extension of the modal μ-calculus. The models of this logic are execution trees of structured programs where the procedure calls and returns are made visible. This new logic can express pushdown specifications on the model that its classical counterpart cannot, and is motivated by recent work on visibly pushdown languages [4]. We show that our logic naturally captures several interesting program specifications in program verification and dataflow analysis. This includes a variety of program specifications such as computing combinations of local and global program flows, pre/post conditions of procedures, security properties involving the context stack, and interprocedural dataflow analysis properties. The logic can capture flow-sensitive and inter-procedural analysis, and it has constructs that allow skipping procedure calls so that local flows in a procedure can also be tracked. The logic generalizes the semantics of the modal μ-calculus by considering summaries instead of nodes as first-class objects, with appropriate constructs for concatenating summaries, and naturally captures the way in which pushdown models are model-checked. The main result of the paper is that the model-checking problem for VP-μ is effectively solvable against pushdown models with no more effort than that required for weaker logics such as CTL. We also investigate the expressive power of the logic VP-μ: we show that it encompasses all properties expressed by a corresponding pushdown temporal logic on linear structures (caret [2]) as well as by the classical μ-calculus. This makes VP-μ the most expressive known program logic for which algorithmic software model checking is feasible. In fact, the decidability of most known program logics (μ-calculus, temporal logics LTL and CTL, caret, etc.) can be understood by their interpretation in the monadic second-order logic over trees. This is not true for the logic VP-μ, making it a new powerful tractable program logic.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
R. Alur, S. Chaudhuri, and P. Madhusudan. Visibly pushdown tree languages. http://www.cis.upenn.edu/~swarat/pubs/vptl.ps+.
 
2
R. Alur, K. Etessami, and P. Madhusudan. A temporal logic of nested calls and returns. In 10th Int. Conf. on Tools and Algorithms for the Const. and Analysis of Software, LNCS 2988, pages 467--481, 2004.
 
3
4
 
5
6
 
7
 
8
 
9
L. Burdy, Y. Cheon, D. Cok, M. Ernst, J. Kiniry, G.T. Leavens, R. Leino, and E. Poll. An overview of JML tools and applications. In Proceedings of the 8th International Workshop on Formal Methods for Industrial Critical Systems, pages 75--89, 2003.
 
10
 
11
K. Chatterjee, D. Ma, R. Majumdar, T. Zhao, T.A. Henzinger, and J. Palsberg. Stack size analysis for interrupt driven programs. In Proceedings of the 10th International Symposium on Static Analysis, volume LNCS 2694, pages 109--126, 2003.
12
 
13
 
14
 
15
 
16
E. Grädel, W. Thomas, and T. Wilke, editors. Automata, Logics, and Infinite Games: A Guide to Current Research {outcome of a Dagstuhl seminar, February 2001}, volume 2500 of Lecture Notes in Computer Science. Springer, 2002.
 
17
 
18
 
19
T. Jensen, D. Le Metayer, and T. Thorn. Verification of control flow based security properties. In Proceedings of the IEEE Symposium on Security and Privacy, pages 89--103, 1999.
 
20
D. Kozen. Results on the propositional mu-calculus. Theoretical Computer Science, 27:333--354, 1983.
 
21
22
23
 
24
 
25
 
26

Collaborative Colleagues:
Rajeev Alur: colleagues
Swarat Chaudhuri: colleagues
P. Madhusudan: colleagues