Results 1 - 10
of
11
Logical Relations for Monadic Types
, 2002
"... Logical relations and their generalizations are a fundamental tool in proving properties of lambda-calculi, 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 lambda-calculus ..."
Abstract
-
Cited by 17 (7 self)
- Add to MetaCart
Logical relations and their generalizations are a fundamental tool in proving properties of lambda-calculi, 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 lambda-calculus. The treatment is categorical, and is based on notions of subsconing and distributivity laws for monads. Our approach has a number of interesting applications, including cases for lambda-calculi with non-determinism (where being in logical relation means being bisimilar), dynamic name creation, and probabilistic systems.
Constructive Data Refinement in Typed Lambda Calculus
, 2000
"... . A new treatment of data refinement in typed lambda calculus is proposed, based on pre-logical relations [HS99] rather than logical relations as in [Ten94], and incorporating a constructive element. Constructive data refinement is shown to have desirable properties, and a substantial example of ..."
Abstract
-
Cited by 12 (7 self)
- Add to MetaCart
. A new treatment of data refinement in typed lambda calculus is proposed, based on pre-logical relations [HS99] rather than logical relations as in [Ten94], and incorporating a constructive element. Constructive data refinement is shown to have desirable properties, and a substantial example of refinement is presented. 1 Introduction Various treatments of data refinement in the context of typed lambda calculus, beginning with Tennent's in [Ten94], have used logical relations to formalize the intuitive notion of refinement. This work has its roots in [Hoa72], which proposes that the correctness of a concrete version of an abstract program be verified using an invariant on the domain of concrete values together with a function mapping concrete values (that satisfy the invariant) to abstract values. In algebraic terms, what is required is a homomorphism from a subalgebra of the concrete algebra to the abstract algebra. A strictly more general method is to take a homomorphic relatio...
Logical Relations and Data Abstraction
- Proc. Computer Science Logic, CSL 2000, Fischbachau. Springer LNCS 1862
, 1996
"... We prove, in the context of simple type theory, that logical relations are sound and complete for data abstraction as given by equational specifications. Specifically, we show that two implementations of an equationally specified abstract type are equivalent if and only if they are linked by a suita ..."
Abstract
-
Cited by 4 (1 self)
- Add to MetaCart
We prove, in the context of simple type theory, that logical relations are sound and complete for data abstraction as given by equational specifications. Specifically, we show that two implementations of an equationally specified abstract type are equivalent if and only if they are linked by a suitable logical relation. This allows us to introduce new types and operations of any order on those types, and to impose equations between terms of any order. Implementations are required to respect these equations up to a general form of contextual equivalence, and two implementations are equivalent if they produce the same contextual equivalence on terms of the enlarged language. Logical relations are introduced abstractly, soundness is almost automatic, but completeness is more difficult, achieved using a variant of Jung and Tiuryn's logical relations of varying arity. The results are expressed and proved categorically.
Complete Lax Logical Relations for Cryptographic Lambda-Calculi
- In Proceedings of CSL’2004, volume 3210 of LNCS
, 2004
"... Security properties are profitably expressed using notions of contextual equivalence, and logical relations are a powerful proof technique to establish contextual equivalence in typed lambda calculi, see e.g. Sumii and Pierce's logical relation for a cryptographic lambda-calculus. We clarify Sumii a ..."
Abstract
-
Cited by 2 (1 self)
- Add to MetaCart
Security properties are profitably expressed using notions of contextual equivalence, and logical relations are a powerful proof technique to establish contextual equivalence in typed lambda calculi, see e.g. Sumii and Pierce's logical relation for a cryptographic lambda-calculus. We clarify Sumii and Pierce's approach, showing that the right tool is prelogical relations, or lax logical relations in general: relations should be lax at encryption types, notably. To explore the difficult aspect of fresh name creation, we use Moggi's monadic lambdacalculus with constants for cryptographic primitives, and Stark's name creation monad. We define logical relations which are lax at encryption and function types but strict (non-lax) at various other types, and show that they are sound and complete for contextual equivalence at all types.
Axiomatics for Data Refinement in Call By Value Programming Languages
"... We give a systematic category theoretic axiomatics for modelling data refinement in call by value programming languages. Our leading examples of call by value languages are extensions of the computational -calculus, such as FPC and languages for modelling nondeterminism, and extensions of the first ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
We give a systematic category theoretic axiomatics for modelling data refinement in call by value programming languages. Our leading examples of call by value languages are extensions of the computational -calculus, such as FPC and languages for modelling nondeterminism, and extensions of the first order fragment of the computational -calculus, such as a CPS language. We give a category theoretic account of the basic setting, then show how to model contexts, then arbitrary type and term constructors, then signatures, and finally data refinement. This extends and clarifies Kinoshita and Power's work on lax logical relations for call by value languages.
βη-complete models for System F
, 2000
"... We show that Friedman's proof of the existence of non-trivial βη-complete models of λ→ can be extended to system F. We isolate a set of conditions which are sufficient to ensure βη-completeness for a model of F (and α-completeness at the level of types), and we discuss which class ..."
Abstract
-
Cited by 2 (2 self)
- Add to MetaCart
We show that Friedman's proof of the existence of non-trivial βη-complete models of λ→ can be extended to system F. We isolate a set of conditions which are sufficient to ensure βη-completeness for a model of F (and α-completeness at the level of types), and we discuss which class of models we get. In particular, the model introduced in [5], having as polymorphic maps exactly all possible Scott continuous maps, is βη-complete and is hence the first known complete nonsyntactic model of F. In order to have a suitable framework where to express the conditions and develop the proof, we also introduce the very natural notion of "polymax models" of System F.
A Generalisation of Pre-logical Predicates to Simply Typed Formal Systems
- In ICALP
, 2004
"... We generalise the notion of pre-logical predicates [HS02] to arbitrary simply typed formal systems and their categorical models. We establish the basic lemma of pre-logical predicates and composability of binary pre-logical relations in this generalised setting. This generalisation takes place in ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
We generalise the notion of pre-logical predicates [HS02] to arbitrary simply typed formal systems and their categorical models. We establish the basic lemma of pre-logical predicates and composability of binary pre-logical relations in this generalised setting. This generalisation takes place in a categorical framework for typed higher-order abstract syntax and semantics [Fio02,MS03].
Specification Refinement with System F, The Higher-Order Case
, 2000
"... . A type-theoretic counterpart to the notion of algebraic specification refinement is discussed for abstract data types with higher-order signatures. The type-theoretic setting consists of System F and the logic for parametric polymorphism of Plotkin and Abadi. For first-order signatures, this setti ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
. A type-theoretic counterpart to the notion of algebraic specification refinement is discussed for abstract data types with higher-order signatures. The type-theoretic setting consists of System F and the logic for parametric polymorphism of Plotkin and Abadi. For first-order signatures, this setting immediately gives a natural notion of specification refinement up to observational equivalence via the notion of simulation relation. Moreover, a proof strategy for proving observational refinements formalised by Bidoit, Hennicker and Wirsing can be soundly imported into the type theory. In lifting these results to the higher-order case, we find it necessary firstly to develop an alternative simulation relation and secondly to extend the parametric PER-model interpretation, both in such a way as to observe data type abstraction barriers more closely. 1 Introduction One framework in algebraic specification that has particular appeal and applicability is that of stepwise specification refi...
Patterns and Lax Lambda Laws for Relational and Imperative Programming
-
"... Point-free relation calculi have been fruitful in functional programming, but in specific applications pointwise expressions can be more convenient and comprehensible than point-free ones. To integrate pointwise with point-free, de Moor and Gibbons [AMAST 2000] give a relational semantics for lamb ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
Point-free relation calculi have been fruitful in functional programming, but in specific applications pointwise expressions can be more convenient and comprehensible than point-free ones. To integrate pointwise with point-free, de Moor and Gibbons [AMAST 2000] give a relational semantics for lambda terms with non-injective pattern matching. Alternative semantics has
βη-complete models for System F
, 2000
"... We show that Friedman's proof of the existence of non-trivial βη-complete models of λ→ can be extended to system F. We isolate a set of conditions which are sufficient to ensure βη-completeness for a model of F (and α-completeness at the level of types), and we di ..."
Abstract
- Add to MetaCart
We show that Friedman's proof of the existence of non-trivial βη-complete models of λ→ can be extended to system F. We isolate a set of conditions which are sufficient to ensure βη-completeness for a model of F (and α-completeness at the level of types), and we discuss which class of models we get. In particular, the model introduced in [5], having as polymorphic maps exactly all possible Scott continuous maps, is βη-complete and is hence the first known complete nonsyntactic model of F. In order to have a suitable framework where to express the conditions and develop the proof, we also introduce the very natural notion of "polymax models" of System F. 1

