Takeshi Tsukada ; Atsushi Igarashi - A Logical Foundation for Environment Classifiers

lmcs:1065 - Logical Methods in Computer Science, December 18, 2010, Volume 6, Issue 4 - https://doi.org/10.2168/LMCS-6(4:8)2010
A Logical Foundation for Environment ClassifiersArticle

Authors: Takeshi Tsukada ; Atsushi Igarashi ORCID

    Taha and Nielsen have developed a multi-stage calculus {\lambda}{\alpha} with a sound type system using the notion of environment classifiers. They are special identifiers, with which code fragments and variable declarations are annotated, and their scoping mechanism is used to ensure statically that certain code fragments are closed and safely runnable. In this paper, we investigate the Curry-Howard isomorphism for environment classifiers by developing a typed {\lambda}-calculus {\lambda}|>. It corresponds to multi-modal logic that allows quantification by transition variables---a counterpart of classifiers---which range over (possibly empty) sequences of labeled transitions between possible worlds. This interpretation will reduce the "run" construct---which has a special typing rule in {\lambda}{\alpha}---and embedding of closed code into other code fragments of different stages---which would be only realized by the cross-stage persistence operator in {\lambda}{\alpha}---to merely a special case of classifier application. {\lambda}|> enjoys not only basic properties including subject reduction, confluence, and strong normalization but also an important property as a multi-stage calculus: time-ordered normalization of full reduction. Then, we develop a big-step evaluation semantics for an ML-like language based on {\lambda}|> with its type system and prove that the evaluation of a well-typed {\lambda}|> program is properly staged. We also identify a fragment of the language, where erasure evaluation is possible. Finally, we show that the proof system augmented with a classical axiom is sound and complete with respect to a Kripke semantics of the logic.


    Volume: Volume 6, Issue 4
    Published on: December 18, 2010
    Imported on: November 16, 2009
    Keywords: Computer Science - Programming Languages,D.3.3, F.3.3, F.4.1

    7 Documents citing this article

    Consultation statistics

    This page has been seen 1671 times.
    This article's PDF has been downloaded 419 times.