Results 1  10
of
13
Structural Induction and Coinduction in a Fibrational Setting
 Information and Computation
, 1997
"... . We present a categorical logic formulation of induction and coinduction principles for reasoning about inductively and coinductively defined types. Our main results provide sufficient criteria for the validity of such principles: in the presence of comprehension, the induction principle for in ..."
Abstract

Cited by 70 (15 self)
 Add to MetaCart
. We present a categorical logic formulation of induction and coinduction principles for reasoning about inductively and coinductively defined types. Our main results provide sufficient criteria for the validity of such principles: in the presence of comprehension, the induction principle for initial algebras is admissible, and dually, in the presence of quotient types, the coinduction principle for terminal coalgebras is admissible. After giving an alternative formulation of induction in terms of binary relations, we combine both principles and obtain a mixed induction/coinduction principle which allows us to reason about minimal solutions X = oe(X) where X may occur both positively and negatively in the type constructor oe. We further strengthen these logical principles to deal with contexts and prove that such strengthening is valid when the (abstract) logic we consider is contextually/functionally complete. All the main results follow from a basic result about adjunc...
Equilogical Spaces
, 1998
"... It is well known that one can build models of full higherorder dependent type theory (also called the calculus of constructions) using partial equivalence relations (PERs) and assemblies over a partial combinatory algebra (PCA). But the idea of categories of PERs and ERs (total equivalence relation ..."
Abstract

Cited by 33 (12 self)
 Add to MetaCart
It is well known that one can build models of full higherorder dependent type theory (also called the calculus of constructions) using partial equivalence relations (PERs) and assemblies over a partial combinatory algebra (PCA). But the idea of categories of PERs and ERs (total equivalence relations) can be applied to other structures as well. In particular, we can easily dene the category of ERs and equivalencepreserving continuous mappings over the standard category Top 0 of topological T 0 spaces; we call these spaces (a topological space together with an ER) equilogical spaces and the resulting category Equ. We show that this categoryin contradistinction to Top 0 is a cartesian closed category. The direct proof outlined here uses the equivalence of the category Equ to the category PEqu of PERs over algebraic lattices (a full subcategory of Top 0 that is well known to be cartesian closed from domain theory). In another paper with Carboni and Rosolini (cited herein) a more abstract categorical generalization shows why many such categories are cartesian closed. The category Equ obviously contains Top 0 as a full subcategory, and it naturally contains many other well known subcategories. In particular, we show why, as a consequence of work of Ershov, Berger, and others, the KleeneKreisel hierarchy of countable functionals of nite types can be naturally constructed in Equ from the natural numbers object N by repeated use in Equ of exponentiation and binary products. We also develop for Equ notions of modest sets (a category equivalent to Equ) and assemblies to explain why a model of dependent type theory is obtained. We make some comparisons of this model to other, known models. 1
A CategoryTheoretic Account of Program Modules
 Mathematical Structures in Computer Science
, 1994
"... The typetheoretic explanation of modules proposed to date (for programming languages like ML) is unsatisfactory, because it does not capture that evaluation of typeexpressions is independent from evaluation of programexpressions. We propose a new explanation based on \programming languages as inde ..."
Abstract

Cited by 23 (6 self)
 Add to MetaCart
The typetheoretic explanation of modules proposed to date (for programming languages like ML) is unsatisfactory, because it does not capture that evaluation of typeexpressions is independent from evaluation of programexpressions. We propose a new explanation based on \programming languages as indexed categories" and illustrates how ML can be extended to support higher order modules, by developing a categorytheoretic semantics for a calculus of modules with dependent types. The paper outlines also a methodology, which may lead to a modular approach in the study of programming languages. Introduction The addition of module facilities to programming languages is motivated by the need to provide a better environment for the development and maintenance of large programs. Nowadays many programming languages include such facilities. Throughout the paper Standard ML (see [Mac85, HMM86, MTH90]) is taken as representative for these languages. The implementation of module facilities has been ...
Developing Theories of Types and Computability via Realizability
, 2000
"... We investigate the development of theories of types and computability via realizability. ..."
Abstract

Cited by 21 (6 self)
 Add to MetaCart
(Show Context)
We investigate the development of theories of types and computability via realizability.
When is a type refinement an inductive type
 In FOSSACS, volume 6604 of Lecture Notes in Computer Science
, 2011
"... Abstract. Dependently typed programming languages allow sophisticated properties of data to be expressed within the type system. Of particular use in dependently typed programming are indexed types that refine data by computationally useful information. For example, the Nindexed type of vectors ref ..."
Abstract

Cited by 4 (1 self)
 Add to MetaCart
