Results 1 
7 of
7
Continuous functions on final coalgebras
, 2007
"... In a previous paper we have given a representation of continuous functions on streams, both discretevalued functions, and functions between streams. the topology on streams is the ‘Baire ’ topology induced by taking as a basic neighbourhood the set of streams that share a given finite prefix. We ga ..."
Abstract

Cited by 10 (1 self)
 Add to MetaCart
(Show Context)
In a previous paper we have given a representation of continuous functions on streams, both discretevalued functions, and functions between streams. the topology on streams is the ‘Baire ’ topology induced by taking as a basic neighbourhood the set of streams that share a given finite prefix. We gave also a combinator on the representations of stream processing functions that reflects composition. Streams are the simplest example of a nontrivial final coalgebras, playing in the coalgebraic realm the same role as do the natural numbers in the algebraic realm. Here we extend our previous results to cover the case of final coalgebras for a broad class of functors generalising (×A). The functors we deal with are those that arise from countable signatures of finiteplace untyped operators. These have many applications. The topology we put on the final coalgebra for such a functor is that induced by taking for basic neighbourhoods the set of infinite objects which share a common prefix, according to the usual definition of the final coalgebra as the limit of a certain inverse chain starting at �. 1
First steps in synthetic guarded domain theory: stepindexing in the topos of trees
"... ..."
(Show Context)
Generic programming with dependent types
 Spring School on Datatype Generic Programming
, 2006
"... In these lecture notes we give an overview of recent research on the relationship ..."
Abstract

Cited by 6 (1 self)
 Add to MetaCart
In these lecture notes we give an overview of recent research on the relationship
Partiality, State and Dependent Types
"... Partial type theories allow reasoning about recursivelydefined computations using fixedpoint induction. However, fixedpoint induction is only sound for admissible types and not all types are admissible in sufficiently expressive dependent type theories. Previous solutions have either introduced ..."
Abstract

Cited by 2 (1 self)
 Add to MetaCart
(Show Context)
Partial type theories allow reasoning about recursivelydefined computations using fixedpoint induction. However, fixedpoint induction is only sound for admissible types and not all types are admissible in sufficiently expressive dependent type theories. Previous solutions have either introduced explicit admissibility conditions on the use of fixed points, or limited the underlying type theory. In this paper we propose a third approach, which supports Hoarestyle partial correctness reasoning, without admissibility conditions, but at a tradeoff that one cannot reason equationally about effectful computations. The resulting system is still quite expressive and useful in practice, which we confirm by an implementation as an extension of Coq.
A foundation for GADTs and inductive families: dependent polynomial functor approach
 In WGP’11
, 2011
"... Every Algebraic Datatype (ADT) is characterised as the initial algebra of a polynomial functor on sets. This paper extends the characterisation to the case of more advanced datatypes: Generalised Algebraic Datatypes (GADTs) and Inductive Families. Specifically, we show that GADTs and Inductive Fa ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
(Show Context)
Every Algebraic Datatype (ADT) is characterised as the initial algebra of a polynomial functor on sets. This paper extends the characterisation to the case of more advanced datatypes: Generalised Algebraic Datatypes (GADTs) and Inductive Families. Specifically, we show that GADTs and Inductive Families are characterised as initial algebras of dependent polynomial functors. The theoretical tool we use throughout is an abstract notion of polynomial between sets together with its associated general form of polynomial functor between categories of indexed sets introduced by Gambino and Hyland. In the context of ADTs, this fundamental result is the basis for various generic functional programming techniques. To establish the usefulness of our approach for such developments in the broader context of inductively defined dependent types, we apply the theory to construct zippers for Inductive Families.
MFPS 2009 Continuous Functions on Final Coalgebras
"... In a previous paper we gave a representation of, and simultaneously a way of programming with, continuous functions on streams, whether discretevalued functions, or functions between streams. We also defined a combinator on the representations of such continuous functions that reflects composition. ..."
Abstract
 Add to MetaCart
(Show Context)
In a previous paper we gave a representation of, and simultaneously a way of programming with, continuous functions on streams, whether discretevalued functions, or functions between streams. We also defined a combinator on the representations of such continuous functions that reflects composition. Streams are one of the simplest examples of nontrivial final coalgebras. Here we extend our previous results to cover the case of final coalgebras for a broader class of functors than that giving rise to streams. Among the functors we can deal with are those that arise from countable signatures of finiteplace untyped operators. These have many applications. The topology we put on the final coalgebra for such a functor is that induced by taking for basic neighbourhoods the set of infinite objects which share a common ‘prefix’, a la Baire space. The datatype of prefixes is defined together with the set of ‘growth points ’ in a prefix, simultaneously. This we call beheading. To program and reason about representations of continuous functions requires a language whose type system incorporates the dependent function and pair types, inductive definitions at types Set, I → Set and (Σ I: Set) Set I, coinductive definitions at types Set and I → Set, as well as universal arrows for such definitions. Keywords: Continuous functions, final coalgebras, containers
Containers Constructing Strictly Positive Types
"... with disjoint coproducts and initial algebras of container functors (the categorical analogue of Wtypes) — and then establish that nested strictly positive inductive and coinductive types, which we call strictly positive types, exist in any MartinLöf category. Central to our development are the n ..."
Abstract
 Add to MetaCart
with disjoint coproducts and initial algebras of container functors (the categorical analogue of Wtypes) — and then establish that nested strictly positive inductive and coinductive types, which we call strictly positive types, exist in any MartinLöf category. Central to our development are the notions of containers and container functors, introduced in Abbott, Altenkirch, and Ghani (2003a). These provide a new conceptual analysis of data structures and polymorphic functions by exploiting dependent type theory as a convenient way to define constructions in MartinLöf categories. We also show that morphisms between containers can be full and faithfully interpreted as polymorphic functions (i.e. natural transformations) and that, in the presence of Wtypes, all strictly positive types (including nested inductive and coinductive types) give rise to containers.