## Data Categories (1996)

Venue: | Computing: The Australasian Theory Symposium Proceedings |

Citations: | 7 - 5 self |

### BibTeX

@INPROCEEDINGS{Jay96datacategories,

author = {C. Barry Jay},

title = {Data Categories},

booktitle = {Computing: The Australasian Theory Symposium Proceedings},

year = {1996},

pages = {21--28}

}

### OpenURL

### Abstract

Data categories and functors, and the strong natural transformations between them provide a universe in which to model parametric polymorphism. Data functors are distinguished by being decomposable into shape and data, i.e. they represent types that store data. Every strong transformation between two such is given by a uniform algorithm, and so may represent a polymorphic term. The data functors are closed under composition, finite products and sums, exponentiation by an object, final co-algebras and initial algebras. For any two such, the collection of strong natural transformations between them is representable by an object. The covariant type system supports parametric polymorphism on data types, and can be modelled in a data category. Since the category of sets is a data category, it follows that parametric polymorphism can have a set-theoretic model. Keywords data categories covariance parametric polymorphism. 1 Introduction This paper introduces data functors, the data categor...

### Citations

184 |
The category-theoretic solution of recursive domain equations
- Smyth, Plotkin
- 1982
(Show Context)
Citation Context ... exponentials. Data categories are defined to provide a setting for the study of data functors. Examples of data categories include Sets, Pos ! (the category of bottomless, !-complete partial orders) =-=[10]-=- and Eff , the effective topos [4]. To the locos structure (lextensive categories with list objects) used to model shapely type constructors we must add cartesian closure for the higher-order structur... |

100 |
Introduction to extensive and distributive categories
- Carboni, Lack, et al.
- 1993
(Show Context)
Citation Context ... all undefined list notation can be found in [7]. Typical examples of cartesian closed locoses are Sets, toposes that have list objects, such as Eff , and Pos ! . A locos [3] is an extensive category =-=[2]-=- with all finite limits, and list objects, defined using initial algebras for linear polynomial functors, e.g. FX = 1 +A \Theta X . The list functor L : D!D is an example of a shapely functor. That is... |

91 |
The effective topos
- Hyland
- 1981
(Show Context)
Citation Context ...defined to provide a setting for the study of data functors. Examples of data categories include Sets, Pos ! (the category of bottomless, !-complete partial orders) [10] and Eff , the effective topos =-=[4]-=-. To the locos structure (lextensive categories with list objects) used to model shapely type constructors we must add cartesian closure for the higher-order structure. The bulk of the paper is devote... |

67 | A semantics for shape
- Jay
- 1995
(Show Context)
Citation Context ...coses and shape theory, and develops the additional logical power derived from the interaction of cartesian closure with finite limits. Further details and all undefined list notation can be found in =-=[7]-=-. Typical examples of cartesian closed locoses are Sets, toposes that have list objects, such as Eff , and Pos ! . A locos [3] is an extensive category [2] with all finite limits, and list objects, de... |

51 |
Polymorphism is Set Theoretic, constructively
- Pitts
- 1987
(Show Context)
Citation Context ...t). Since the category of sets is a data category, it follows that we have constructed a set-theoretic model of polymorphism, the first such result of this kind. Previous models of polymorphism, e.g. =-=[8]-=- have ingeniously built computational concepts into the structure of the semantics, at the cost of greater complexity, and reduced explanatory power. The current approach captures the uniformity in a ... |

51 |
Polymorphism is not set-theoretic
- Reynolds
- 1984
(Show Context)
Citation Context ...naware of any adequate answer. Such difficulties underly one of the fundamental results of the semantics of polymorphism: that the second-order polymorphic lambda-calculus has no set-theoretic models =-=[9]-=-. This work modifies the question to ask: which functors represent data types? The answer is (of course) the data functors. There are enough of them to model a generous class of data types, and yet th... |

32 |
Connected limits, familial representability and Artin gluing
- Carboni, Johnstone
- 1995
(Show Context)
Citation Context ...dent sum: \Sigma s:F1 A a(s) where a(s) is the domain of the partial function data 1 (s). When the base category is Sets then the unary data functors are exactly the familially representable functors =-=[1]-=- since the family of shapes yields a family of representable functors. Since cartesian transformations compose, it follows that any functor cartesian over lists is also a unary data functor with objec... |

16 |
List-arithmetic distributive categories: Locoi
- Cockett
- 1990
(Show Context)
Citation Context ...e limits. Further details and all undefined list notation can be found in [7]. Typical examples of cartesian closed locoses are Sets, toposes that have list objects, such as Eff , and Pos ! . A locos =-=[3]-=- is an extensive category [2] with all finite limits, and list objects, defined using initial algebras for linear polynomial functors, e.g. FX = 1 +A \Theta X . The list functor L : D!D is an example ... |

3 | Covariant types
- Jay
- 1995
(Show Context)
Citation Context ...nstructions desired of data types. Finally, the data functors are used to construct semantics for a polymorphic type system, namely the covariant type system introduced in the companion paper to this =-=[6]-=-. Covariant types correspond to a subsystem of the second-order polymorphic lambdacalculus, which is strong enough to model the usual polymorphism of inductive types, such as lists and trees (though s... |

1 | Finite objects in a locos
- Jay
- 1994
(Show Context)
Citation Context ... of f defines it uniquely. Since ' is a monomorphism, this shows that there is exactly one co-algebra homomorphism X!P 1 . 2 The status of initial algebras for P+ is not yet clear, unless P is finite =-=[5]-=-. Then P+ is cartesian over lists and its initial algebra can be constructed using existing techniques [7]. Consequently, we will find it necessary below to assume their existence. 4 Unary data functo... |