Abstract. Dependently typed programming languages allow sophisticated properties of data to be expressed within the type system. Of particular use in dependently typed programming are indexed types that refine data by computationally useful information. For example, the Nindexed type of vectors refines lists by their lengths. Other data types may be refined in similar ways, but programmers must produce purposespecific refinements on an ad hoc basis, developers must anticipate which refinements to include in libraries, and implementations often store redundant information about data and their refinements. This paper shows how to generically derive inductive characterisations of refinements of inductive types, and argues that these characterisations can alleviate some of the aforementioned difficulties associated with ad hoc refinements. These characterisations also ensure that standard techniques for programming with and reasoning about inductive types are applicable to refinements, and that refinements can themselves be further refined. 1
Fibrational Induction Meets Effects
"... Abstract. This paper provides several induction rules that can be used to prove properties of effectful data types. Our results are semantic in nature and build upon Hermida and Jacobs ’ fibrational formulation of induction for polynomial data types and its extension to all inductive data types by G ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
Abstract. This paper provides several induction rules that can be used to prove properties of effectful data types. Our results are semantic in nature and build upon Hermida and Jacobs ’ fibrational formulation of induction for polynomial data types and its extension to all inductive data types by Ghani, Johann, and Fumex. An effectful data type µ(T F) is built from a functor F that describes data, and a monad T that computes effects. Our main contribution is to derive induction rules that are generic over all functors F and monads T such that µ(T F) exists. Along the way, we also derive a principle of definition by structural recursion for effectful data types that is similarly generic. Our induction rule is also generic over the kinds of properties to be proved: like the work on which we build, we work in a general fibrational setting and so can accommodate very general notions of properties, rather than just those of particular syntactic forms. We give examples exploiting the generality of our results, and show how our results specialize to those in the literature, particularly those of Filinski and Støvring. 1
Indexed induction and coinduction, fibrationally
 In CALCO
, 2011
"... Abstract. This paper extends the fibrational approach to induction and coinduction pioneered by Hermida and Jacobs, and developed by the current authors, in two key directions. First, we present a sound coinduction rule for any data type arising as the final coalgebra of a functor, thus relaxing Her ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
(Show Context)
Abstract. This paper extends the fibrational approach to induction and coinduction pioneered by Hermida and Jacobs, and developed by the current authors, in two key directions. First, we present a sound coinduction rule for any data type arising as the final coalgebra of a functor, thus relaxing Hermida and Jacobs ’ restriction to polynomial data types. For this we introduce the notion of a quotient category with equality (QCE), which both abstracts the standard notion of a fibration of relations constructed from a given fibration, and plays a role in the theory of coinduction dual to that of a comprehension category with unit (CCU) in the theory of induction. Second, we show that indexed inductive and coinductive types also admit sound induction and coinduction rules. Indexed data types often arise as initial algebras and final coalgebras of functors on slice categories, so our key technical results give sufficent conditions under which we can construct, from a CCU (QCE) U: E → B, a fibration with base B/I that models indexing by I and is also a CCU (QCE). 1
CATEGORYTHEORETIC MODELS OF LINEAR ABADI & PLOTKIN LOGIC
, 2008
"... This paper presents a sound and complete categorytheoretic notion of models for Linear Abadi & Plotkin Logic [Birkedal et al., 2006], a logic suitable for reasoning about parametricity in combination with recursion. A subclass of these called parametric LAPL structures can be seen as an axioma ..."
Abstract
 Add to MetaCart
This paper presents a sound and complete categorytheoretic notion of models for Linear Abadi & Plotkin Logic [Birkedal et al., 2006], a logic suitable for reasoning about parametricity in combination with recursion. A subclass of these called parametric LAPL structures can be seen as an axiomatization of domain theoretic models of parametric polymorphism, and we show how to solve general (nested) recursive domain equations in these. Parametric LAPL structures constitute a general notion of model of parametricity in a setting with recursion. In future papers we will demonstrate this by showing how many different models of parametricity and recursion give rise to parametric LAPL structures, including Simpson and Rosolini’s set theoretic models [Rosolini and Simpson, 2004], a syntactic model based on Lily [Pitts, 2000, Bierman et al., 2000] and a model based on admissible pers over a reflexive domain [Birkedal et al., 2007].
A Theory of Classes: Proofs and Models
, 1996
"... We investigate the proof structure and models of theories of classes, where classes are `collections ' of entities. The theories are weaker than set theories and arise from a study of type classes in programming languages, as well as comprehension schemata in categories. We introduce two langua ..."
Abstract
 Add to MetaCart
We investigate the proof structure and models of theories of classes, where classes are `collections ' of entities. The theories are weaker than set theories and arise from a study of type classes in programming languages, as well as comprehension schemata in categories. We introduce two languages of proofs, one a simple type theory and the other involving proof environments for storing and retrieving proofs. The relationship between these languages is defined in terms of a normalisation result for proofs. We use this result to define a categorical semantics for classes and establish its coherence. Finally, we show how the formal systems relate to type classes in programming languages. 1 Introduction The classes of the title are collections of entities. We choose this term as more neutral than sets, as we have a precise idea of the rather primitive theory we wish to explore which is quite distant from a set theory. The theory focuses on the extent (or extension or abstraction) or, as...
Part II Local Realizability Toposes and a Modal Logic for
"... 5.1 Definition and Examples 5.1.1 Definition and Definability Results A tripos is a weak tripos with disjunction which has a (weak) generic object. Explicitly we define: ..."
Abstract
 Add to MetaCart
5.1 Definition and Examples 5.1.1 Definition and Definability Results A tripos is a weak tripos with disjunction which has a (weak) generic object. Explicitly we define: