Algebraic set theory
Algebra of programming
A Finite Axiomatization of Inductive-Recursive Definitions
TLCA '99 Proceedings of the 4th International Conference on Typed Lambda Calculi and Applications
Journal of Functional Programming
Containers: constructing strictly positive types
Theoretical Computer Science - Applied semantics: Selected topics
Electronic Notes in Theoretical Computer Science (ENTCS)
LICS '09 Proceedings of the 2009 24th Annual IEEE Symposium on Logic In Computer Science
A formalisation of a dependently typed language as an inductive-recursive family
TYPES'06 Proceedings of the 2006 international conference on Types for proofs and programs
Proceedings of the 15th ACM SIGPLAN international conference on Functional programming
Proof-relevance of families of setoids and identity in type theory
Archive for Mathematical Logic
Hi-index | 0.00 |
Data types are undergoing a major leap forward in their sophistication driven by a conjunction of i) theoretical advances in the foundations of data types, and ii) requirements of programmers for ever more control of the data structures they work with. In this paper we develop a theory of indexed data types where, crucially, the indices are generated inductively at the same time as the data. In order to avoid commitment to any specific notion of indexing we take an axiomatic approach to such data types using fibrations - thus giving us a theory of what we call fibred data types. The genesis of these fibred data types can be traced within the literature, most notably to Dybjer and Setzer's introduction of the concept of induction-recursion. This paper, while drawing heavily on their seminal work for inspiration, gives a categorical reformulation of Dybjer and Setzer's original work which leads to a large number of extensions of induction-recursion. Concretely, the paper provides i) conceptual clarity as to what induction-recursion fundamentally is about, ii) greater expressiveness in allowing not just the inductive-recursive definition of families of sets, or even indexed families of sets, but rather the inductive-recursive definition of a whole host of other structures, iii) a semantics for induction-recursion based not on the specific model of families, but rather an axiomatic model based upon fibrations which therefore encompasses diverse structures (domain theoretic, realisability, games etc) arising in the semantics of programming languages, and iv) technical justification as to why these fibred data types exist using large cardinals from set theory.