Results 1 - 10
of
14
A Tutorial on (Co)Algebras and (Co)Induction
- EATCS Bulletin
, 1997
"... . Algebraic structures which are generated by a collection of constructors--- like natural numbers (generated by a zero and a successor) or finite lists and trees--- are of well-established importance in computer science. Formally, they are initial algebras. Induction is used both as a definition pr ..."
Abstract
-
Cited by 214 (34 self)
- Add to MetaCart
. Algebraic structures which are generated by a collection of constructors--- like natural numbers (generated by a zero and a successor) or finite lists and trees--- are of well-established importance in computer science. Formally, they are initial algebras. Induction is used both as a definition principle, and as a proof principle for such structures. But there are also important dual "coalgebraic" structures, which do not come equipped with constructor operations but with what are sometimes called "destructor" operations (also called observers, accessors, transition maps, or mutators). Spaces of infinite data (including, for example, infinite lists, and non-well-founded sets) are generally of this kind. In general, dynamical systems with a hidden, black-box state space, to which a user only has limited access via specified (observer or mutator) operations, are coalgebras of various kinds. Such coalgebraic systems are common in computer science. And "coinduction" is the appropriate te...
Relational Reasoning about Functions and Nondeterminism
, 1998
"... Reproduction of all or part of this work is permitted for educational or research use on condition that this copyright notice is included in any copy. See back inner page for a list of recent BRICS Dissertation Series publications. Copies may be obtained by contacting: BRICS ..."
Abstract
-
Cited by 31 (4 self)
- Add to MetaCart
Reproduction of all or part of this work is permitted for educational or research use on condition that this copyright notice is included in any copy. See back inner page for a list of recent BRICS Dissertation Series publications. Copies may be obtained by contacting: BRICS
Normalization and the Yoneda Embedding
"... this paper we describe a new, categorical approach to normalization in typed - ..."
Abstract
-
Cited by 20 (3 self)
- Add to MetaCart
this paper we describe a new, categorical approach to normalization in typed -
Relating Operational and Denotational Semantics for Input/Output Effects
, 1999
"... We study the longstanding problem of semantics for input/output (I/O) expressed using side-effects. Our vehicle is a small higher-order imperative language, with operations for interactive character I/O and based on ML syntax. Unlike previous theories, we present both operational and denotational se ..."
Abstract
-
Cited by 7 (3 self)
- Add to MetaCart
We study the longstanding problem of semantics for input/output (I/O) expressed using side-effects. Our vehicle is a small higher-order imperative language, with operations for interactive character I/O and based on ML syntax. Unlike previous theories, we present both operational and denotational semantics for I/O effects. We use a novel labelled transition system that uniformly expresses both applicative and imperative computation. We make a standard definition of bisimilarity. We prove bisimilarity is a congruence using Howe's method. Next, we define a metalanguage M in which we may give a denotational semantics to O. M generalises Crole and Pitts' FIX-logic by adding in a parameterised recursive datatype, which is used to model I/O. M comes equipped both with an operational semantics and a domain-theoretic semantics in the category CPPO of cppos (bottom-pointed posets with joins of !-chains) and Scott continuous functions. We use the CPPO semantics to prove that M is computationally...
A Theory of Program Refinement
, 1998
"... We give a canonical program refinement calculus based on the lambda calculus and classical first-order predicate logic, and study its proof theory and semantics. The intention is to construct a metalanguage for refinement in which basic principles of program development can be studied. The idea is t ..."
Abstract
-
Cited by 5 (1 self)
- Add to MetaCart
We give a canonical program refinement calculus based on the lambda calculus and classical first-order predicate logic, and study its proof theory and semantics. The intention is to construct a metalanguage for refinement in which basic principles of program development can be studied. The idea is that it should be possible to induce a refinement calculus in a generic manner from a programming language and a program logic. For concreteness, we adopt the simply-typed lambda calculus augmented with primitive recursion as a paradigmatic typed functional programming language, and use classical first-order logic as a simple program logic. A key feature is the construction of the refinement calculus in a modular fashion, as the combination of two orthogonal extensions to the underlying programming language (in this case, the simply-typed lambda calculus). The crucial observation is that a refinement calculus is given by extending a programming language to allow indeterminate expressions (or ‘stubs’) involving the construction ‘some program x such that P ’. Factoring this into ‘some x...’
Innocent Game Models of Untyped λ-Calculus
- Theoretical Computer Science
, 2000
"... We present a new denotational model for the untyped -calculus, using the techniques of game semantics. The strategies used are innocent in the sense of Hyland and Ong [9] and Nickau [17], but the traditional distinction between \question" and \answer" moves is removed. We rst construct models D and ..."
Abstract
-
Cited by 3 (1 self)
- Add to MetaCart
We present a new denotational model for the untyped -calculus, using the techniques of game semantics. The strategies used are innocent in the sense of Hyland and Ong [9] and Nickau [17], but the traditional distinction between \question" and \answer" moves is removed. We rst construct models D and DREC as global sections of a reexive object in the categories A and A REC of arenas and innocent and recursive innocent strategies respectively. We show that these are sensible -algebras but are neither extensional nor universal. We then introduce a new representation of innocent strategies in an economical form. We show a strong connexion between the economical form of the denotation of a term in the game models and a variable-free form of the Nakajima tree of the term. Using this we show that the denable elements of DREC are precisely what we call eectively almost-everywhere copycat (EAC) strategies. The category A EAC with these strategies as morphisms gives rise to a -model D...
Innocent Game Models of Untyped λ-Calculus
, 2000
"... We present a new denotation model for the untyped λ-calculus, using the techniques of game semantics. The strategies used are innocent in the sense of Hyland and Ong [HO94] and Nickau [Nic96], but the traditional distinction between "question" and "answer" moves is removed. We first construct mod ..."
Abstract
-
Cited by 3 (1 self)
- Add to MetaCart
We present a new denotation model for the untyped λ-calculus, using the techniques of game semantics. The strategies used are innocent in the sense of Hyland and Ong [HO94] and Nickau [Nic96], but the traditional distinction between "question" and "answer" moves is removed. We first construct models D and DREC as global sections of a reflexive object in the categories A and A REC of arenas and innocent and recursive innocent strategies respectively. We show that these are sensible -algebras but are neither extensional nor universal. We then introduce a new representation of innocent strategies in an economical form. We show a stong connexion between the economical form of the denotation of a term in the game models and a variable-free form of the Nakajima tree of the term. Using this we show that the denable elements of DREC are precisely what we call effectively almost-everywhere copycat (EAC) strategies. The category A EAC with these strategies as morphisms gives rise to a ...
Innocent Game Models of Untyped
, 2000
"... We present a new denotation model for the untyped -calculus, using the techniques of game semantics. The strategies used are innocent in the sense of Hyland and Ong [HO94] and Nickau [Nic96], but the traditional distinction between \question" and \answer" moves is removed. We rst construct models ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
We present a new denotation model for the untyped -calculus, using the techniques of game semantics. The strategies used are innocent in the sense of Hyland and Ong [HO94] and Nickau [Nic96], but the traditional distinction between \question" and \answer" moves is removed. We rst construct models D and DREC as global sections of a reexive object in the categories A and A REC of arenas and innocent and recursive innocent strategies respectively. We show that these are sensible -algebras but are neither extensional nor universal. We then introduce a new representation of innocent strategies in an economical form. We show a stong connexion between the economical form of the denotation of a term in the game models and a variable-free form of the Nakajima tree of the term. Using this we show that the denable elements of DREC are precisely what we call eectively almost-everywhere copycat (EAC) strategies. The category A EAC with these strategies as morphisms gives rise to a ...
Computational Adequacy of the FIX-Logic
, 1995
"... This paper presents computational adequacy results for the FIX logical system introduced by Crole and Pitts in LICS '90. More precisely, we take two simple PCF style languages (whose dynamic semantics follow a call-by-value and call-by-name regime) give translations of the languages into suitable ju ..."
Abstract
- Add to MetaCart
This paper presents computational adequacy results for the FIX logical system introduced by Crole and Pitts in LICS '90. More precisely, we take two simple PCF style languages (whose dynamic semantics follow a call-by-value and call-by-name regime) give translations of the languages into suitable judgements in the FIX-logic and prove that the translations are adequate for the static and dynamic semantics. This shows that the FIX-logic can be regarded as a programming metalogic which will uniformly interpret both call-by-value and call-by-name languages. The proofs of dynamic adequacy make use of a logical relations technique which is based on the methods of Plotkin and Tait. We also show that there is some choice in the translation of recursion; certain translations make use of an existence property of the FIX-logic to prove computational adequacy.

