Results 11  20
of
28
Functional Concepts in C++
"... We describe a parsertranslator program that translates typed λterms into C++ classes so as to integrate functional concepts. We prove the correctness of the translation of λterms into C++ with respect to a denotational semantics using Kripkestyle logical relations. We introduce a general techniq ..."
Abstract

Cited by 2 (0 self)
 Add to MetaCart
(Show Context)
We describe a parsertranslator program that translates typed λterms into C++ classes so as to integrate functional concepts. We prove the correctness of the translation of λterms into C++ with respect to a denotational semantics using Kripkestyle logical relations. We introduce a general technique for introducing lazy evaluation into C++, and illustrate it by carrying out in C++ the example of computing the Fibonacci numbers efficiently using infinite streams and lazy evaluation. Finally, we show how merge higherorder λterms with imperative C++ code. 1
A higherorder simulation relation for System F
 Proc. 3rd Intl. Conf. on Foundations of Software Science and Computation Structures. ETAPS 2000
, 2000
"... The notion of data type specification refinement is discussed in a setting of System F and the logic for parametric polymorphism of Plotkin and Abadi. At first order, one gets a notion of specification refinement up to observational equivalence in the logic simply by using Luo's formalism. Thi ..."
Abstract

Cited by 2 (2 self)
 Add to MetaCart
(Show Context)
The notion of data type specification refinement is discussed in a setting of System F and the logic for parametric polymorphism of Plotkin and Abadi. At first order, one gets a notion of specification refinement up to observational equivalence in the logic simply by using Luo's formalism. This paper generalises this notion to abstract data types whose signatures contain higherorder and polymorphic functions. At higher order, the tight connection in the logic between the existence of a simulation relation and observational equivalence ostensibly breaks down. We show that an alternative notion of simulation relation is suitable. This also gives a simulation relation in the logic that composes at higher order, thus giving a syntactic logical counterpart to recent advances on the semantic level.
Relating computational effects by ⊤⊤lifting, in
 of Lecture Notes in Computer Science
"... We consider the problem of establishing a relationship between two interpretations of base type terms of a λccalculus extended with algebraic operations. We show that the given relationship holds if it satisfies a set of natural conditions. We apply this result to 1) comparing two monadic semantics ..."
Abstract

Cited by 2 (0 self)
 Add to MetaCart
(Show Context)
We consider the problem of establishing a relationship between two interpretations of base type terms of a λccalculus extended with algebraic operations. We show that the given relationship holds if it satisfies a set of natural conditions. We apply this result to 1) comparing two monadic semantics related by a strong monad morphism, and 2) comparing two monadic semantics of fresh name creation: Stark’s new name creation monad [32], and the global counter monad. We also consider the same problem, relating semantics of computational effects, in the presence of recursive functions. We apply this additional by extending the previous monad morphism comparison result to the recursive case.
Logical Relations and Parametricity A Reynolds Programme for Category Theory and Programming Languages
, 2013
"... Dedicated to the memory of John C. Reynolds, 19352013 In his seminal paper on “Types, Abstraction and Parametric Polymorphism, ” John Reynolds called for homomorphisms to be generalized from functions to relations. He reasoned that such a generalization would allow typebased “abstraction ” (repre ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
(Show Context)
Dedicated to the memory of John C. Reynolds, 19352013 In his seminal paper on “Types, Abstraction and Parametric Polymorphism, ” John Reynolds called for homomorphisms to be generalized from functions to relations. He reasoned that such a generalization would allow typebased “abstraction ” (representation independence, information hiding, naturality or parametricity) to be captured in a mathematical theory, while accounting for higherorder types. However, after 30 years of research, we do not yet know fully how to do such a generalization. In this article, we explain the problems in doing so, summarize the work carried out so far, and call for a renewed attempt at addressing
An arithmetical proof of the strong normalization for the λcalculus with recursive equations on types
, 2007
"... ..."
An arithmetical proof of the strong normalization for the λcalculus with recursive equations on types
, 2009
"... ..."
PCF Definability via Kripke Logical Relations (after O'Hearn and Riecke)
, 1996
"... this paper, but for the logical relations, which are fixed arity relations as defined above in case of [9]. It is an open problem whether the characterization holds at higher types ..."
Abstract
 Add to MetaCart
this paper, but for the logical relations, which are fixed arity relations as defined above in case of [9]. It is an open problem whether the characterization holds at higher types
Logical Relations for Monadic Types †
, 2004
"... Logical relations and their generalizations are a fundamental tool in proving properties of lambdacalculi, e.g., yielding sound principles for observational equivalence. We propose a natural notion of logical relations able to deal with the monadic types of Moggi’s computational lambdacalculus. Th ..."
Abstract
 Add to MetaCart
Logical relations and their generalizations are a fundamental tool in proving properties of lambdacalculi, e.g., yielding sound principles for observational equivalence. We propose a natural notion of logical relations able to deal with the monadic types of Moggi’s computational lambdacalculus. The treatment is categorical, and is based on notions of subsconing, mono factorization systems, and monad morphisms. Our approach has a number of interesting applications, including cases for lambdacalculi with nondeterminism (where being in logical relation means being bisimilar), dynamic name
and
"... We study a weakening of the notion of logical relations, called prelogical relations, that has many of the features that make logical relations so useful as well as further algebraic properties including composability. The basic idea is simply to require the reverse implication in the definition of ..."
Abstract
 Add to MetaCart
We study a weakening of the notion of logical relations, called prelogical relations, that has many of the features that make logical relations so useful as well as further algebraic properties including composability. The basic idea is simply to require the reverse implication in the definition of logical relations to hold only for pairs of functions that are expressible by the same lambda term. Prelogical relations are the minimal weakening of logical relations that gives composability for extensional structures and simultaneously the most liberal definition that gives the Basic Lemma. Prelogical predicates (i.e., unary prelogical relations) coincide with sets that are invariant under Kripke logical relations with varying arity as introduced by Jung and Tiuryn, and prelogical relations are the closure under projection and intersection of logical relations. These conceptually independent characterizations of prelogical relations suggest that the concept is rather intrinsic and robust. The use of prelogical relations gives an improved version of Mitchell’s representation independence theorem which characterizes observational equivalence for all signatures rather than just for firstorder signatures. Prelogical relations can be used in place of logical relations to give an account of data refinement where the fact that prelogical relations compose explains why stepwise refinement is sound.