Abstract
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 inductionrecursion 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 inductiverecursive 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.
Original language | English |
---|---|
Title of host publication | 2013 28th annual IEEE/ACM symposium on logic in computer science (LICS) |
Place of Publication | New York |
Publisher | IEEE |
Pages | 243-252 |
Number of pages | 10 |
ISBN (Print) | 9781479904136 |
DOIs | |
Publication status | Published - 2013 |
Event | 2013 28th Annual IEEE/ACM Symposium on Logic in Computer Science (LICS) - New Orleans, United States Duration: 25 Jun 2013 → 28 Jun 2013 |
Conference
Conference | 2013 28th Annual IEEE/ACM Symposium on Logic in Computer Science (LICS) |
---|---|
Country/Territory | United States |
City | New Orleans |
Period | 25/06/13 → 28/06/13 |
Keywords
- fibred data types
- indexing
- set theory
- data structures