Higher-Order and Symbolic Computation

, Volume 17, Issue 4, pp 347–394

Bisimilarity for the Region Calculus


DOI: 10.1007/s10990-004-4868-x

Cite this article as:
Helsen, S. Higher-Order Symb Comput (2004) 17: 347. doi:10.1007/s10990-004-4868-x


A region calculus is a programming language calculus with explicit instrumentation for memory management. Every value is annotated with a region in which it is stored and regions are allocated and deallocated in a stack-like fashion. The annotations can be statically inferred by a type and effect system, making a region calculus suitable as an intermediate language for a compiler of statically typed programming languages.

Although a lot of attention has been paid to type soundness properties of different flavors of region calculi, it seems that little effort has been made to develop a semantic framework. In this paper, we present a theory based on bisimulation, which serves as a coinductive proof principle for showing equivalences of polymorphically region-annotated terms. Our notion of bisimilarity is reminiscent of open bisimilarity for the π-calculus and we prove it sound and complete with respect to Morris-style contextual equivalence.

As an application, we formulate a syntactic equational theory, which is used elsewhere to prove the soundness of a specializer based on region inference. We use our bisimulation framework to show that the equational theory is sound with respect to contextual equivalence.

bisimulation contextual equivalence equational theory region calculus 

Copyright information

© Springer Science+Business Media, Inc. 2004

Authors and Affiliations

  1. 1.Department of Electrical and Computer EngineeringUniversity of Waterloo*WaterlooCanada

Personalised recommendations