Arxiv:2010.05167V1 [Cs.PL] 11 Oct 2020

Total Page:16

File Type:pdf, Size:1020Kb

Arxiv:2010.05167V1 [Cs.PL] 11 Oct 2020 A Categorical Programming Language Tatsuya Hagino arXiv:2010.05167v1 [cs.PL] 11 Oct 2020 Doctor of Philosophy University of Edinburgh 1987 Author’s current address: Tatsuya Hagino Faculty of Environment and Information Studies Keio University Endoh 5322, Fujisawa city, Kanagawa Japan 252-0882 E-mail: [email protected] Abstract A theory of data types and a programming language based on category theory are presented. Data types play a crucial role in programming. They enable us to write programs easily and elegantly. Various programming languages have been developed, each of which may use different kinds of data types. Therefore, it becomes important to organize data types systematically so that we can understand the relationship between one data type and another and investigate future directions which lead us to discover exciting new data types. There have been several approaches to systematically organize data types: alge- braic specification methods using algebras, domain theory using complete par- tially ordered sets and type theory using the connection between logics and data types. Here, we use category theory. Category theory has proved to be remark- ably good at revealing the nature of mathematical objects, and we use it to understand the true nature of data types in programming. We organize data types under a new categorical notion of F,G-dialgebras which is an extension of the notion of adjunctions as well as that of T -algebras. T - algebras are also used in domain theory, but while domain theory needs some primitive data types, like products, to start with, we do not need any. Products, coproducts and exponentiations (i.e. function spaces) are defined exactly like in category theory using adjunctions. F,G-dialgebras also enable us to define the natural number object, the object for finite lists and other familiar data types in programming. Furthermore, their symmetry allows us to have the dual of the natural number object and the object for infinite lists (or lazy lists). We also introduce a functional programming language in a categorical style. It has no primitive data types nor primitive control structures. Data types are declared using F,G-dialgebras and each data type is associated with its own control structure. For example, natural numbers are associated with primitive recursion. We define the meaning of the language operationally by giving a set of reduction rules. We also prove that any computation in this programming language terminates using Tait’s computability method. ii A specification language to describe categories is also included. It is used to give a formal semantics to F,G-dialgebras as well as to give a basis to the categorical programming language we introduce. iii Acknowledgements The greatest thanks go to Professor Rod Burstall who, first of all, accepted me as a Ph. D. student, then, supervised me during my Ph. D. study and, further, gave me an opportunity to continue working in Edinburgh. He gave me not only useful advices but also much-needed mental support. I would also thank to his wife, Sissi Burstall, who invited me to their house often and made my stay in Edinburgh very pleasant. I am also grateful to Professor Reiji Nakajima for having encouraged me to come to Edinburgh and to Professor Heisuke Hironaka for having helped me to solve the financial problem for studying in Edinburgh. Many lectures I attended in the first year enlightened me a lot: domain theory, operational semantics, denotational semantics, algebraic specification, category theory, and so on. I did not know what category theory really is before I came to Edinburgh. Thanks to Andrzej Tarlecki, Edmund Robinson and John Cartmell for having helped me to overcome the initial difficulty of category theory. John Cartmell also helped me a lot through discussions in the early stage of the thesis. I am also in debt to Furio Honsell who introduced me to Tait’s method for proving normalization theorems of lambda calculi when I stuck in the normalization proof of CPL. Many other people in Edinburgh helped me with their comments and through discussions. I would especially like to thank Bob McKay and Paul Taylor for reading the early drafts and discovering some disastrous mistakes. This thesis is written using LATEX on a Sun workstation and printed by an Apple LaserWriter. I would like to thank George Cleland and Hugh Stabler for provid- ing wonderful computing facilities and software to Laboratory of Foundation of Computer Science. My Ph. D. study at the University of Edinburgh has been funded by the Educa- tional Project for Japanese Mathematical Scientists, Harvard University, by the Overseas Research Students Award and by the Science and Engineering Research Council Research Fellowship. iv Contents 1 Introduction 1 1.1 Backgrounds.............................. 2 1.1.1 Algebraic Specification Methods . 2 1.1.2 DomainTheory........................ 5 1.2 BasicCategoryTheory ........................ 7 1.3 DevelopmentofCategoricalDataTypes . 8 1.4 InThisThesis............................. 16 1.5 ComparisonwithOtherWorks. 17 2 Categorical Specification Language 19 2.1 AFunctorialCalculus......................... 21 2.2 Signatures of Categorical Specification Language . 30 2.3 Structures of Categorical Specification Language . 35 2.4 Functorial Calculus (revisit) . 37 2.5 Sentences and Satisfaction Relation of Categorical Specification Language ............................... 43 2.6 FreeCategories ............................ 45 3 Categorical Data Types 49 3.1 WhatareCategoricalDataTypes? . 49 3.2 DataType Declarations in Categorical DataTypes . 59 v 3.3 ExamplesofCategoricalDataTypes . 62 3.3.1 Terminal and Initial Objects . 63 3.3.2 ProductsandCoProducts . 64 3.3.3 Exponentials ......................... 65 3.3.4 NaturalNumberObject . 67 3.3.5 Lists.............................. 70 3.3.6 Final Co-Algebras (Infinite Lists and Co-Natural Number Object) ............................ 71 3.3.7 Automata ........................... 76 3.3.8 ObscureCategoricalDataTypes . 78 3.4 SemanticsofCategoricalDataTypes . 79 3.5 Existence of Left and Right ..................... 83 4 Computation and Categorical Data Types 88 4.1 Reduction Rules for Categorical Programming Language . 89 4.2 AnExampleofusingReductionRules . 103 4.3 Well-Definedness and Normalization Theorem for Reduction Rules 108 4.4 PropertiesofComputableObjects. 122 4.5 Reduction Rules for Full Evaluation . 127 5 Application of Categorical Data Types 130 5.1 An implementation of Categorical Programming Language . 130 5.2 TypedLambdaCalculus . 136 5.3 MLandCategoricalProgrammingLanguage . 141 Conclusions 145 Bibliography 149 vi Chapter 1 Introduction This is an exploration of data types through category theory. It is an attempt to achieve better understanding of data types, their uniform classification, and discovery of a new world of data types. Data types have been with us since the very first programming languages. Even some machine languages now have some concept of data types, but early programming languages had only a fixed number of data types, like integers, reals and strings, and/or a fixed number of data type constructors, like array constructors and record constructors. When we gradually realized how important data types were, programming languages started having richer and richer data types. A number of programming languages now allow us to define our own data types. Some might even say that the richer they are, the better the programming languages are. Programming languages can be classified by the way how they handle data types. There is no question about the importance of data types. Much research in this area has produced various kinds of data types, so varied that one cannot capture them all. We now need to systematically organize data types. We want to know the connection between one data type and another. We want to know the reason why those data types are with us and while some other data types are not. After getting a clear view of data types, we might find the future direction to discover other important data types. There have been already some attempts to organize data types. We can name some of the important ones: Domain theory is one, algebraic specification is an- other and type theory is one where a lot of research is going on at the moment. In this thesis, we will present yet another attempt to organize data types. We do so by using category theory. We call our data types Categorical Data Types (or CDT for short). One might ask “Why category theory?” Category theory is known as highly 1 CHAPTER 1. INTRODUCTION 2 abstract mathematics. Some call it abstract nonsense. It chases abstract arrows and diagrams, proves nothing but about those arrows and diagrams, rarely talks about what arrows are for and often concepts go beyond one’s imagination. How- ever, when this ‘abstract nonsense’ works, it is like magic. One may discover a simple theorem actually means very deep things and some concepts beautifully unify and connect things which are unrelated before. In ordinary mathematics, whether we are aware or not, we are in the world of set theory. Mathematics has been so well developed with set theory that we can hardly do anything without it. Therefore, it is very natural that semantics of programming languages is generally based on set theory. Note that it is often said that most of programming languages do not have set theoretic semantics and, therefore, domain theory has been developed, but this does not contradict with “semantics based on set theory”, because domain theory itself is based on set theory. A domain is a set with certain properties. Set theory is a powerful tool, but sometimes this power disfigures beautiful objects so that we cannot directly see their natural properties. For example, in set theory it is not easy to see either the duality between injective and surjective functions or the duality between cartesian products and disjoint sums. It is in category theory that these dualities come out clearly. Category theory concentrates on the outer behaviour of objects. It does not care what is in an object, whereas set theory is all about what is in an object.
Recommended publications
  • The Petit Topos of Globular Sets
    Journal of Pure and Applied Algebra 154 (2000) 299–315 www.elsevier.com/locate/jpaa View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by Elsevier - Publisher Connector The petit topos of globular sets Ross Street ∗ Macquarie University, N. S. W. 2109, Australia Communicated by M. Tierney Dedicated to Bill Lawvere Abstract There are now several deÿnitions of weak !-category [1,2,5,19]. What is pleasing is that they are not achieved by ad hoc combinatorics. In particular, the theory of higher operads which underlies Michael Batanin’s deÿnition is based on globular sets. The purpose of this paper is to show that many of the concepts of [2] (also see [17]) arise in the natural development of category theory internal to the petit 1 topos Glob of globular sets. For example, higher spans turn out to be internal sets, and, in a sense, trees turn out to be internal natural numbers. c 2000 Elsevier Science B.V. All rights reserved. MSC: 18D05 1. Globular objects and !-categories A globular set is an inÿnite-dimensional graph. To formalize this, let G denote the category whose objects are natural numbers and whose only non-identity arrows are m;m : m → n for all m¡n ∗ Tel.: +61-2-9850-8921; fax: 61-2-9850-8114. E-mail address: [email protected] (R. Street). 1 The distinction between toposes that are “space like” (or petit) and those which are “category-of-space like” (or gros) was investigated by Lawvere [9,10]. The gros topos of re exive globular sets has been studied extensively by Michael Roy [12].
    [Show full text]
  • Bernays–G Odel Type Theory
    Journal of Pure and Applied Algebra 178 (2003) 1–23 www.elsevier.com/locate/jpaa Bernays–G&odel type theory Carsten Butz∗ Department of Mathematics and Statistics, Burnside Hall, McGill University, 805 Sherbrooke Street West, Montreal, Que., Canada H3A 2K6 Received 21 November 1999; received in revised form 3 April 2001 Communicated by P. Johnstone Dedicated to Saunders Mac Lane, on the occasion of his 90th birthday Abstract We study the type-theoretical analogue of Bernays–G&odel set-theory and its models in cate- gories. We introduce the notion of small structure on a category, and if small structure satisÿes certain axioms we can think of the underlying category as a category of classes. Our axioms imply the existence of a co-variant powerset monad on the underlying category of classes, which sends a class to the class of its small subclasses. Simple ÿxed points of this and related monads are shown to be models of intuitionistic Zermelo–Fraenkel set-theory (IZF). c 2002 Published by Elsevier Science B.V. MSC: Primary: 03E70; secondary: 03C90; 03F55 0. Introduction The foundations of mathematics accepted by most working mathematicians is Zermelo–Fraenkel set-theory (ZF). The basic notion is that of a set, the abstract model of a collection. There are other closely related systems, like for example that of Bernays and G&odel (BG) based on the distinction between sets and classes: every set is a class, but the only elements of classes are sets. The theory (BG) axiomatizes which classes behave well, that is, are sets. In fact, the philosophy of Bernays–G&odel set-theory is that small classes behave well.
    [Show full text]
  • A CLASSICAL REALIZABILITY MODEL ARISING from a STABLE MODEL of UNTYPED LAMBDA CALCULUS Dedicated to Pierre-Louis Curien at the O
    Logical Methods in Computer Science Vol. 13(4:24)2017, pp. 1–17 Submitted Jul. 6, 2014 www.lmcs-online.org Published Dec. 7, 2017 A CLASSICAL REALIZABILITY MODEL ARISING FROM A STABLE MODEL OF UNTYPED LAMBDA CALCULUS THOMAS STREICHER Fachbereich 4 Mathematik TU Darmstadt, Schloßgartenstr. 7, D-64289, Germany e-mail address: [email protected] Abstract. In [SR98] it has been shown that λ-calculus with control can be interpreted in any domain D which is isomorphic to the domain of functions from D! to the 2-element (Sierpi´nski)lattice Σ. By a theorem of A. Pitts there exists a unique subset P of D such that f 2 P iff f(d~) = ? for all d~ 2 P !. The domain D gives rise to a realizability structure in the sense of [Kri11] where the set of proof-like terms is given by P . When working in Scott domains the ensuing realizability model coincides with the ground model Set but when taking D within coherence spaces we obtain a classical realizability model of set theory different from any forcing model. We will show that this model validates countable and dependent choice since an appropriate form of bar recursion is available in stable domains. Dedicated to Pierre-Louis Curien at the occasion of his 60th Birthday Introduction In the first decade of this millenium J.-L. Krivine has developed his theory of classical realizability, see e.g. [Kri09, Kri11], for higher order logic and set theory. Whereas intu- itionistic realizability is based on the notion of a partial combinatory algebra (pca) classical realizability is based on a notion of realizability algebra as defined in [Kri11].
    [Show full text]
  • Functorial Data Migration
    FUNCTORIAL DATA MIGRATION DAVID I. SPIVAK Abstract. In this paper we present a simple database definition language: that of categories and functors. A database schema is a category and a state is a set-valued functor. We show that morphisms of schemas induce three “data migration functors” that translate states from one schema to the other in canonical ways. Database states form a topos of which the classical “relational algebra” is a fragment. These ideas thus create a new denotational semantics for database theory. Contents 1. Introduction 1 2. The data migration functors 7 3. Updates and their local effects 21 4. Updates and their global effects 25 5. Databases and toposes 27 6. Future work 33 References 34 1. Introduction Database management is a huge industry, yet logical database design remains problematic. While the relational algebra is sufficient to understand single tables and operations that can be performed on them, it has no means to capture the structure of the database as a whole. The idea presented in this paper is that databases can be modeled by elementary category theory: a schema is a category C and database state on that schema is a functor C → Set (see Definition 1.1.1). This categorical understanding can be considered a new denotational semantics for databases. While there have been many “categorificiations” of databases in the past (e.g. [RW],[JRW],[PS],[Ber],[DK],[Dis],[GB]), none of them has been so simple as this one. The main contribution we offer here is that one should consider data columns as foreign keys to 1-column tables; in this way a schema is a category (or a pre- sentation thereof).
    [Show full text]
  • Category Theory: a Gentle Introduction
    Category Theory A Gentle Introduction Peter Smith University of Cambridge Version of January 29, 2018 c Peter Smith, 2018 This PDF is an early incomplete version of work still very much in progress. For the latest and most complete version of this Gentle Introduction and for related materials see the Category Theory page at the Logic Matters website. Corrections, please, to ps218 at cam dot ac dot uk. Contents Preface ix 1 The categorial imperative 1 1.1 Why category theory?1 1.2 From a bird's eye view2 1.3 Ascending to the categorial heights3 2 One structured family of structures 4 2.1 Groups4 2.2 Group homomorphisms and isomorphisms5 2.3 New groups from old8 2.4 `Identity up to isomorphism' 11 2.5 Groups and sets 13 2.6 An unresolved tension 16 3 Categories defined 17 3.1 The very idea of a category 17 3.2 Monoids and pre-ordered collections 20 3.3 Some rather sparse categories 21 3.4 More categories 23 3.5 The category of sets 24 3.6 Yet more examples 26 3.7 Diagrams 27 4 Categories beget categories 30 4.1 Duality 30 4.2 Subcategories, product and quotient categories 31 4.3 Arrow categories and slice categories 33 5 Kinds of arrows 37 5.1 Monomorphisms, epimorphisms 37 5.2 Inverses 39 5.3 Isomorphisms 42 5.4 Isomorphic objects 44 iii Contents 6 Initial and terminal objects 46 6.1 Initial and terminal objects, definitions and examples 47 6.2 Uniqueness up to unique isomorphism 48 6.3 Elements and generalized elements 49 7 Products introduced 51 7.1 Real pairs, virtual pairs 51 7.2 Pairing schemes 52 7.3 Binary products, categorially 56
    [Show full text]
  • Contexts, Bi-Heyting Algebras and a New Logic for Quantum Systems Oberseminar Theoretische Informatik FAU Erlangen 4
    Contexts, Bi-Heyting Algebras and a New Logic for Quantum Systems Oberseminar Theoretische Informatik FAU Erlangen 4. November 2014 Andreas D¨oring Theoretische Physik I, FAU Erlangen [email protected] Andreas D¨oring (Erlangen) Bi-Heyting algebras and quantum systems 1 / 49 \Never express yourself more clearly than you are able to think." Niels Bohr Andreas D¨oring (Erlangen) Bi-Heyting algebras and quantum systems 2 / 49 References This talk is based on AD,\Topos-based Logic for Quantum Systems and Bi-Heyting Algebras", to appear in Logic & Algebra in Quantum Computing, Lecture Notes in Logic, Association for Symbolic Logic in conjunction with Cambridge University Press (2012); [arXiv:1202.2750] Some good references on standard quantum logic are: G. Birkhoff, J. von Neumann, \The Logic of Quantum Mechanics", Annals of Mathematics 37, No. 4, 823{843 (1936). Varadarajan, Geometry of Quantum Theory, second ed., Springer (1985). M. Dalla Chiara, R. Giuntini, \Quantum Logics", in Handbook of Philosophical Logic, Kluwer (2002); [arXiv:quant-ph/0101028v2] Andreas D¨oring (Erlangen) Bi-Heyting algebras and quantum systems 3 / 49 Standard quantum logic Standard quantum logic Andreas D¨oring (Erlangen) Bi-Heyting algebras and quantum systems 4 / 49 Standard quantum logic Standard quantum logic Some basics of standard quantum logic: Birkhoff and von Neumann suggested to use the complete orthomodular lattice P(H) of projections on a separable, complex Hilbert space H as representatives of propositions. (Fine point: modular vs. orthomodular lattices.) The link between (pre-mathematical) propositions \A " ∆” and projections is provided by the spectral theorem. Pure quantum states j i (roughly) are models of this propositional logic, but only specific projections are assigned true or false: if P^ j i = j i, then the proposition represented by P^ is true in the state j i; if P^ j i = 0, then the proposition is false in the state j i.
    [Show full text]
  • Normalization by Gluing for Free 휆-Theories
    Normalization by gluing for free 휆-theories Jonathan Sterling* Bas Spitters† Carnegie Mellon University Aarhus University December 30, 2018 Abstract The connection between normalization by evaluation, logical predicates and semantic gluing constructions is a matter of folklore, worked out in varying degrees within the literature. In this note, we present an elementary version of the gluing technique which corresponds closely with both semantic normalization proofs and the syntactic normalization by evaluation We will expand in more detail the insight presented in Streicher’s short note [Stre- icher, 1998] and in Fiore [2002], giving some explicit constructions. We will be consid- ering the case of free 휆-theories generated from many-typed first-order signatures. 1 휆-signatures and 휆-theories Definition 1.1 (Arity). A simply-typed first-order arity for a set 푇 of atomic types is a pair 훼 ≡ (휎,⃗ 휏) of a list of types and a types. We write 푇† ≝ 푇⋆ × 푇 for the set of such arities. Definition 1.2 (Many-typed signature). Following Jacobs [1999], a many-typed signa- ture Σ ≡ (풰, 휕) is a set of atomic types 풰 together with an arity-indexed family of sets of operations 휕, taking each operation 휗 to 휕(휗) ∈ 풰†. More abstractly, the category Sig of such signatures arises as the pullback of the fundamental fibration along the arity endofunctor. 휕 Sig Set→ ⌟ 풰 cod Set Set (−)† *[email protected][email protected] 1 From a collection of atomic types 풰, we generate the type structure of the 휆-calculus as the least set 풰̃ closed under the following formation rules: 휏 ∈ 풰 휎 ∈ 풰̃ 휏 ∈ 풰̃ 휎 ∈ 풰̃ 휏 ∈ 풰̃ 휏 ∈ 풰̃ 휎 × 휏 ∈ 풰̃ 휎 → 휏 ∈ 풰̃ 1.1 The clone of a 휆-signature From a 휆-signature Σ we can freely generate a special family of sets CnΣ(Γ, 휏) called its ̃† clone, indexed in (Γ, 휏) ∈ 풰Σ ; simultaneously, we define the indexed set of substitu- ̃⋆ ̃⋆ tions SbΣ(Γ, Δ), indexed in (Γ, Δ) ∈ 풰Σ × 풰Σ .
    [Show full text]
  • The Space of Measurement Outcomes As a Spectrum for Non-Commutative Algebras
    The space of measurement outcomes as a spectrum for non-commutative algebras Bas Spitters∗ Radboud University Nijmegen Abstract Bohrification defines a locale of hidden variables internal in a topos. We find that externally this is the space of partial measurement outcomes. By considering the ::- sheafification, we obtain the space of measurement outcomes which coincides with the spectrum for commutative C*-algebras. 1 Introduction By combining Bohr’s philosophy of quantum mechanics, Connes’ non-commutative geom- etry [Con94], constructive Gelfand duality [BM00b, BM00a, Coq05, CS09] and inspiration from Doering and Isham’s spectral presheaf [DI08], we proposed Bohrification as a spatial quantum logic [HLS09a, HLS09b]. Given a C*-algebra A, modeling a quantum system, consider the poset of Bohr’s classical concepts C(A) := fC j C is a commutative C*-subalgebra of Ag: C In the functor topos Sets (A) we consider the Bohrification A: the trivial functor C 7! C. This is an internal C*-algebra of which we can compute the spectrum, an internal locale Σ in the topos SetsC(A). This locale, or its externalization, is our proposal for an intuitionistic quantum logic [HLS09a, HLS09b]. In the present paper we explore a possible refinement of this proposal motivated by what happens for commutative algebras and by questions about maximal subalgebras. In section 4 we compute the externalization of this locale. It is the space of partial measurement outcomes: the points are pairs of a C*-subalgebra together with a point of its spectrum. This construction raises two natural questions: • Can we restrict to the maximal commutative subalgebras, i.e.
    [Show full text]
  • Closed Set Logic in Categories
    +-'1^1h Closed Set Logic in Categories William James Department of Philosophy at The Universitv of Adelaicle August, 1996 Table of Contents Introduction 1 PART I: Preliminaries Chapter 1. Basic Category Theory 25 1. Categories and Morphisms 25 2. Yoneda 42 3. Adjoints . 44 Chapter 2. Basic Topos Theory 49 1. Toposes 49 2. Topos Logic 53 3. Image Factorisation 56 Chapter 3. The HA Dual 58 1. Languages, Logics and Dual Algebras 60 2. Paraconsistent Algebras 69 3. Intuitionism's Dual t.l 4. Individual Logics and Natural Duals 76 PART II: Categorial Semantics for Paraconsistent Logic Chapter 4. The Complement Classifier 80 1. The Classifier 83 2. Complement Classifler vs. Subobject Classifier 85 Chapter 5. The Quotient Object Classifier 88 1. Quotient Object Lattices 91 2. The Functor QUO 95 Chapter 6. A Functor Category r02 1. Component Algebras 106 2. Operator Arrows 110 PART III: Sheaf Concepts Chapter 7. Sheaves: a brief history of the structure 116 Chapter 8. Closed Set Sheaves I27 1. Presheaves on Categories 130 2. Pretopologies and Topologies for Categories 133 3. Subobject Classifiers in Sheaf Categories 740 4. Closed Set Sheaves r47 Chapter 9. Brouwerian Algebras in Closed Set Sheaves 150 1. Component Algebras of the Classifi.er Object 152 2. Component Algebras and Natural Transformations 155 Chapter 10. Grothendieck Toposes 159 1. Pretopologies and Sheaves revisited 160 2. Subobject Classifiers in Grothendieck Toposes 162 3. Brouwerian Algebras in the Classifier Object 777 Chapter 11. Covariant Logic Objects 176 1. A Paraconsistent Logic Object in a Covariant Functor Category 177 Chapter 12.
    [Show full text]
  • THE HETEROMORPHISM in CATEGORY THEORY Undergraduate Research Scholars by CHRISTIAN WILLIAMS Submitted to the Undergraduate Resea
    View metadata, citation and similar papers at core.ac.uk brought to you by CORE provided by Texas A&M Repository THE HETEROMORPHISM IN CATEGORY THEORY Undergraduate Research Scholars by CHRISTIAN WILLIAMS Submitted to the Undergraduate Research Scholars program Texas A&M University in partial fulfillment of the requirements for the designation as an UNDERGRADUATE RESEARCH SCHOLAR Approved by Research Advisor: Dr. Eric Rowell May 2017 Major: Mathematics ABSTRACT The Heteromorphism in Category Theory Christian Williams Department of Mathematics Texas A&M University Research Advisor: Dr. Eric Rowell Department of Mathematics Texas A&M University To many mathematicians, category theory is simply a very general, abstract language for the high-level organization of concepts. From this perspective, categories are nothing more than gossamer webs floating in the Platonic breeze, unconcerned with the trials and tribulations of concrete mathematics, only helpful when sheer complexity necessitates a transcendent viewpoint. This is why the subject is still largely unknown, unused, and unexplored by the mathematical community. Category theorists, of course, tell a different story. Most wholeheartedly agree that its potential to elucidate and unify mathematics is greatly underestimated. This is not a grand hope of an idealistic rebellion, but a deep intuition developed through devotion to a way of thought whose purity demands the most stringent justification, via absolute conceptual mediation instead of experience. The category is the pure abstraction from which there are only two paths to meaning- ful, concrete truth: the study of mathematics, and (mathematical) introspection. There is no fantasy world beyond mathematics, but we do have the crucial capacity to temporarily ii transcend our subjects.
    [Show full text]
  • A Natural Separation of Concerns
    A Natural Separation of Concerns Edward Morehouse∗ Tallinn University of Technology Abstract In this paper we present a 3-dimensional graphical calculus to rep- resent the hierarchy of morphisms (functors, transformations and mod- ifications) between 2-dimensional categories of globular shape. In this setting the property of naturality, which is conventionally expressed in terms of equations between component diagrams, can be represented di- rectly as the separation of the natural structure from the portion of a diagram preceding it in the composition order. From this we recover the component-based presentations of natural structures as projections using global elements, where their relations correspond to a literal shift of per- spective. We then augment the graphical calculus in order to represent and reason about functors between 2-dimensional categories that preserve their composition only up to a directed comparison structure. To illus- trate the utility of this graphical calculus we consider the examples of cones and limits in 2-categories, as well as the Gray tensor product of 2-categories. 1 Introduction In his essay, On the role of scientific thought, Edsger Dijkstra advocates for the concept of a “separation of concerns” as a cornerstone of scientific think- ing [Dij82]. The basic premise is that the things we strive to understand are often quite complex, and this complexity can easily overwhelm our abilities to reason about them. A useful method for coping with our limited capacities to reason about complex things is to identify attributes that are both tractable and independently meaningful, and to study them in their own right, while keeping in mind that our understanding of such attributes affords us only a partial understanding of the things from which they are derived.
    [Show full text]
  • An Introduction to Topos Theory
    An Introduction to Topos Theory Ryszard Paweł Kostecki Institute of Theoretical Physics, University of Warsaw, Hoża 69, 00-681 Warszawa, Poland email: ryszard.kostecki % fuw.edu.pl June 26, 2011 Abstract The purpose of this text is to equip the reader with an intuitive but precise understanding of elementary structures of category and topos theory. In order to achieve this goal, we provide a guided tour through category theory, leading to the definition of an elementary (Lawvere–Tierney) topos. Then we turn to the investigation of consequences of this definition. In particular, we analyse in op detail the topos Set2 , the internal structure of its subobject classifier and its variation over stages. Next we turn to the discussion of the interpretation of a logic and language in topos, viewed as a model of higher order intuitionistic multisort type theory, as well as the geometric perspective on a topos, viewed as a category of set-valued sheaves over base category equipped with a Grothendieck topology. This text is designed as an elementary introduction, written in a self-contained way, with no previous knowledge required. X ! B /& 1 m > A / Ω χ(m) [ draft version – under construction ] Motto: « Thinking is necessary in order to understand the empirically given, and concepts and “categories” are necessary as indispensable elements of thinking » A. Einstein, 1949, Reply to criticism, in: P.A. Schilpp (ed.), 1949, Albert Einstein: Philosopher–Scientist. Contents Introduction 3 1 Categories 6 2 Arrows and elements9 2.1 Basic types of arrows....................................... 9 2.2 Generalised elements....................................... 11 2.3 Basic types of diagrams ....................................
    [Show full text]