## Environmental bisimulations for higher-order languages (2007)

### Cached

### Download Links

- [www.cs.unibo.it]
- [www.cs.unibo.it]
- [www.yl.is.s.u-tokyo.ac.jp]
- [web.yl.is.s.u-tokyo.ac.jp]
- [www.kb.ecei.tohoku.ac.jp]
- [www.kb.ecei.tohoku.ac.jp]
- DBLP

### Other Repositories/Bibliography

Venue: | In Twenty-Second Annual IEEE Symposium on Logic in Computer Science |

Citations: | 38 - 11 self |

### BibTeX

@INPROCEEDINGS{Sangiorgi07environmentalbisimulations,

author = {Davide Sangiorgi},

title = {Environmental bisimulations for higher-order languages},

booktitle = {In Twenty-Second Annual IEEE Symposium on Logic in Computer Science},

year = {2007},

pages = {293--302},

publisher = {IEEE}

}

### Years of Citing Articles

### OpenURL

### Abstract

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 environmental bisimulations, a form of bisimulation for higher-order languages, and its basic theory. We consider four representative calculi: pure λ-calculi (call-by-name and call-byvalue), call-by-value λ-calculus with higher-order store, and then Higher-Order π-calculus. In each case: we present the basic properties of environmental bisimilarity, including congruence; we show that it coincides with contextual equivalence; we develop some up-to 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. 1

### Citations

3389 |
Communication and Concurrency
- Milner
- 1989
(Show Context)
Citation Context ...ty by using � also on the left-hand side of X in clauses (1.a) and (1.b), for the technique would be unsound; this is similar to the problems of up-to bisimilarity in standard small-step bisimilarity =-=[22]-=-. Up-to reduction and up-to expansion. This technique exploits the confluent property of reduction so to replace tested terms with derivatives of them. When reduction is confluent this technique avoid... |

481 |
The pi-calculus: a Theory of Mobile Processes
- Sangiorgi, Walker
- 2001
(Show Context)
Citation Context ...xtual equivalence has to be refined, adding a bisimulation clause on reductions. The resulting relation is called barbed congruence. We consider here the reduction-closed version of barbed congruence =-=[11, 37]-=-. Reduction-closed barbed congruence, ≡, is the largest relation that is symmetric, reduction-closed (i.e., if M ≡ N, for M, N closed, and M τ −→ M ′ , then N =⇒ N ′ and M ′ ≡ N ′ ), context-closed (i... |

379 | Types, abstraction and parametric polymorphism - Reynolds - 1983 |

267 |
Expressing mobility in process algebras: first-order and higher-order paradigms
- Sangiorgi
- 1992
(Show Context)
Citation Context ...ion, since (E e l1; e l2; e l ′, s ⊎ r[l = r(l) + 2], t) ∈ X . 5 Higher-order π-calculus In this section we discuss environmental bisimulations in concurrency. We consider the Higher-Order π-calculus =-=[31, 33]-=- in its simplest form, where only processes can be communicated (thus the calculus is similar to Plain CHOCS [43]). The syntax and the LTS are standard [34, Appendix E]. Restriction and input are bind... |

243 | The lazy lambda calculus
- Abramsky
- 1990
(Show Context)
Citation Context ...} R Q ′ { Q1/x}? We discuss some possible choices: • P1 and Q1 are all pairs of identical terms, as in applicative bisimulations (the most studied form of bisimulation for higher-order calculi, e.g., =-=[2, 10, 19, 25, 27, 30]-=-). This is unsound under the presence of generative names, data abstraction, or encryption [13, 41, 42]. Moreover, proving that bisimilarity is a congruence can be hard. To see why, consider an applic... |

