Denotational Aspects of Untyped Normalization by Evaluation

Publikation: Bidrag til tidsskriftTidsskriftartikelForskningfagfællebedømt

Standard

Denotational Aspects of Untyped Normalization by Evaluation. / Filinski, Andrzej; Rohde, Henning Korsholm.

I: Informatique théorique et applications (Imprimé), Bind 39, Nr. 3, 2005, s. 423-453.

Publikation: Bidrag til tidsskriftTidsskriftartikelForskningfagfællebedømt

Harvard

Filinski, A & Rohde, HK 2005, 'Denotational Aspects of Untyped Normalization by Evaluation', Informatique théorique et applications (Imprimé), bind 39, nr. 3, s. 423-453. https://doi.org/10.1051/ita:2005026

APA

Filinski, A., & Rohde, H. K. (2005). Denotational Aspects of Untyped Normalization by Evaluation. Informatique théorique et applications (Imprimé), 39(3), 423-453. https://doi.org/10.1051/ita:2005026

Vancouver

Filinski A, Rohde HK. Denotational Aspects of Untyped Normalization by Evaluation. Informatique théorique et applications (Imprimé). 2005;39(3):423-453. https://doi.org/10.1051/ita:2005026

Author

Filinski, Andrzej ; Rohde, Henning Korsholm. / Denotational Aspects of Untyped Normalization by Evaluation. I: Informatique théorique et applications (Imprimé). 2005 ; Bind 39, Nr. 3. s. 423-453.

Bibtex

@article{31d837e074c311dbbee902004c4f4f50,
title = "Denotational Aspects of Untyped Normalization by Evaluation",
abstract = " We show that the standard normalization-by-evaluation construction for the simply-typed ¿{\ss}¿-calculus has a natural counterpart for the untyped ¿{\ss}-calculus, with the central type-indexed logical relation replaced by a {"}recursively defined{"} invariant relation, in the style of Pitts. In fact, the construction can be seen as generalizing a computational-adequacy argument for an untyped, call-by-name language to normalization instead of evaluation. In the untyped setting, not all terms have normal forms, so the normalization function is necessarily partial. We establish its correctness in the senses of soundness (the output term, if any, is in normal form and {\ss}-equivalent to the input term); identification ({\ss}-equivalent terms are mapped to the same result); and completeness (the function is defined for all terms that do have normal forms). We also show how the semantic construction enables a simple yet formal correctness proof for the normalization algorithm, expressed as a functional program in an ML-like, call-by-value language. Finally, we generalize the construction to produce an infinitary variant of normal forms, namely B{\"o}hm trees. We show that the three-part characterization of correctness, as well as the proofs, extend naturally to this generalization. ",
author = "Andrzej Filinski and Rohde, {Henning Korsholm}",
year = "2005",
doi = "10.1051/ita:2005026",
language = "English",
volume = "39",
pages = "423--453",
journal = "RAIRO - Theoretical Informatics and Applications",
issn = "0988-3754",
publisher = "E D P Sciences",
number = "3",

}

RIS

TY - JOUR

T1 - Denotational Aspects of Untyped Normalization by Evaluation

AU - Filinski, Andrzej

AU - Rohde, Henning Korsholm

PY - 2005

Y1 - 2005

N2 - We show that the standard normalization-by-evaluation construction for the simply-typed ¿ß¿-calculus has a natural counterpart for the untyped ¿ß-calculus, with the central type-indexed logical relation replaced by a "recursively defined" invariant relation, in the style of Pitts. In fact, the construction can be seen as generalizing a computational-adequacy argument for an untyped, call-by-name language to normalization instead of evaluation. In the untyped setting, not all terms have normal forms, so the normalization function is necessarily partial. We establish its correctness in the senses of soundness (the output term, if any, is in normal form and ß-equivalent to the input term); identification (ß-equivalent terms are mapped to the same result); and completeness (the function is defined for all terms that do have normal forms). We also show how the semantic construction enables a simple yet formal correctness proof for the normalization algorithm, expressed as a functional program in an ML-like, call-by-value language. Finally, we generalize the construction to produce an infinitary variant of normal forms, namely Böhm trees. We show that the three-part characterization of correctness, as well as the proofs, extend naturally to this generalization.

AB - We show that the standard normalization-by-evaluation construction for the simply-typed ¿ß¿-calculus has a natural counterpart for the untyped ¿ß-calculus, with the central type-indexed logical relation replaced by a "recursively defined" invariant relation, in the style of Pitts. In fact, the construction can be seen as generalizing a computational-adequacy argument for an untyped, call-by-name language to normalization instead of evaluation. In the untyped setting, not all terms have normal forms, so the normalization function is necessarily partial. We establish its correctness in the senses of soundness (the output term, if any, is in normal form and ß-equivalent to the input term); identification (ß-equivalent terms are mapped to the same result); and completeness (the function is defined for all terms that do have normal forms). We also show how the semantic construction enables a simple yet formal correctness proof for the normalization algorithm, expressed as a functional program in an ML-like, call-by-value language. Finally, we generalize the construction to produce an infinitary variant of normal forms, namely Böhm trees. We show that the three-part characterization of correctness, as well as the proofs, extend naturally to this generalization.

U2 - 10.1051/ita:2005026

DO - 10.1051/ita:2005026

M3 - Journal article

VL - 39

SP - 423

EP - 453

JO - RAIRO - Theoretical Informatics and Applications

JF - RAIRO - Theoretical Informatics and Applications

SN - 0988-3754

IS - 3

ER -

ID: 88111