8 research outputs found
Relational Parametricity and Control
We study the equational theory of Parigot's second-order
λμ-calculus in connection with a call-by-name continuation-passing
style (CPS) translation into a fragment of the second-order λ-calculus.
It is observed that the relational parametricity on the target calculus induces
a natural notion of equivalence on the λμ-terms. On the other hand,
the unconstrained relational parametricity on the λμ-calculus turns
out to be inconsistent with this CPS semantics. Following these facts, we
propose to formulate the relational parametricity on the λμ-calculus
in a constrained way, which might be called ``focal parametricity''.Comment: 22 pages, for Logical Methods in Computer Scienc
Relational Parametricity for Control Considered as a Computational Effect
AbstractThis paper investigates parametric polymorphism in the presence of control operators. Our approach is to specialise a general type theory combining polymorphism and computational effects, by extending it with additional constants expressing control. By defining relationally parametric models of this extended calculus, we capture the interaction between parametricity and control. As a worked example, we show that recent results of M. Hasegawa on type definability in the second-order (call-by-name) ΝΟ-calculus arise as special cases of general results valid for arbitrary computational effects
Relational Parametricity for Computational Effects
According to Strachey, a polymorphic program is parametric if it applies a
uniform algorithm independently of the type instantiations at which it is
applied. The notion of relational parametricity, introduced by Reynolds, is one
possible mathematical formulation of this idea. Relational parametricity
provides a powerful tool for establishing data abstraction properties, proving
equivalences of datatypes, and establishing equalities of programs. Such
properties have been well studied in a pure functional setting. Many programs,
however, exhibit computational effects, and are not accounted for by the
standard theory of relational parametricity. In this paper, we develop a
foundational framework for extending the notion of relational parametricity to
programming languages with effects.Comment: 31 pages, appears in Logical Methods in Computer Scienc
Relational Parametricity and Control
We study the equational theory of Parigot's second-orderλμ-calculus in connection with a call-by-name continuation-passingstyle (CPS) translation into a fragment of the second-order λ-calculus.It is observed that the relational parametricity on the target calculus inducesa natural notion of equivalence on the λμ-terms. On the other hand,the unconstrained relational parametricity on the λμ-calculus turnsout to be inconsistent with this CPS semantics. Following these facts, wepropose to formulate the relational parametricity on the λμ-calculusin a constrained way, which might be called ``focal parametricity''.Comment: 22 pages, for Logical Methods in Computer Scienc
Relational Parametricity and Control
We study the equational theory of Parigot's second-order
λμ-calculus in connection with a call-by-name continuation-passing
style (CPS) translation into a fragment of the second-order λ-calculus.
It is observed that the relational parametricity on the target calculus induces
a natural notion of equivalence on the λμ-terms. On the other hand,
the unconstrained relational parametricity on the λμ-calculus turns
out to be inconsistent with this CPS semantics. Following these facts, we
propose to formulate the relational parametricity on the λμ-calculus
in a constrained way, which might be called ``focal parametricity''
Correction on âRelational Parametricity and Controlâ
In my LICSâ05 paper [2] there is a mistake. Below I explain the problem, a condition which fills the gap, and give a correction. This will be incorporated in a forthcoming full version. The Problem In Section 5.2, I introduced two notions of âfocus â â C-focality and P-focality, in terms of the double-negation elimination and the Peirce law respectively â and wrote: C-focal maps are P-focal in Ν¾2, while P-focal maps are C-focal if ⼠= âX.X satisfies the parametricity condition. It is true that C-focal maps are always P-focal, but it turns out that a P-focal map may not be C-focal even if we assume the parametricity on ⼠(equivalently the focal initiality of âĽ). A simple counterexample is the constant functions (recall that an arrow f: 1 â A is not focal in a control category unless A is a terminal object [3]). A Missing Condition The gap between the C-focality and P-focality can be filled by adding the following condition to the P-focality: we say that M: Ď1 â Ď2 is discardable if the following diagram commutes