Results 1 -
8 of
8
Complete Axioms for Categorical Fixed-point Operators
- In Proceedings of 15th Annual Symposium on Logic in Computer Science
, 2000
"... We give an axiomatic treatment of fixed-point operators in categories. A notion of iteration operator is defined, embodying the equational properties of iteration theories. We prove a general completeness theorem for iteration operators, relying on a new, purely syntactic characterisation of the fre ..."
Abstract
-
Cited by 27 (6 self)
- Add to MetaCart
We give an axiomatic treatment of fixed-point operators in categories. A notion of iteration operator is defined, embodying the equational properties of iteration theories. We prove a general completeness theorem for iteration operators, relying on a new, purely syntactic characterisation of the free iteration theory. We then show how iteration operators arise in axiomatic domain theory. One result derives them from the existence of sufficiently many bifree algebras (exploiting the universal property Freyd introduced in his notion of algebraic compactness) . Another result shows that, in the presence of a parameterized natural numbers object and an equational lifting monad, any uniform fixed-point operator is necessarily an iteration operator. 1. Introduction Fixed points play a central role in domain theory. Traditionally, one works with a category such as Cppo, the category of !-continuous functions between !-complete pointed partial orders. This possesses a least-fixed-point oper...
A Uniform Approach to Domain Theory in Realizability Models
- Mathematical Structures in Computer Science
, 1996
"... this paper we provide a uniform approach to modelling them in categories of modest sets. To do this, we identify appropriate structure for doing "domain theory" in such "realizability models". In Sections 2 and 3 we introduce PCAs and define the associated "realizability" categories of assemblies an ..."
Abstract
-
Cited by 19 (6 self)
- Add to MetaCart
this paper we provide a uniform approach to modelling them in categories of modest sets. To do this, we identify appropriate structure for doing "domain theory" in such "realizability models". In Sections 2 and 3 we introduce PCAs and define the associated "realizability" categories of assemblies and modest sets. Next, in Section 4, we prepare for our development of domain theory with an analysis of nontermination. Previous approaches have used (relatively complicated) categorical formulations of partial maps for this purpose. Instead, motivated by the idea that A provides a primitive programming language, we consider a simple notion of "diverging" computation within A itself. This leads to a theory of divergences from which a notion of (computable) partial function is derived together with a lift monad classifying partial functions. The next task is to isolate a subcategory of modest sets with sufficient structure for supporting analogues of the usual domain-theoretic constructions. First, we expect to be able to interpret the standard constructions of total type theory in this category, so it should inherit cartesian-closure, coproducts and the natural numbers from modest sets. Second, it should interact well with the notion of partiality, so it should be closed under application of the lift functor. Third, it should allow the recursive definition of partial functions. This is achieved by obtaining a fixpoint object in the category, as defined in (Crole and Pitts 1992). Finally, although there is in principle no definitive list of requirements on such a category, one would like it to support more complicated constructions such as those required to interpret polymorphic and recursive types. The central part of the paper (Sections 5, 6, 7 and 9) is devoted to establish...
Call-By-Push-Value: A Subsuming Paradigm
- in Proc. TLCA ’99
, 1999
"... . Call-by-push-value is a new paradigm that subsumes the call-by-name and call-by-value paradigms, in the following sense: both operational and denotational semantics for those paradigms can be seen as arising, via translations that we will provide, from similar semantics for call-by-push-value. To ..."
Abstract
-
Cited by 14 (0 self)
- Add to MetaCart
. Call-by-push-value is a new paradigm that subsumes the call-by-name and call-by-value paradigms, in the following sense: both operational and denotational semantics for those paradigms can be seen as arising, via translations that we will provide, from similar semantics for call-by-push-value. To explain call-by-push-value, we first discuss general operational ideas, especially the distinction between values and computations, using the principle that "a value is, a computation does". Using an example program, we see that the lambda-calculus primitives can be understood as push/pop commands for an operand-stack. We provide operational and denotational semantics for a range of computational effects and show their agreement. We hence obtain semantics for call-by-name and call-by-value, of which some are familiar, some are new and some were known but previously appeared mysterious. 1 Introduction 1.1 Contribution In his invited lecture at POPL '98 [32], Reynolds, surveying over 30 year...
Generic trace semantics via coinduction
- Logical Methods in Comp. Sci
, 2007
"... Abstract. Trace semantics has been defined for various kinds of state-based systems, notably with different forms of branching such as non-determinism vs. probability. In this paper we claim to identify one underlying mathematical structure behind these “trace ..."
Abstract
-
Cited by 12 (5 self)
- Add to MetaCart
Abstract. Trace semantics has been defined for various kinds of state-based systems, notably with different forms of branching such as non-determinism vs. probability. In this paper we claim to identify one underlying mathematical structure behind these “trace
Computational Adequacy in an Elementary Topos
- Proceedings CSL ’98, Springer LNCS 1584
, 1999
"... . We place simple axioms on an elementary topos which suffice for it to provide a denotational model of call-by-value PCF with sum and product types. The model is synthetic in the sense that types are interpreted by their set-theoretic counterparts within the topos. The main result characterises whe ..."
Abstract
-
Cited by 9 (4 self)
- Add to MetaCart
. We place simple axioms on an elementary topos which suffice for it to provide a denotational model of call-by-value PCF with sum and product types. The model is synthetic in the sense that types are interpreted by their set-theoretic counterparts within the topos. The main result characterises when the model is computationally adequate with respect to the operational semantics of the programming language. We prove that computational adequacy holds if and only if the topos is 1-consistent (i.e. its internal logic validates only true \Sigma 0 1 -sentences). 1 Introduction One axiomatic approach to domain theory is based on axiomatizing properties of the category of predomains (in which objects need not have a "least" element). Typically, such a category is assumed to be bicartesian closed (although it is not really necessary to require all exponentials) with natural numbers object, allowing the denotations of simple datatypes to be determined by universal properties. It is well known...
Computational Adequacy for Recursive Types in Models of Intuitionistic Set Theory
- In Proc. 17th IEEE Symposium on Logic in Computer Science
, 2003
"... This paper provides a unifying axiomatic account of the interpretation of recursive types that incorporates both domain-theoretic and realizability models as concrete instances. Our approach is to view such models as full subcategories of categorical models of intuitionistic set theory. It is shown ..."
Abstract
-
Cited by 8 (2 self)
- Add to MetaCart
This paper provides a unifying axiomatic account of the interpretation of recursive types that incorporates both domain-theoretic and realizability models as concrete instances. Our approach is to view such models as full subcategories of categorical models of intuitionistic set theory. It is shown that the existence of solutions to recursive domain equations depends upon the strength of the set theory. We observe that the internal set theory of an elementary topos is not strong enough to guarantee their existence. In contrast, as our first main result, we establish that solutions to recursive domain equations do exist when the category of sets is a model of full intuitionistic Zermelo-Fraenkel set theory. We then apply this result to obtain a denotational interpretation of FPC, a recursively typed lambda-calculus with callby-value operational semantics. By exploiting the intuitionistic logic of the ambient model of intuitionistic set theory, we analyse the relationship between operational and denotational semantics. We first prove an “internal ” computational adequacy theorem: the model always believes that the operational and denotational notions of termination agree. This allows us to identify, as our second main result, a necessary and sufficient condition for genuine “external ” computational adequacy to hold, i.e. for the operational and denotational notions of termination to coincide in the real world. The condition is formulated as a simple property of the internal logic, related to the logical notion of 1-consistency. We provide useful sufficient conditions for establishing that the logical property holds in practice. Finally, we outline how the methods of the paper may be applied to concrete models of FPC. In doing so, we obtain computational adequacy results for an extensive range of realizability and domain-theoretic models.
Call-by-push-value
, 2001
"... Call-by-push-value (CBPV) is a new programming language paradigm, based on the slogan “a value is, a computation does”. We claim that CBPV provides the semantic primitives from which the call-by-value and call-by-name paradigms are built. The primary goal of the thesis is to present the evidence for ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
Call-by-push-value (CBPV) is a new programming language paradigm, based on the slogan “a value is, a computation does”. We claim that CBPV provides the semantic primitives from which the call-by-value and call-by-name paradigms are built. The primary goal of the thesis is to present the evidence for this claim, which is found in a remarkably wide range of semantics: from operational semantics, in big-step form and in machine form, to denotational models using domains, possible worlds, continuations and games. In the first part of the thesis, we come to CBPV and its equational theory by looking critically at the call-by-value and call-by-name paradigms in the presence of general computational effects. We give a Felleisen/Friedman-style CK-machine semantics, which explains how CBPV can be understood in terms of push/pop instructions. In the second part we give simple CBPV models for printing, divergence, global store, errors, erratic choice and control effects, as well as for various combinations of these effects. We develop the store model into a possible world model for cell generation, and (following Steele) we develop the control model into a “jumping implementation ” using a continuation language called Jump-With-Argument (JWA). We present a pointer game model for CBPV, in the style of Hyland and Ong. We see that the game concepts of questioning and answering correspond to the CBPV concepts of forcing and producing respectively. We observe that this game semantics is closely related to the jumping implementation. In the third part of the thesis, we study the categorical semantics for the CBPV equational theory. We present and compare 3 approaches: ¯ models using strong monads, in the style of Moggi; ¯ models using value/producer structures, in the style of Power and Robinson; ¯ models using (strong) adjunctions. All the concrete models in the thesis are seen to be adjunction models. Submitted for the degree of Doctor of Philosophy
An operational domain-theoretic treatment of recursive types
- in: Twenty-Second Mathematical Foundations of Programming Semantics
, 2006
"... We develop a domain theory for treating recursive types with respect to contextual equivalence. The principal approach taken here deviates from classical domain theory in that we do not produce the recursive types via the usual inverse limits constructions- we have it for free by working directly wi ..."
Abstract
-
Cited by 2 (2 self)
- Add to MetaCart
We develop a domain theory for treating recursive types with respect to contextual equivalence. The principal approach taken here deviates from classical domain theory in that we do not produce the recursive types via the usual inverse limits constructions- we have it for free by working directly with the operational semantics. By extending type expressions to endofunctors on a ‘syntactic ’ category, we establish algebraic compactness. To do this, we rely on an operational version of the minimal invariance property. In addition, we apply techniques developed herein to reason about FPC programs. Key words: Operational domain theory, recursive types, FPC, realisable functor, algebraic compactness, generic approximation lemma, denotational semantics 1

