Environmental Bisimulations for Higher-Order Languages

被引:49
作者
Sangiorgi, Davide [1 ]
Kobayashi, Naoki [2 ]
Sumii, Eijiro [2 ]
机构
[1] Univ Bologna, I-40126 Bologna, Italy
[2] Tohoku Univ, Sendai, Miyagi 980, Japan
来源
ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS | 2011年 / 33卷 / 01期
关键词
Theory; Verification; Higher-order languages; bisimulation; congruence; lambda-calculus; higher-order pi-calculus; LAMBDA-CALCULUS; RECURSIVE TYPES; HOWES METHOD; EQUIVALENCE;
D O I
10.1145/1889997.1890002
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Developing a theory of bisimulation in higher-order languages can be hard. Particularly challenging can be: (1) the proof of congruence, as well as enhancements of the bisimulation proof method with "up-to context" techniques, and (2) obtaining definitions and results that scale to languages with different features. To meet these challenges, we present environment bisimulations, a form of bisimulation for higher-order languages, and its basic theory. We consider four representative calculi: pure lambda-calculi (call-by-name and call-by-value), call-by-value.-calculus with higher-order store, and then Higher-Order p-calculus. In each case: we present the basic properties of environment bisimilarity, including congruence; we show that it coincides with contextual equivalence; we develop some upto techniques, including up-to context, as examples of possible enhancements of the associated bisimulation method. Unlike previous approaches (such as applicative bisimulations, logical relations, Sumii-Pierce-Koutavas-Wand), our method does not require induction/indices on evaluation derivation/steps (which may complicate the proofs of congruence, transitivity, and the combination with up-to techniques), or sophisticated methods such as Howe's for proving congruence. It also scales from the pure.-calculi to the richer calculi with simple congruence proofs.
引用
收藏
页数:69
相关论文
共 53 条
[1]  
Abadi M, 1998, LECT NOTES COMPUT SC, V1381, P12, DOI 10.1007/BFb0053560
[2]  
Abramsky S., 1990, LAZY LAMBDA CALCULUS, P65
[3]  
Ahmed A, 2006, LECT NOTES COMPUT SC, V3924, P69
[4]   State-Dependent Representation Independence [J].
Ahmed, Amal ;
Dreyer, Derek ;
Rossberg, Andreas .
ACM SIGPLAN NOTICES, 2009, 44 (01) :340-353
[5]  
Ahmed Amal., 2003, An Indexed Model of Impredicative Polymorphism and Mutable References
[6]   An indexed model of recursive types for foundational proof-carrying code [J].
Appel, AW ;
McAllester, D .
ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 2001, 23 (05) :657-683
[7]  
BALDAMUS M, 1995, 9521 BERL U TECHN CO
[8]   Relational interpretations of recursive types an operational setting [J].
Birkedal, L ;
Harper, R .
INFORMATION AND COMPUTATION, 1999, 155 (1-2) :3-63
[9]  
Boreale M., 1999, Proceedings. 14th Symposium on Logic in Computer Science (Cat. No. PR00158), P157, DOI 10.1109/LICS.1999.782608
[10]  
BOREALE M, 1998, P ANN IEEE S LOG COM