146 | On reduction-based process semantics
- Honda, Yoshida
- 1995
(Show Context)
Citation Context ...xtual equivalence has to be refined, adding a bisimulation clause on reductions. The resulting relation is called barbed congruence. We consider here the reduction-closed version of barbed congruence =-=[11, 37]-=-. Reduction-closed barbed congruence, ≡, is the largest relation that is symmetric, reduction-closed (i.e., if M ≡ N, for M, N closed, and M τ −→ M ′ , then N =⇒ N ′ and M ′ ≡ N ′ ), context-closed (i... |

137 | An indexed model of recursive types for foundational proofcarrying code - Appel, McAllester - 2001 |

134 |
Lambda Calculus Models of Programming Languages
- Morris
- 1968
(Show Context)
Citation Context ...guages. Proving equivalence of computer programs is an important but challenging problem. Equivalence between two programs means that the programs should behave “in the same manner” under any context =-=[24]-=-; this notion of equality is called contextual equivalence. Finding effective methods for equivalence proofs is particularly challenging in higher-order languages (i.e., languages where program code c... |

113 | Proving congruence of bisimulation in functional programming languages
- Howe
- 1996
(Show Context)
Citation Context .... There are only a few concurrent higher-order languages for which bisimulation techniques have been given; usually the bisimilarity is either a form of higher-order bisimulation and Howe’s technique =-=[12]-=- is used to prove congruence (e.g., [5, 8, 9]), or it is a form of context bisimulation or normal bisimulation (e.g., [14, 15, 20, 21, 31, 33]). Howe’s technique appears to have limitations in concurr... |

108 |
Functional Programming and Input/Output
- Gordon
- 1994
(Show Context)
Citation Context ...} R Q ′ { Q1/x}? We discuss some possible choices: • P1 and Q1 are all pairs of identical terms, as in applicative bisimulations (the most studied form of bisimulation for higher-order calculi, e.g., =-=[2, 10, 19, 25, 27, 30]-=-). This is unsound under the presence of generative names, data abstraction, or encryption [13, 41, 42]. Moreover, proving that bisimilarity is a congruence can be hard. To see why, consider an applic... |

85 | A bisimulation method for cryptographic protocol
- Abadi, Gordon
- 1998
(Show Context)
Citation Context ...plicit name) by Sumii and Pierce for λ-calculi with perfect encryption [41] and data abstraction [42], inspired by bisimulations for typed π-calculus [7], polymorphic π-calculus [26] and spi-calculus =-=[1]-=-. However, their bisimulations were not able to handle higher-order functions. To address this issue, Sumii and Pierce [42, Secion 7] proposed a rather complex variant of their bisimulations with indu... |

75 | Operationally-based Theories of Program Equivalence
- Pitts
- 1997
(Show Context)
Citation Context ...} R Q ′ { Q1/x}? We discuss some possible choices: • P1 and Q1 are all pairs of identical terms, as in applicative bisimulations (the most studied form of bisimulation for higher-order calculi, e.g., =-=[2, 10, 19, 25, 27, 30]-=-). This is unsound under the presence of generative names, data abstraction, or encryption [13, 41, 42]. Moreover, proving that bisimilarity is a congruence can be hard. To see why, consider an applic... |

71 | Step-indexed syntactic logical relations for recursive and quantified types
- Ahmed
- 2006
(Show Context)
Citation Context ...hic λ-calculus, but they tend to become incomplete and/or require more advanced meta theory in languages with recursive types, existential types [28], encryption [40], store, or concurrency; see e.g. =-=[3]-=- for more references. Concurrent languages. There are only a few concurrent higher-order languages for which bisimulation techniques have been given; usually the bisimilarity is either a form of highe... |

60 | On the problem of ‘weak bisimulation up to - Sangiorgi, Milner - 1992 |

58 | The lazy lambda calculus in a concurrency scenario
- Sangiorgi
- 1994
(Show Context)
Citation Context ... pair (I, Σ) itself, and the result of the application is again the same pair). 1 BA indicates that the bisimilarity uses “Bisimilar Arguments.” • P1, Q1 are fresh variables. This bisimulation method =-=[32, 39]-=- is complete (with respect to contextual equivalence) only in certain extensions of the λ-calculus (e.g., call-byvalue with both state and callcc). Environmental bisimulations and paper contributions.... |

