Results 11 
19 of
19
Categorical Combinators for Charity
, 1996
"... A 2categorical notion of parametric combinator is introduced. These combinators are operations for constructing arrows in a category and satisfy a 2categorical abstraction of parametricity for strictly covariant functors. Inductive and coinductive datatypes are compatible with these combinators a ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
A 2categorical notion of parametric combinator is introduced. These combinators are operations for constructing arrows in a category and satisfy a 2categorical abstraction of parametricity for strictly covariant functors. Inductive and coinductive datatypes are compatible with these combinators and their universal properties are closely related to parametricity. The Charity programming language is based on strong datatypes which are a specialization of 2categorical datatypes. Stong combinators (which are an appropriate specialization of 2categorical combinators) provide a model of polymorphic functions in Charity. ii Contents Abstract ii Contents iii 1 Introduction 1 2 Charity 4 2.1 The Term Logic . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2.2 Semantics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.3 Strong Datatypes . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.4 Strong Combinators . . . . . . . . . . . . . . . . . . . . . . . . 17 3 2cate...
Chapter 1 Coalgebras as Types determined by their Elimination Rules
"... Abstract We develop rules for coalgebras in type theory, and give meaning explanations for them. We show that elements of coalgebras are determined by their elimination rules, whereas the introduction rules can be considered as derived. This is in contrast with algebraic data types, for which the op ..."
Abstract
 Add to MetaCart
Abstract We develop rules for coalgebras in type theory, and give meaning explanations for them. We show that elements of coalgebras are determined by their elimination rules, whereas the introduction rules can be considered as derived. This is in contrast with algebraic data types, for which the opposite is true: elements are determined by their introduction rules, and the elimination rules can be considered as derived. In this sense, the function type from the logical framework is more like a coalgebraic data type, the elements of which are determined by the elimination rule. We illustrate why the simplest form of guarded recursion is nothing but the introduction rule originating from the formulation of coalgebras in category theory. We discuss restrictions needed in order to preserve decidability of equality. Dedicated to Per MartinLöf on the occasion of his retirement. 1.1
unknown title
"... We present an extension of the HindleyMilner type system that supports a generous class of type constructors called functors, and provide a parametrically polymorphic algorithm for their mapping, i.e. for applying a function to each datum appearing in a value of constructed type. The algorithm come ..."
Abstract
 Add to MetaCart
(Show Context)
We present an extension of the HindleyMilner type system that supports a generous class of type constructors called functors, and provide a parametrically polymorphic algorithm for their mapping, i.e. for applying a function to each datum appearing in a value of constructed type. The algorithm comes from shape theory, which provides a uniform method for locating data within a shape. The resulting system is ChurchRosser and strongly normalizing, and supports type inference. Several different semantics are possible, which affects the choice of constants in the language, and are used to illustrate the relationship to polytypic programming. Capsule Review A wide class of type constructors (functions producing types from types) used in functional programming are functorial, in the sense that they can be extended to mappings from functions to functions satisfying a few simple laws. The ‘map ’ functional for lists is the prototypic example. Moreover, this additional structure for type constructors is very useful for expressing properties of some recursively defined datatypes and (hence) in
Abstract CTCS 2002 Preliminary Version
"... We investigate the reasons for which the existence of certain right adjoints implies the existence of some final coalgebras, and viceversa. In particular we prove and discuss the following theorem which has been partially available in the literature: let F ⊣ G be a pair of adjoint functors, and sup ..."
Abstract
 Add to MetaCart
(Show Context)
We investigate the reasons for which the existence of certain right adjoints implies the existence of some final coalgebras, and viceversa. In particular we prove and discuss the following theorem which has been partially available in the literature: let F ⊣ G be a pair of adjoint functors, and suppose that an initial algebra � F (X) of the functor H(Y) = X + F (Y) exists; then a right adjoint � G(X) to � F (X) exists if and only if a final coalgebra ˇ G(X) of the functor K(Y) = X × G(Y) exists. Motivated by the problem of understanding the structures that arise from initial algebras, we show the following: if F is a left adjoint with a certain commutativity property, then an initial algebra of H(Y) = X + F (Y) generates a subcategory of functors with inductive types where the functorial composition is constrained to be a Cartesian product. 1
A Uniform Model Theory for the Specification of Data and Process types
"... Generalizing products in Lawvere's algebraic theories to projective and injective Kan extensions and their conjunctive combinations one gets a powerful categorical model theory. Based on this categorical model theory the foundations of a uniform axiomatic specification formalism for data an ..."
Abstract
 Add to MetaCart
