Applications of Categories in Computer Science: Geometric theories and databases

Domain theoretic understanding of databases as elements of powerdomains is modified to allow multisets of records instead of sets. This is related to geometric theories and classifying toposes, and it is shown that algebraic base domains lead to algebraic categories of models in two cases analogous to the lower (Hoare) powerdomain and Gunter’s mixed powerdomain. Terminology Throughout this paper, “domain” means algebraic poset – not necessarily with bottom, nor second countable. The information system theoretic account of algebraic posets fits very neatly with powerdomain constructions. Following Vickers [90], it may be that essentially the same methods work for continuous posets; but we defer treating those until we have a better understanding of the necessary generalizations to topos theory. More concretely, a domain is a preorder (information system) (D, ̇) of tokens, and associated with it are an algebraic poset pt D of points (ideals of D; one would normally think of pt D as the domain), and a frame ΩD of opens (upper closed subsets of D; ΩD is isomorphic to the Scott topology on pt D). “Topos” always means “Grothendieck topos”, and not “elementary topos”; morphisms between toposes are understood to be geometric morphisms. S, italicized, denotes the category of sets. We shall follow, usually without comment, the notation of Vickers [89], which can be taken as our standard reference for the topological and localic notions used here. * Department of Computing, Imperial College, London, England; email sjv@doc.ic.ac.uk VICKERS: GEOMETRIC THEORIES AND DATABASES 2 Acknowledgements It has taken me a long time to understand toposes well enough to be able to handle them at all mathematically. I think others will share my experience, for even now there is no introductory text that treats in depth the relation between toposes and geometric logic (as opposed to intuitionistic logic), this being the connection that is relevant to Grothendieck’s original intuition of a topos as a generalized topological space. My thanks are therefore due to all the people who have ever told me anything about toposes. I should like in particular to mention: Martin Hyland, for his unfailing helpfulness; Mike Fourman, for his clear talk (reported as Fourman and Vickers [85]) on classifying toposes; Samson Abramsky, Axel Poigné and Mike Smyth, whose participation in a reading group at Imperial in 1985 helped me gain a toehold of understanding of Johnstone [77]; and Peter Johnstone and other participants at the Durham Symposium for their advice on technical matters. I should also like to acknowledge the influence of Carl Gunter, whose elegant database account of powerdomains gave me both the intuitions (databases) and the mathematical context (generalized powerdomain theory) that I needed for a natural application of topos theory. The work was made possible by the financial support of the British Science and Engineering Research Council for two research projects at Imperial: Formal Methods for Declarative Languages, and Foundational Structures for Computer Science.