58 | Bisimulation for Higher-Order Process Calculi
- Sangiorgi
- 1996
(Show Context)
Citation Context ...ion, since (E e l1; e l2; e l ′, s ⊎ r[l = r(l) + 2], t) ∈ X . 5 Higher-order π-calculus In this section we discuss environmental bisimulations in concurrency. We consider the Higher-Order π-calculus =-=[31, 33]-=- in its simplest form, where only processes can be communicated (thus the calculus is similar to Plain CHOCS [43]). The syntax and the LTS are standard [34, Appendix E]. Restriction and input are bind... |

57 | Behavioral equivalence in the polymorphic pi-calculus
- Pierce, Sangiorgi
- 2000
(Show Context)
Citation Context ...been used (under no explicit name) by Sumii and Pierce for λ-calculi with perfect encryption [41] and data abstraction [42], inspired by bisimulations for typed π-calculus [7], polymorphic π-calculus =-=[26]-=- and spi-calculus [1]. However, their bisimulations were not able to handle higher-order functions. To address this issue, Sumii and Pierce [42, Secion 7] proposed a rather complex variant of their bi... |

51 | Pure bigraphs: Structure and dynamics
- Milner
(Show Context)
Citation Context ...lus. It would be interesting to formulate environmental bisimulation in an abstract manner and to derive the concrete definitions in this paper as special instances of it. For this, Milner’s bigraphs =-=[23]-=- would be a candidate framework. It is encouraging that environmental bisimulation work on a variety of calculi (pure λ-calculi, λ-calculus with fullfledged store, Higher-Order π-calculus), and that t... |

49 |
Small bisimulations for reasoning about higher-order imperative programs
- Koutavas, Wand
- 2006
(Show Context)
Citation Context ...to apply the bisimulation hypothesis on the functions M and N since their arguments M ′ and N ′ are bisimilar but not necessarily identical. Difficulties also arise with up-to context techniques (see =-=[17, 19, 30]-=- for the usefulness of these techniques in higher-order languages and the problems with applicative bisimulations). • P1 and Q1 are related by R. This makes the above congruence argument for MM ′ and ... |

48 | A bisimulation for type abstraction and recursion
- Sumii, Pierce
- 2005
(Show Context)
Citation Context ... bisimulations (the most studied form of bisimulation for higher-order calculi, e.g., [2, 10, 19, 25, 27, 30]). This is unsound under the presence of generative names, data abstraction, or encryption =-=[13, 41, 42]-=-. Moreover, proving that bisimilarity is a congruence can be hard. To see why, consider an application context, and a pair of bisimilar functions M, N plus a pair of bisimilar arguments M ′ , N ′ . We... |

48 |
Plain CHOCS. A second generation calculus for higher order processes
- Thomsen
- 1993
(Show Context)
Citation Context ...nvironmental bisimulations in concurrency. We consider the Higher-Order π-calculus [31, 33] in its simplest form, where only processes can be communicated (thus the calculus is similar to Plain CHOCS =-=[43]-=-). The syntax and the LTS are standard [34, Appendix E]. Restriction and input are binders for names and variables, in the usual way; fv(P ) and fn(P ) indicate the free variables and the free names o... |

44 | A bisimulation for dynamic sealing
- Sumii, Pierce
- 2004
(Show Context)
Citation Context ... bisimulations (the most studied form of bisimulation for higher-order calculi, e.g., [2, 10, 19, 25, 27, 30]). This is unsound under the presence of generative names, data abstraction, or encryption =-=[13, 41, 42]-=-. Moreover, proving that bisimilarity is a congruence can be hard. To see why, consider an application context, and a pair of bisimilar functions M, N plus a pair of bisimilar arguments M ′ , N ′ . We... |

41 |
The Lazy Lambda Calculus: an Investigation into the Foundations of Functional Programming
- Ong
- 1988
(Show Context)
Citation Context |

