2009Unpublished venueRequires access

Reasoning about contextual equivalence: From untyped to polymorphically typed Calculi

David Sabel, Manfred Schmidt-Schauß, Frederik Harwath

Open publisher page 4 citations

Abstract

Abstract: This paper describes a syntactical method for contextual equivalence in polymorphically typed lambda-calculi. Our specific calculus has letrec as cyclic let, data constructors, case-expressions, seq, and recursive types. The typed language is a subset of the untyped language. Normal-order reduction is defined for the untyped language. Since there are less typed contexts the typed contextual preorder and equivalence are coarser than the untyped ones. We use type-labels for all subexpressions of the typed expressions, and prove a context lemma for the type-labeled calculus. We show how to reason about correctness of program transformations in the typed language, and how to easily transfer the methods and results from untyped program calculi to polymorphically typed ones. 1

About this research paper

What this paper is about

Abstract: This paper describes a syntactical method for contextual equivalence in polymorphically typed lambda-calculi. Our specific calculus has letrec as cyclic let, data constructors, case-expressions, seq, and recursive types. The typed language is a subset of the untyped language. Normal-order reduction is defined for the untyped language. Since there are less typed contexts the typed contextual preorder and equivalence are coarser than the untyped ones. We use type-labels for all subexpressions of the typed expressions, and prove a context lemma for the type-labeled calculus. We show how to reason about correctness of program transformations in the typed language, and how to easily transfer the methods and results from untyped program calculi to polymorphically typed ones. 1

Why it matters

OpenAlex reports 4 citations for this work. Citation counts describe recorded attention and do not establish research quality.

Key contribution

A contribution statement is not available in the OpenAlex record.

Method / approach

Method details are not available in the OpenAlex metadata.

Main findings

Findings are not separately available in the OpenAlex metadata.

Limitations

Limitations are not available in the OpenAlex metadata.

Applications

Application details are not available in the OpenAlex metadata.

Available abstract

Abstract: This paper describes a syntactical method for contextual equivalence in polymorphically typed lambda-calculi. Our specific calculus has letrec as cyclic let, data constructors, case-expressions, seq, and recursive types. The typed language is a subset of the untyped language. Normal-order reduction is defined for the untyped language. Since there are less typed contexts the typed contextual preorder and equivalence are coarser than the untyped ones. We use type-labels for all subexpressions of the typed expressions, and prove a context lemma for the type-labeled calculus. We show how to reason about correctness of program transformations in the typed language, and how to easily transfer the methods and results from untyped program calculi to polymorphically typed ones. 1

Key concepts: Computer science, Programming language, Equivalence (formal languages), Typed lambda calculus, Lambda calculus, Correctness, Dependent type, Simply typed lambda calculus

Related papers

Back to paper searchBrowse research topicsOriginal source
Reasoning about contextual equivalence: From untyped to polymorphically typed Calculi — Research Paper | ScholarLens