Basic Category Theory (OPLSS 2016)
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
Introduction
Pr´e-Publica¸c~oesdo Departamento de Matem´atica Universidade de Coimbra Preprint Number 19{32 CATEGORICAL ASPECTS OF CONGRUENCE DISTRIBUTIVITY MARINO GRAN, DIANA RODELO AND IDRISS TCHOFFO NGUEFEU Abstract: We give new characterisations of regular Mal'tsev categories with dis- tributive lattice of equivalence relations through variations of the so-called Tri- angular Lemma and Trapezoid Lemma in universal algebra. We then give new characterisations of equivalence distributive Goursat categories (which extend 3- permutable varieties) through variations of the Triangular and Trapezoid Lemmas involving reflexive and positive (compatible) relations. Keywords: Mal'tsev categories, Goursat categories, congruence modular varieties, congruence distributive varieties, Shifting Lemma, Triangular Lemma, Trapezoid Lemma. Math. Subject Classification (2010): 08C05, 08B05, 08A30, 08B10, 18C05, 18B99, 18E10. Introduction Regular Mal'tsev categories [7] extend 2-permutable varieties of univer- sal algebras, also including many examples which are not necessarily vari- etal, such as topological groups, compact groups, torsion-free groups and C∗-algebras, for instance. These categories have the property that any pair of (internal) equivalence relations R and S on the same object permute: RS = SR (see [6], for instance, and the references therein). It is well known that regular Mal'tsev categories have the property that the lattice of equiva- lence relations on any object is modular, so that they satisfy (the categorical version of) Gumm's Shifting Lemma [16]. More generally, this is the case for Goursat categories [8], which are those regular categories for which the composition of equivalence relations on the same object is 3-permutable: RSR = SRS. In [13] we proved that, for a regular category, the property of being a Mal'tsev category, or of being a Goursat category, can be both characterised Received 23rd September 2019. -
Causal Commutative Arrows Revisited
Causal Commutative Arrows Revisited Jeremy Yallop Hai Liu University of Cambridge, UK Intel Labs, USA [email protected] [email protected] Abstract init which construct terms of an overloaded type arr. Most of the Causal commutative arrows (CCA) extend arrows with additional code listings in this paper uses these combinators, which are more constructs and laws that make them suitable for modelling domains convenient for defining instances, in place of the notation; we refer such as functional reactive programming, differential equations and the reader to Paterson (2001) for the details of the desugaring. synchronous dataflow. Earlier work has revealed that a syntactic Unfortunately, speed does not always follow succinctness. Al- transformation of CCA computations into normal form can result in though arrows in poetry are a byword for swiftness, arrows in pro- significant performance improvements, sometimes increasing the grams can introduce significant overhead. Continuing with the ex- speed of programs by orders of magnitude. In this work we refor- ample above, in order to run exp, we must instantiate the abstract mulate the normalization as a type class instance and derive op- arrow with a concrete implementation, such as the causal stream timized observation functions via a specialization to stream trans- transformer SF (Liu et al. 2009) that forms the basis of signal func- formers to demonstrate that the same dramatic improvements can tions in the Yampa domain-specific language for functional reactive be achieved without leaving the language. programming (Hudak et al. 2003): newtype SF a b = SF {unSF :: a → (b, SF a b)} Categories and Subject Descriptors D.1.1 [Programming tech- niques]: Applicative (Functional) Programming (The accompanying instances for SF , which define the arrow operators, appear on page 6.) Keywords arrows, stream transformers, optimization, equational Instantiating exp with SF brings an unpleasant surprise: the reasoning, type classes program runs orders of magnitude slower than an equivalent pro- gram that does not use arrows. -
Geometric Modality and Weak Exponentials
Geometric Modality and Weak Exponentials Amirhossein Akbar Tabatabai ∗ Institute of Mathematics Academy of Sciences of the Czech Republic [email protected] Abstract The intuitionistic implication and hence the notion of function space in constructive disciplines is both non-geometric and impred- icative. In this paper we try to solve both of these problems by first introducing weak exponential objects as a formalization for predica- tive function spaces and then by proposing modal spaces as a way to introduce a natural family of geometric predicative implications based on the interplay between the concepts of time and space. This combination then leads to a brand new family of modal propositional logics with predicative implications and then to topological semantics for these logics and some weak modal and sub-intuitionistic logics, as well. Finally, we will lift these notions and the corresponding relations to a higher and more structured level of modal topoi and modal type theory. 1 Introduction Intuitionistic logic appears in different many branches of mathematics with arXiv:1711.01736v1 [math.LO] 6 Nov 2017 many different and interesting incarnations. In geometrical world it plays the role of the language of a topological space via topological semantics and in a higher and more structured level, it becomes the internal logic of any elementary topoi. On the other hand and in the theory of computations, the intuitionistic logic shows its computational aspects as a method to describe the behavior of computations using realizability interpretations and in cate- gory theory it becomes the syntax of the very central class of Cartesian closed categories. -
On the Constructive Elementary Theory of the Category of Sets
On the Constructive Elementary Theory of the Category of Sets Aruchchunan Surendran Ludwig-Maximilians-University Supervision: Dr. I. Petrakis August 14, 2019 1 Contents 1 Introduction 2 2 Elements of basic Category Theory 3 2.1 The category Set ................................3 2.2 Basic definitions . .4 2.3 Basic properties of Set .............................6 2.3.1 Epis and monos . .6 2.3.2 Elements as arrows . .8 2.3.3 Binary relations as monic arrows . .9 2.3.4 Coequalizers as quotient sets . 10 2.4 Membership of elements . 12 2.5 Partial and total arrows . 14 2.6 Cartesian closed categories (CCC) . 16 2.6.1 Products of objects . 16 2.6.2 Application: λ-Calculus . 18 2.6.3 Exponentials . 21 3 Constructive Elementary Theory of the Category of Sets (CETCS) 26 3.1 Constructivism . 26 3.2 Axioms of ETCS . 27 3.3 Axioms of CETCS . 28 3.4 Π-Axiom . 29 3.5 Set-theoretic consequences . 32 3.5.1 Quotient Sets . 32 3.5.2 Induction . 34 3.5.3 Constructing new relations with logical operations . 35 3.6 Correspondence to standard categorical formulations . 42 1 1 Introduction The Elementary Theory of the Category of Sets (ETCS) was first introduced by William Lawvere in [4] in 1964 to give an axiomatization of sets. The goal of this thesis is to describe the Constructive Elementary Theory of the Category of Sets (CETCS), following its presentation by Erik Palmgren in [2]. In chapter 2. we discuss basic elements of Category Theory. Category Theory was first formulated in the year 1945 by Eilenberg and Mac Lane in their paper \General theory of natural equivalences" and is the study of generalized functions, called arrows, in an abstract algebra. -
The Category of Sheaves Is a Topos Part 2
The category of sheaves is a topos part 2 Patrick Elliott Recall from the last talk that for a small category C, the category PSh(C) of presheaves on C is an elementary topos. Explicitly, PSh(C) has the following structure: • Given two presheaves F and G on C, the exponential GF is the presheaf defined on objects C 2 obC by F G (C) = Hom(hC × F; G); where hC = Hom(−;C) is the representable functor associated to C, and the product × is defined object-wise. • Writing 1 for the constant presheaf of the one object set, the subobject classifier true : 1 ! Ω in PSh(C) is defined on objects by Ω(C) := fS j S is a sieve on C in Cg; and trueC : ∗ ! Ω(C) sends ∗ to the maximal sieve t(C). The goal of this talk is to refine this structure to show that the category Shτ (C) of sheaves on a site (C; τ) is also an elementary topos. To do this we must make use of the sheafification functor defined at the end of the first talk: Theorem 0.1. The inclusion functor i : Shτ (C) ! PSh(C) has a left adjoint a : PSh(C) ! Shτ (C); called sheafification, or the associated sheaf functor. Moreover, this functor commutes with finite limits. Explicitly, a(F) = (F +)+, where + F (C) := colimS2τ(C)Match(S; F); where Match(S; F) is the set of matching families for the cover S of C, and the colimit is taken over all covering sieves of C, ordered by reverse inclusion. -
An Exploration of the Effects of Enhanced Compiler Error Messages for Computer Programming Novices
Technological University Dublin ARROW@TU Dublin Theses LTTC Programme Outputs 2015-11 An Exploration Of The Effects Of Enhanced Compiler Error Messages For Computer Programming Novices Brett A. Becker Technological University Dublin Follow this and additional works at: https://arrow.tudublin.ie/ltcdis Part of the Computer and Systems Architecture Commons, and the Educational Methods Commons Recommended Citation Becker, B. (2015) An exploration of the effects of enhanced compiler error messages for computer programming novices. Thesis submitted to Technologicl University Dublin in part fulfilment of the requirements for the award of Masters (M.A.) in Higher Education, November 2015. This Theses, Masters is brought to you for free and open access by the LTTC Programme Outputs at ARROW@TU Dublin. It has been accepted for inclusion in Theses by an authorized administrator of ARROW@TU Dublin. For more information, please contact [email protected], [email protected]. This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 4.0 License An Exploration of the Effects of Enhanced Compiler Error Messages for Computer Programming Novices A thesis submitted to Dublin Institute of Technology in part fulfilment of the requirements for the award of Masters (M.A.) in Higher Education by Brett A. Becker November 2015 Supervisor: Dr Claire McDonnell Learning Teaching and Technology Centre, Dublin Institute of Technology Declaration I certify that this thesis which I now submit for examination for the award of Masters (M.A.) in Higher Education is entirely my own work and has not been taken from the work of others, save and to the extent that such work has been cited and acknowledged within the text of my own work. -
Directing Javascript with Arrows
Directing JavaScript with Arrows Khoo Yit Phang Michael Hicks Jeffrey S. Foster Vibha Sazawal University of Maryland, College Park {khooyp,mwh,jfoster,vibha}@cs.umd.edu Abstract callback with a (short) timeout. Unfortunately, this style of event- JavaScript programmers make extensive use of event-driven pro- driven programming is tedious, error-prone, and hampers reuse. gramming to help build responsive web applications. However, The callback sequencing code is strewn throughout the program, standard approaches to sequencing events are messy, and often and very often each callback must hard-code the names of the next lead to code that is difficult to understand and maintain. We have events and callbacks in the chain. found that arrows, a generalization of monads, are an elegant solu- To combat this problem, many researchers and practitioners tion to this problem. Arrows allow us to easily write asynchronous have developed libraries to ease the construction of rich and highly programs in small, modular units of code, and flexibly compose interactive web applications. Examples include jQuery (jquery. them in many different ways, while nicely abstracting the details of com), Prototype (prototypejs.org), YUI (developer.yahoo. asynchronous program composition. In this paper, we present Ar- com/yui), MochiKit (mochikit.com), and Dojo (dojotoolkit. rowlets, a new JavaScript library that offers arrows to the everyday org). These libraries generally provide high-level APIs for com- JavaScript programmer. We show how to use Arrowlets to construct mon features, e.g., drag-and-drop, animation, and network resource a variety of state machines, including state machines that branch loading, as well as to handle API differences between browsers. -
The Glasgow Haskell Compiler User's Guide, Version 4.08
The Glasgow Haskell Compiler User's Guide, Version 4.08 The GHC Team The Glasgow Haskell Compiler User's Guide, Version 4.08 by The GHC Team Table of Contents The Glasgow Haskell Compiler License ........................................................................................... 9 1. Introduction to GHC ....................................................................................................................10 1.1. The (batch) compilation system components.....................................................................10 1.2. What really happens when I “compile” a Haskell program? .............................................11 1.3. Meta-information: Web sites, mailing lists, etc. ................................................................11 1.4. GHC version numbering policy .........................................................................................12 1.5. Release notes for version 4.08 (July 2000) ........................................................................13 1.5.1. User-visible compiler changes...............................................................................13 1.5.2. User-visible library changes ..................................................................................14 1.5.3. Internal changes.....................................................................................................14 2. Installing from binary distributions............................................................................................16 2.1. Installing on Unix-a-likes...................................................................................................16 -
SOME USEFUL STRUCTURES for CATEGORICAL APPROACH for PROGRAM BEHAVIOR in Computer Science, Where We Often Use More Complex Structures Not Expressible by Sets
JIOS, VOL. 35, NO. 1 (2011) SUBMITTED 02/11; ACCEPTED 03/11 UDC 004.423.45 [ SomeSome useful Useful structures Structures for categorical for Categorical approach Approach for program for Programbehavior Behavior Viliam Slodicákˇ [email protected] Department of Computers and Informatics Faculty of Electrical Engineering and Informatics Technical university of Košice Letná 9, 042 00 Košice Slovak Republic Abstract Using of category theory in computer science has extremely grown in the last decade. Categories allow us to express mathematical structures in unified way. Algebras are used for constructing basic structures used in computer programs. A program can be considered as an element of the initial algebra arising from the used programming language. In our contribution we formulate two ways of expressing algebras in categories. We also construct the codomain functor from the arrow category of algebras into the base category of sets which objects are also the carrier-sets of the algebras. This functor expresses the relation between algebras and carrier-sets. Keywords: Algebra, arrow category, monad, Kleisli category, codomain functor 1. Introduction Knowing and proving of the expected behavior of complex program systems is very important and actual rôle. It carries the time and cost savings: in mathematics [8] or in practical applications of economical character. The aim of programming is to construct such correct programs and program systems that during their execution provide expected behavior [7]. A program can be considered as an element of the initial algebra arising from the used programming language [14]. Algebraic structures and number systems are widely used in computer science. -
The Bluej Environment Reference Manual
The BlueJ Environment Reference Manual Version 2.0 for BlueJ Version 2.0 Kasper Fisker Michael Kölling Mærsk Mc-Kinney Moller Institute University of Southern Denmark HOW DO I ... ? – INTRODUCTION ........................................................................................................ 1 ABOUT THIS DOCUMENT................................................................................................................................. 1 RELATED DOCUMENTS.................................................................................................................................... 1 REPORT AN ERROR.......................................................................................................................................... 1 USING THE CONTEXT MENU........................................................................................................................... 1 1 PROJECTS.......................................................................................................................................... 2 1.1 CREATE A NEW PROJECT................................................................................................................... 2 1.2 OPEN A PROJECT ............................................................................................................................... 2 1.3 FIND OUT WHAT A PROJECT DOES .................................................................................................... 2 1.4 COPY A PROJECT .............................................................................................................................. -
Categories for Me, and You?
Categories for Me, and You?∗ Cl´ement Aubert† October 16, 2019 arXiv:1910.05172v2 [math.CT] 15 Oct 2019 ∗The title echoes the notes of Olivier Laurent, available at https://perso.ens-lyon.fr/olivier.laurent/categories.pdf. †e-mail: [email protected]. Some of this work was done when I was sup- ported by the NSF grant 1420175 and collaborating with Patricia Johann, http://www.cs.appstate.edu/~johannp/. This result is folklore, which is a technical term for a method of publication in category theory. It means that someone sketched it on the back of an envelope, mimeographed it (whatever that means) and showed it to three people in a seminar in Chicago in 1973, except that the only evidence that we have of these events is a comment that was overheard in another seminar at Columbia in 1976. Nevertheless, if some younger person is so presumptuous as to write out a proper proof and attempt to publish it, they will get shot down in flames. Paul Taylor 2 Contents 1. On Categories, Functors and Natural Transformations 6 1.1. BasicDefinitions ................................ 6 1.2. Properties of Morphisms, Objects, Functors, and Categories . .. .. 7 1.3. Constructions over Categories and Functors . ......... 15 2. On Fibrations 18 3. On Slice Categories 21 3.1. PreliminariesonSlices . .... 21 3.2. CartesianStructure. 24 4. On Monads, Kleisli Category and Eilenberg–Moore Category 29 4.1. Monads ...................................... 29 4.2. KleisliCategories . .. .. .. .. .. .. .. .. 30 4.3. Eilenberg–Moore Categories . ..... 31 Bibliography 41 A. Cheat Sheets 43 A.1. CartesianStructure. 43 A.2.MonadicStructure ............................... 44 3 Disclaimers Purpose Those notes are an expansion of a document whose first purpose was to remind myself the following two equations:1 Mono = injective = faithful Epi = surjective = full I am not an expert in category theory, and those notes should not be trusted2. -
A Profunctorial Scott Semantics Zeinab Galal Université De Paris, IRIF, CNRS, Paris, France [email protected]
A Profunctorial Scott Semantics Zeinab Galal Université de Paris, IRIF, CNRS, Paris, France [email protected] Abstract In this paper, we study the bicategory of profunctors with the free finite coproduct pseudo-comonad and show that it constitutes a model of linear logic that generalizes the Scott model. We formalize the connection between the two models as a change of base for enriched categories which induces a pseudo-functor that preserves all the linear logic structure. We prove that morphisms in the co-Kleisli bicategory correspond to the concept of strongly finitary functors (sifted colimits preserving functors) between presheaf categories. We further show that this model provides solutions of recursive type equations which provides 2-dimensional models of the pure lambda calculus and we also exhibit a fixed point operator on terms. 2012 ACM Subject Classification Theory of computation → Linear logic; Theory of computation → Categorical semantics Keywords and phrases Linear Logic, Scott Semantics, Profunctors Digital Object Identifier 10.4230/LIPIcs.FSCD.2020.16 Acknowledgements I thank Thomas Ehrhard, Marcelo Fiore, Chaitanya Leena Subramaniam and Christine Tasson for helpful discussions on this article and the referees for their valuable feedback. 1 Introduction 1.1 Scott semantics and linear logic Domain theory provides a mathematical structure to study computability with a notion of approximation of information. The elements of a domain represent partial stages of computation and the order relation represents increasing computational information. Among the desired properties of the interpretation of a program are monotonicity and continuity, i.e. the more a function has information on its input, the more it will provide information on its output and any finite part of the output can be attained through a finite computation.