## Abstract

The calculus λ*c* serves as a general framework for representing contexts. Essential features are control over variable capturing and the freedom to manipulate contexts before or after hole filling, by a mechanism of delayed substitution. The context calculus λ*c* is given in the form of an extension of the lambda calculus. Many notions of context can be represented within the framework; a particular variation can be obtained by the choice of a *pretyping*, which we illustrate by three examples.

### Similar content being viewed by others

## References

Abadi, M., Cardelli, L., Curien, P.-L., and Lévy, J.-J.: Explict substitutions,

*J. Functional Programming***1**(4) (1991), 375–416.Balsters, H.: Lambda calculus extended with segments, in

*Mathematical Logic and Theoretical Computer Science (College Park, Md., 1984–1985)*, Dekker, New York, 1987, pp. 15–27.Balsters, H.: Lambda calculus extended with segments: Chapter 1, Sections 1.1 and 1.2 (Introduction), in R. P. Nederpelt, J. H. Geuvers, and R. C. de Vrijer (eds.),

*Selected Papers on Authomath*, North-Holland, Amsterdam, 1994, pp. 339–367.Barendregt, H.:

*The Lambda Calculus, its Syntax and Semantics*, Stud. Logic Found. Math. 103, North-Holland, 1984, revised edition. (Second printing 1985.)Bognar, M. and de Vrijer, R.: Segments in the context, Preprint, Vrije Universitet Amsterdam, 1999.

de Bruijn, N.: A namefree lambda calculus with facilities for internal definition of expressions and segments, Technical Report 78-WSK-03, Technological University Eindhoven, 1978.

Despeyroux, J., Pfenning, F., and Schürmann, C.: Primitive recursion for higher-order abstract syntax, in

*Typed Lambda Calculi and Applications (Nancy, 1997)*, Springer, Berlin, 1997, pp. 147–163.Hashimoto, M. and Ohori, A.: A typed context calculus,

*Sūrikaisekikenkyūsho Kōkyūroku***1023**(1998), 76–91. Type theory and its application to computer systems (Japanese) (Kyoto, 1997).Kahrs, S.: Context rewriting, in

*Conditional Term Rewriting Systems (Pont-à-Mousson, 1992)*, Springer, Berlin, 1993, pp. 21–35.Klop, J.:

*Combinatory Reduction Systems*, Mathematical Centre Tracts Nr. 127, CWI, Amsterdam, Ph.D. Thesis, 1980.Kohlhase, M., Kuschert, S., and Müller, M.: Dynamic lambda calculus, Preprint, 1999, available at http://www.ags.uni-sb.de/

^{~}ohlhase.Lee, S.-D. and Friedman, D.: Enriching the lambda calculus with contexts: Toward a theory of incremental program construction, in

*Proceedings of the 1996 ACM SIGPLAN International Conference on Functional Programming*, 1996, pp. 239–250.Magnusson, L.: An algorithm for checking incomplete proof objects in type theory with localization and unification, in

*Types for Proofs and Programs (Torino, 1995)*, Springer, Berlin, 1996, pp. 183–200.Mason, I. A.: Computing with contexts,

*Higher-Order and Symbolic Computation***12**(1999), 171–201.Muñoz, C.: Dependent types with explicit substitutions: A metatheoretical development, in

*Proceedings of the International Workshop TYPES '96*, 1997.Nederpelt, R. P., Geuvers, J. H., and de Vrijer, R. C.:

*Selected Papers on Automath*, Stud. Logic Found. Math. 133, North-Holland, Amsterdam, 1994.Nipkow, T.: Orthogonal higher-order rewrite systems are confluent, in

*Proceedings of the International Conference on Typed Lambda Calculi and Application*, 1993, pp.306–317.Oostrom, V. V.: Development of closed critical pairs, in

*Proceedings of the 2nd International Workshop on Higher-Order Algebra, Logic, and Term Rewriting (HOA '95)*, Lecture Notes in Comput. Sci. 1074, Springer, 1995, pp. 185–200.Oostrom, V. V. and Raamsdonk, F. V.: Comparing combinatory reduction systems and higher-order rewrite systems, Technical Report CS-R9361, CWI, 1993. Extended abstract in

*Proceedings of HOA '93.*Pfenning, F. and Elliott, C.: Higher-order abstract syntax, in

*Proceedings of the SIGPLAN '88 Conference on Programming Language Design and Implementation*, 1988, pp. 199–208.Sands, D.: Computing with contexts, a simple approach,

*Electron. Notes Theor. Comput. Sci.***10**(1998).Sato,M., Sakurai, T., and Burstall, R.: Explicit environments, in J.-Y. Girard (ed.),

*Proceedings of the 4th International Conference on Typed Lambda Calculi and Application*, 1999, pp. 340–354.Talcott, C. L.: Binding structures, in V. Lifschitz (ed.),

*Artificial Intelligence and Mathematical Theory of Computation*, Academic Press, 1991.

## Author information

### Authors and Affiliations

## Rights and permissions

## About this article

### Cite this article

Bognar, M., de Vrijer, R. A Calculus of Lambda Calculus Contexts.
*Journal of Automated Reasoning* **27**, 29–59 (2001). https://doi.org/10.1023/A:1010654904735

Issue Date:

DOI: https://doi.org/10.1023/A:1010654904735