40 | A theory of weak bisimulation for core CML
- Ferreira, Hennessy, et al.
- 1998
(Show Context)
Citation Context ...-order languages for which bisimulation techniques have been given; usually the bisimilarity is either a form of higher-order bisimulation and Howe’s technique [12] is used to prove congruence (e.g., =-=[5, 8, 9]-=-), or it is a form of context bisimulation or normal bisimulation (e.g., [14, 15, 20, 21, 31, 33]). Howe’s technique appears to have limitations in concurrency. It seems be sensitive to the choice of ... |

40 | Logical relations for encryption
- Sumii, Pierce
- 2003
(Show Context)
Citation Context ...k well in pure simplytyped or polymorphic λ-calculus, but they tend to become incomplete and/or require more advanced meta theory in languages with recursive types, existential types [28], encryption =-=[40]-=-, store, or concurrency; see e.g. [3] for more references. Concurrent languages. There are only a few concurrent higher-order languages for which bisimulation techniques have been given; usually the b... |

39 | Typed operational reasoning
- Pitts
- 2005
(Show Context)
Citation Context ...KWsrequires an infinite relation, rather than a singleton relation as in our proof). The bisimulation clause on functions of environmental bisimulation is reminiscent of logical relations; see, e.g., =-=[28]-=-. (The analogy is stronger for logical bisimulations, or for the BA-bisimulations discussed in the Introduction; we recall that in logical relations two functions are related if they map related argum... |

39 |
The Kell calculus: A family of higher-order distributed process calculi
- Schmitt, Stefani
- 2005
(Show Context)
Citation Context ...previous bisimilarities can handle such a variety of languages. In the future we plan to consider more sophisticated concurrent languages. For instance, the passivation construct of the Kell Calculus =-=[38]-=- appears challenging. Acknowledgments. We are grateful to Vassileios Koutavas: discussions with him in the initial development of this work were helpful in clarifying concepts. We would like also to t... |

35 | Relational interpretations of recursive types in an operational setting (summary - Birkedal, Harper - 1997 |

33 | Relational Reasoning about Functions and Nondeterminism
- Lassen
- 1998
(Show Context)
Citation Context |

28 |
Bisimulation in name-passing calculi without matching
- Boreale, Sangiorgi
- 1998
(Show Context)
Citation Context ...on with an environment have been used (under no explicit name) by Sumii and Pierce for λ-calculi with perfect encryption [41] and data abstraction [42], inspired by bisimulations for typed π-calculus =-=[7]-=-, polymorphic π-calculus [26] and spi-calculus [1]. However, their bisimulations were not able to handle higher-order functions. To address this issue, Sumii and Pierce [42, Secion 7] proposed a rathe... |

23 |
Contextual equivalence for higher-order pi-calculus revisited
- Jeffrey, Rathke
(Show Context)
Citation Context ...similarity is either a form of higher-order bisimulation and Howe’s technique [12] is used to prove congruence (e.g., [5, 8, 9]), or it is a form of context bisimulation or normal bisimulation (e.g., =-=[14, 15, 20, 21, 31, 33]-=-). Howe’s technique appears to have limitations in concurrency. It seems be sensitive to the choice of the bisimilarity; in particular it gives problems if the bisimilarity is not both in the “delay” ... |

21 |
Behavioral theory for mobile ambients
- Merro, Nardelli
(Show Context)
Citation Context ...similarity is either a form of higher-order bisimulation and Howe’s technique [12] is used to prove congruence (e.g., [5, 8, 9]), or it is a form of context bisimulation or normal bisimulation (e.g., =-=[14, 15, 20, 21, 31, 33]-=-). Howe’s technique appears to have limitations in concurrency. It seems be sensitive to the choice of the bisimilarity; in particular it gives problems if the bisimilarity is not both in the “delay” ... |

19 | A theory of bisimulation for a fragment of concurrent ML with local names
- Jeffrey, Rathke
(Show Context)
Citation Context ...similarity is either a form of higher-order bisimulation and Howe’s technique [12] is used to prove congruence (e.g., [5, 8, 9]), or it is a form of context bisimulation or normal bisimulation (e.g., =-=[14, 15, 20, 21, 31, 33]-=-). Howe’s technique appears to have limitations in concurrency. It seems be sensitive to the choice of the bisimilarity; in particular it gives problems if the bisimilarity is not both in the “delay” ... |

16 | A complete, co-inductive syntactic theory of sequential control and state
- Støvring, Lassen
- 2007
(Show Context)
Citation Context ... pair (I, Σ) itself, and the result of the application is again the same pair). 1 BA indicates that the bisimilarity uses “Bisimilar Arguments.” • P1, Q1 are fresh variables. This bisimulation method =-=[32, 39]-=- is complete (with respect to contextual equivalence) only in certain extensions of the λ-calculus (e.g., call-byvalue with both state and callcc). Environmental bisimulations and paper contributions.... |

13 | Extending howe’s method to early bisimulations for typed mobile embedded resources with local names, in
- Godskesen, Hildebrandt
- 2005
(Show Context)
Citation Context ...-order languages for which bisimulation techniques have been given; usually the bisimilarity is either a form of higher-order bisimulation and Howe’s technique [12] is used to prove congruence (e.g., =-=[5, 8, 9]-=-), or it is a form of context bisimulation or normal bisimulation (e.g., [14, 15, 20, 21, 31, 33]). Howe’s technique appears to have limitations in concurrency. It seems be sensitive to the choice of ... |

10 |
Congruence proofs for weak bisimulation equivalences on higher-order process calculi
- Baldamus, Frauenstein
- 1995
(Show Context)
Citation Context ...-order languages for which bisimulation techniques have been given; usually the bisimilarity is either a form of higher-order bisimulation and Howe’s technique [12] is used to prove congruence (e.g., =-=[5, 8, 9]-=-), or it is a form of context bisimulation or normal bisimulation (e.g., [14, 15, 20, 21, 31, 33]). Howe’s technique appears to have limitations in concurrency. It seems be sensitive to the choice of ... |

2 | Relational Reasoning about Contexts. Higher Order - Lassen - 1998 |

1 |
Towards a theory of bisimulation for local names. LICS
- Jeffrey, Rathke
- 1999
(Show Context)
Citation Context ... bisimulations (the most studied form of bisimulation for higher-order calculi, e.g., [2, 10, 19, 25, 27, 30]). This is unsound under the presence of generative names, data abstraction, or encryption =-=[13, 41, 42]-=-. Moreover, proving that bisimilarity is a congruence can be hard. To see why, consider an application context, and a pair of bisimilar functions M, N plus a pair of bisimilar arguments M ′ , N ′ . We... |

1 |
Bisimulations for untyped imperative objects. ESOP
- Koutavas, Wand
- 2006
(Show Context)
Citation Context ...n on the tree height of evaluation derivation, and an up-to-context technique built into the definition of bisimulations. Koutavas and Wand (KW in short) later gave a clearer account of this approach =-=[16, 17]-=-. KW has an induction on the evaluation of terms to values and an up-to context technique which are nicely hardwired into the definition of the bisimulation. However, KW relies on big-step semantics, ... |

1 |
Bisimulation congruences
- Merro, Hennessy
- 2002
(Show Context)
Citation Context |

1 |
Improvement theory and its applications. Higher Order
- Sands
- 1998
(Show Context)
Citation Context |

1 |
Sumii Appendixes to the paper “Environmental Bisimulations for Higher-Order Languages.” http://www.cs.unibo.it/˜sangio/ DOC_public/appLICS07.pdf
- Sangiorgi, Kobayashi, et al.
- 2007
(Show Context)
Citation Context ...lations without explicit environment (the environment is taken to be the bisimulation itself)—is also a viable technique. In logical bisimulation the generating functional is non-monotone. We show in =-=[34]-=- (this is further developped in [35]) that the functional has nevertheless a greatest fixed-point that coincides with contextual equivalence. Environmental bisimulations have been inspired by bisimula... |