Summary: Preliminary Report. Final version to appear in:
# A. Abel & B. Pientka
This work is licensed under the
Creative Commons Attribution License.
Explicit substitutions for contextual type theory
Theoretical Computer Science, LudwigMaximiliansUniversity Munich, Germany
School of Computer Science, McGill University, Montreal, Canada
In this paper, we present an explicit substitution calculus which distinguishes between ordinary bound
variables and metavariables. Its typing discipline is derived from contextual modal type theory. We
first present a dependently typed lambda calculus with explicit substitutions for ordinary variables
and explicit metasubstitutions for metavariables. We then present a weak head normalization pro
cedure which performs both substitutions lazily and in a single pass thereby combining substitution
walks for the two different classes of variables. Finally, we describe a bidirectional type checking
algorithm which uses weak head normalization and prove soundness.