Generalizing products in Lawvere's algebraic theories to projective and injective Kan extensions and their conjunctive combinations one gets a powerful categorical model theory. Based on this categorical model theory the foundations of a uniform axiomatic specification formalism for data and process types is developed.
HigherOrder Charity
, 1997
"... This thesis describes the higherorder Charity programming language which is an extension of firstorder Charity. This results from extending the coinductive datatype definition mechanism to allow a new class of higherorder datatypes with parameterized destructors. This adds significant expressive ..."
Abstract
 Add to MetaCart
This thesis describes the higherorder Charity programming language which is an extension of firstorder Charity. This results from extending the coinductive datatype definition mechanism to allow a new class of higherorder datatypes with parameterized destructors. This adds significant expressive power to the language. In particular it allows one to create "objects". The language is "higherorder" in the traditional sense that the exponential datatype can be defined, and so that functions can be treated as values. The higherorder extension is traced from the extension of the syntax and the expressive gains delivered to the Charity programmer, down through the innards of the language and the modifications required in the implementation.
Functorial ML
, 1998
"... We present an extension of the HindleyMilner type system that supports a generous class of type constructors called functors, and provide a parametrically polymorphic algorithm for their mapping, i.e. for applying a function to each datum appearing in a value of constructed type. The algorithm come ..."
Abstract
 Add to MetaCart
We present an extension of the HindleyMilner type system that supports a generous class of type constructors called functors, and provide a parametrically polymorphic algorithm for their mapping, i.e. for applying a function to each datum appearing in a value of constructed type. The algorithm comes from shape theory, which provides a uniform method for locating data within a shape. The resulting system is ChurchRosser and strongly normalizing, and supports type inference. Several dierent semantics are possible, which aects the choice of constants in the language, and are used to illustrate the relationship to polytypic programming. Capsule Review A wide class of type constructors (functions producing types from types) used in functional programming are functorial, in the sense that they can be extended to mappings from functions to functions satisfying a few simple laws. The `map' functional for lists is the prototypic example. Moreover, this additional structure for type constru...
Cuts for circular proofs: semantics and cutelimination
"... One of the authors introduced in [16] a calculus of circular proofs for studying the computability arising from the following categorical operations: finite products, finite coproducts, initial algebras, final coalgebras. The calculus presented [16] is cutfree; even if sound and complete for provab ..."
Abstract
 Add to MetaCart
One of the authors introduced in [16] a calculus of circular proofs for studying the computability arising from the following categorical operations: finite products, finite coproducts, initial algebras, final coalgebras. The calculus presented [16] is cutfree; even if sound and complete for provability, it lacked an important property for the semantics of proofs, namely fullness w.r.t. the class of intended categorical models (called µbicomplete categories in [18]). In this paper we fix this problem by adding the cut rule to the calculus and by modifying accordingly the syntactical constraint ensuring soundness of proofs. The enhanced proof system fully represents arrows of the canonical model (a free µbicomplete category). We also describe a cutelimination procedure as a a model of computation arising from the above mentioned categorical operations. The procedure constructs a cutfree prooftree with possibly infinite branches out of a finite circular proof with cuts.
Theoretical Informatics and Applications Will be set by the publisher Informatique Théorique et Applications STRONG FUNCTORS AND INTERLEAVING FIXPOINTS IN GAME SEMANTICS ∗
"... Abstract. We describe a sequent calculus µLJ with primitives for inductive and coinductive datatypes and equip it with reduction rules allowing a sound translation of Gödel’s system T. We introduce the notion of a µclosed category, relying on a uniform interpretation of open µLJ formulas as stron ..."
Abstract
 Add to MetaCart
(Show Context)
Abstract. We describe a sequent calculus µLJ with primitives for inductive and coinductive datatypes and equip it with reduction rules allowing a sound translation of Gödel’s system T. We introduce the notion of a µclosed category, relying on a uniform interpretation of open µLJ formulas as strong functors. We show that any µclosed category is a sound model for µLJ. We then turn to the construction of a concrete µclosed category based on HylandOng game semantics. The model relies on three main ingredients: the construction of a general class of strong functors called open functors acting on the category of games and strategies, the solution of recursive arena equations by exploiting cycles in arenas, and the adaptation of the winning conditions of parity games to build initial algebras and terminal coalgebras for many open functors. We also prove a weak completeness result for this model, yielding a normalisation proof for µLJ. 1991 Mathematics Subject Classification. 18C50, 03F05, 68Q55, 91A40. 1.