Giter VIP home page Giter VIP logo

awesome-category-theory's Introduction

awesome-category-theory

A curated list of awesome Category Theory resources.

Table of contents

Archive

  • Functor theory - Explores the concept of exact categories and the theory of derived functors, building upon earlier work by Buchsbaum. Freyd investigates how properties and statements applicable to abelian groups can extend to arbitrary exact categories. Freyd aims to formalize this observation into a metatheorem, which would simplify categorical proofs and predict lemmas. Peter J. Freyd's dissertation, presented at Princeton University (1960)

  • Algebra valued functors in general and tensor products in particular - Discusses the concept of valued functors in category theory, particularly focusing on tensor products. Freyd explores the application of algebraic theories in non-standard categories, starting with the question of what constitutes an algebra in the category of sets, using category predicates without elements. The text outlines the axioms of a group using category theory language, emphasizing objects and maps. Peter Freyd (1966)

  • Continuous Yoneda Representation of a small category - Discusses the embedding of a small category A into the category of contravariant functors from A to Set (the category of sets), which preserves inverse limits but does not generally preserve direct limits. Kock introduces a "codensity monad" for any functor from a small category to a left complete category and explores the universal generator for this monad. He demonstrates that the Yoneda embedding followed by this generator provides a full and faithful embedding that is both left and right continuous. Additionally, the relationship with Isbell's adjoint conjugation functors and the definition of generalized (direct and inverse) limit functors are addressed, by Anders Kock (1966).

  • Abstract universal algebra - Explores advanced subjects in the realm of universal algebra. The core content is organized into two chapters, each addressing different aspects of universal algebra within the framework of category theory. The first chapter introduces the concept of triplable categories, inspired by the theory of modules over a ring, and explores the equivalence between categories of triples in any given category and theories over that category. In the second chapter, Davis shifts focus to equational systems of functors, a more generalized approach to algebra that encompasses both the triplable and structure category theories. Dissertation by Robert Clay Davis (1967)

  • A triple miscellany: some aspects of the theory of algebras over a triple - Explores the field of universal algebra with a particular focus on the concept of algebras over a triple. The work is grounded in the realization that categories of algebras, traditionally defined with finitary operations and satisfying a set of equations, can be extended to include infinitary operations as well, thereby broadening the scope of universal algebra. Manes starts by discussing the conventional understanding of universal algebra, tracing back to G.D. Birkhoff's definition in the 1930s, and then moves to explore how this definition can be expanded by considering sets with infinitary operations. Dissertation by Ernest Gene Manes (1967)

  • Limit Monads in Categories - The work introduces the notion that the category of complete categories is monadic over the category of all categories, utilizing a family of monads associated with various index categories to define "completeness." A significant portion of the thesis is dedicated to defining associative and regular associative colimits, arguing for their naturalness and importance in category theory. Dissertation by Anders Jungersen Kock (1967)

  • On the concreteness of certain categories - This work discusses the concept of concreteness in categories, stating that a concrete category is one with a faithful functor to the category of sets, and must be locally-small. He highlights the homotopy category of spaces as a prime example of a non-concrete category, emphasizing its abstract nature due to the irrelevance of individual points within spaces and the inability to distinguish non-homotopic maps through any functor into concrete categories. Peter Freyd (1969)

  • V-localizations and V-triples - This work focuses on two primary objectives within category theory. The first goal is to define and study Y-localizations of Y-categories, using a model akin to localizations in ordinary categories, involving certain conditions related to isomorphisms and the existence of unique Y-functors. The second aim is to explore the relationship between Y-localizations and V-triples, presenting foundational theories and examples to elucidate these concepts. Harvey Eli Wolff's dissertation (1970)

  • Symmetric closed categories - This work is an in-depth exploration of category theory, focusing on closed categories, monoidal categories, and their symmetric counterparts. It discusses foundational concepts like natural transformations, tensor products, and the structure of morphisms, emphasizing their additional algebraic or topological structures. W. J. de Schipper (1975)

  • Algebraic theories - Covers topics such as the fundamentals of algebraic theories, free models, special theories, the completeness of algebraic categories, and extends to more complex concepts like commutative theories, free theories, and the Kronecker product, among others. The notes also touch on the rings-theories analogy proposed by F. W. Lawvere, suggesting an insightful correlation between rings/modules and algebraic theories/models. Gavin C. Wraith (1975)

Articles

Bayesian/Causal inference

Databases

  • Algebraic databases - Enhances traditional category-theoretic database models to better handle concrete data like integers or strings using multi-sorted algebraic theories by Patrick Schultz, David I. Spivak, Christina Vasilakopoulou and Ryan Wisnesky (2017)
  • Algebraic Model Management: A survey - We survey the field of model management and describe a new model management approach based on algebraic specification by Patrick Schultz, David I. Spivak, and Ryan Wisnesky (2017)
  • Functorial data migration - A database language based on categories and functors, where a schema is depicted as a category and its instance as a set-valued functor by David I. Spivak (2012)

Data Types

  • Categories of Containers - Introduces containers as a mathematical model of datatypes with templated data storage, demonstrating their robustness under various constructions, including initial algebras and final coalgebras by Michael Abbot, horsten Altenkirch and Neil Ghani (2003)

Deep Learning

  • Backprop as Functor - Describes a category for supervised learning algorithms that search for the best approximation of an ideal function using example data and update rules by Brendan Fong, David I. Spivak, Rémy Tuyéras (2017)
  • Categorical Foundations of Gradient-Based Learning - Categorical interpretation of gradient-based machine learning algorithms using lenses, parametrised maps, and reverse derivative categories (2021)
  • Categories of Differentiable Polynomial Circuits for Machine Learning - Reverse Derivative Categories (RDCs) as a framework for machine learning. We introduce 'polynomial circuits' as an apt machine learning model by Paul Wilson, Fabio Zanasi (2022)
  • Compositional Deep Learning - Category-theoretic structure for a class of neural networks like CycleGAN, using this framework to design a new neural network for image object manipulation, and showcases its effectiveness through tests on multiple datasets by Bruno Gavranović (2019)
  • Compositionality for Recursive Neural Networks - Simplified recursive neural tensor network model aligns with the categorical approach to compositionality, offering a feasible computational method and opening new research avenues for both vector space semantics and neural network models by Martha Lewis (2019)
  • Deep neural networks as nested dynamical systems - Argues that the common comparison between deep neural networks and brains is wrong, and proposes a new way of thinking about them using category theory and dynamical systems by David I. Spivak, Timothy Hosgood (2021)
  • Dioptics: a Common Generalization of Open Games and Gradient-Based Learners - Relationship between machine-learning algorithms and open games, suggesting both can be understood as instances of "categories of dioptics". It expands on gradient-based learning, introducing a category that embeds into the category of learners (2019)
  • Learning Functors using Gradient Descent - A category-theoretic understanding of CycleGAN, a notable method for unpaired image-to-image translation by Bruno Gavranović (2020)
  • Lenses and Learners - Shows a strong connection between lenses, which model bidirectional transformations like database interactions, and learners, which represent a compositional approach to supervised learning by Brendan Fong, Michael Johnson (2019)
  • Neural network layers as parametric spans - Linear layer in neural networks, drawing on integration theory and parametric spans by Mattia G. Bergomi, Pietro Vertechi (2022)
  • Reverse Derivative Ascent - Reverse Derivative Ascent, a categorical counterpart to gradient-based learning techniques, formulated within the context of reverse differential categories by Paul Wilson, Fabio Zanasi (2021)

Differentiable Programming / Automatic Differentiation

Dynamical Systems

  • A categorical approach to open and interconnected dynamical systems - This paper presents a comprehensive graphical theory for discrete linear time-invariant systems, expanding on classical signal flow diagrams to handle streams with infinite pasts and futures, introduces a new structural view on controllability, and is grounded in the extended theory of props by Brendan Fong, Paolo Rapisarda and Paweł Sobociński (2015)

Game Theory

  • A semantical approach to equilibria and rationality - This paper connects game theoretic equilibria and rationality to computation, suggesting that viewing processes as computational instances can offer new algebraic and coalgebraic methods to understand equilibrium and rational behaviors by Dusko Pavlovic (2009)
  • Compositional game theory - Open games offer a new foundation for economic game theory, enabling larger models through a compositional approach that uses "coutility" to represent games in relation to their environment, and can be visually represented with intuitive string diagrams, capturing key game theory outcomes by Jules Hedges, Neil Ghani, Viktor Winschel and Philipp Zahn (2016)
  • The game semantics of game theory - We reinterpret compositional game theory, aligning game theory with game semantics by viewing open games as Systems and their contexts as Environments; using lenses from functional programming, we then construct a category of 'computable open games' based on a specific interaction geometry by Jules Hedges (2019)

Graph Neural Networks

  • Asynchronous Algorithmic Alignment with Cocycles - Current neural algorithmic reasoners use graph neural networks (GNNs) that often send unnecessary messages between nodes; in our work, we separate node updates from message sending, enabling more efficient and asynchronous computation in algorithms and neural networks (2023)
  • Graph Convolutional Neural Networks as Parametric CoKleisli morphisms - We categorically define Graph Convolutional Neural Networks (GCNNs) for any graph and connect it to existing deep learning constructs, allowing the GCNN's adjacency matrix to be treated globally, shedding light on its inherent biases, and discussing potential generalizations and connections to other learning concepts by Bruno Gavranović, Mattia Villani (2022)
  • Graph Neural Networks are Dynamic Programmers - Using category theory and abstract algebra, we dive deeper into the presumed alignment between graph neural networks (GNNs) and dynamic programming, uncovering a profound connection, validating previous studies, and presenting improved GNN designs for specific tasks, hoping to bolster future algorithm-aligned GNN advancements by Andrew Dudzik, Petar Veličković (2022)
  • Learnable Commutative Monoids for Graph Neural Networks - Using the concept of commutative monoids, we introduce an efficient O(logV) depth aggregator for GNNs, offering a balance between speed and expressiveness by Euan Ong, Petar Veličković (2022)
  • Local Permutation Equivariance For Graph Neural Networks - Our Sub-graph Permutation Equivariant Networks (SPEN) method improves graph neural networks' scalability and expressiveness by focusing on unique sub-graphs, proving competitive on benchmarks and saving GPU memory by Joshua Mitton, Roderick Murray-Smith (2021)
  • Natural Graph Networks - We introduce the concept of naturality in graph neural networks, offering a broader and efficient design alternative to traditional equivariance, with our design showing strong benchmark performance by Pim de Haan, Taco Cohen, Max Welling (2020)
  • Neural Sheaf Diffusion: A Topological Perspective on Heterophily and Oversmoothing in GNNs - Using cellular sheaf theory, we connect graph geometry to Graph Neural Network performance, leading to improved diffusion models that bridge algebraic topology and GNN studies (2022)
  • Sheaf Neural Networks for Graph-based Recommender Systems - Using Sheaf Neural Networks, we enrich recommendation systems by representing nodes with vector spaces, leading to significant performance improvements in collaborative filtering and link prediction across multiple datasets (2023)
  • Sheaf Neural Networks with Connection Laplacians - Using Riemannian geometry, we refine Sheaf Neural Network design, optimally aligning data points and reducing computational overhead, offering a bridge between algebraic topology and differential geometry for enhanced performance (2022)
  • Sheaf Neural Networks
  • Topologically Attributed Graphs for Shape Discrimination - We've developed attributed graphs that combine Mapper graph approximations with stable homology, enhancing shape representation and boosting classification results in graph neural networks (2023)

Linguistics

  • Free compact 2-categories - The paper introduces the notion of a compact 2-category, and gives some examples, such as the 2-category of monoidal categories, the 2-category of bimodules over a ring, and the 2-category of finite-dimensional vector spaces by Joachim Lambek and Anne Preller (2007)
  • Mathematical foundations for a compositional distributional model of meaning - Using vector spaces and Lambek's Pregroup algebra, we derive sentence meanings from words, enabling comparisons. Our model visually represents sentence construction and can adapt to Boolean semantics by Bob Coecke, Mehrnoosh Sadrzadeh and Stephen Clark (2010)
  • The Frobenius anatomy of word meanings I: subject and object relative pronouns - We use vectors and Frobenius algebras in a categorical approach to understand the semantics of relative pronouns. Two models are introduced: a truth-based and a corpus-based approach by Mehrnoosh Sadrzadeh, Stephen Clark and Bob Coecke (2014)

Manufacturing

  • String diagrams for assembly planning - This paper introduces CompositionalPlanning, a tool that uses string diagrams to unify CAD designs with planning algorithms, optimizing assembly plans which are then tested in simulations, showcasing its efficiency in the LEGO assembly context by Jade Master, Evan Patterson, Shahin Yousfi, Arquimedes Canedo (2019)

Metric Space Magnitude

  • Approximating the convex hull via metric space magnitude - This paper introduces CompositionalPlanning, a tool that uses string diagrams to unify CAD designs with planning algorithms, optimizing assembly plans which are then tested in simulations, showcasing its efficiency in the LEGO assembly context by Glenn Fung, Eric Bunch, Dan Dickinson (2019)
  • Magnitude of arithmetic scalar and matrix categories - We create tools that build categories from data and operate using scalar and matrix math, identifying features similar to outliers in various systems like computer programs and neural networks by Steve Huntsman (2023)
  • Practical applications of metric space magnitude and weighting vectors - The magnitude of a metric space quantifies distinct points and its weighting vector, especially in Euclidean spaces, offers new algorithms for machine learning, proven through benchmark experiments (2020)
  • The magnitude vector of images - We explore the metric space magnitude in images, revealing edge detection abilities, and introduce an efficient model that broadens its use in machine learning (2021)
  • Weighting vectors for machine learning: numerical harmonic analysis applied to boundary detection - Using the metric space magnitude's weighting vector, we enhance outlier detection in Euclidean spaces and link it to efficient nearest neighbor SVM techniques (2021)

Petri Nets

  • Generalized Petri Nets - We present Q-net, an extension of Petri nets using Lawvere theory Q, and offer a functorial approach to delineate their operational semantics across multiple net systems by Jade Master (2019)
  • The Mathematical Specification of the Statebox Language - The Statebox language is built on a solid mathematical foundation, synergizing theoretical structures for reliability; this document shares that foundation to aid understanding and auditing by Fabrizio Genovese, Jelle Herold (2019)

Probability and Statistics

Set Theory

  • Set theory for category theory - This paper compares set-theoretic foundations for category theory, exploring their implications for standard categorical usage, tailored for those with minimal logic or set theory background by Michael A. Shulman (2008)

Topological Data Analysis

Blogs

Books

  • Category Theory - This book offers an in-depth yet accessible introduction to category theory, targeting a diverse audience and covering essential concepts; the second edition includes expanded content, new sections, and additional exercises by Steve Awodey (2010)
  • Categories for the Working Mathematician - The content is in-depth, and its mathematical aspects can be challenging for the reader. It's advisable to explore this book after reading one or two of the more introductionary books. This book is a classic by Saunders Mac Lane (1971)
  • Category Theory for Programmers - This book introduces Category Theory at a level appropriate for computer scientists and provides practical examples (in Haskell) in the context of programming languages by Bartosz Milewski (2019)
  • Category Theory for the Sciences - An introduction to category theory as a rigorous, flexible, and coherent modeling language that can be used across the sciences by David I. Spivak (2014)
  • Conceptual Mathematics: A First Introduction to Categories - This book demonstrates the power of 'category' to make mathematics easier and more connected for anyone. It begins with basic definitions and creates simple categories, such as discrete dynamical systems and directed graphs, with examples, by Schanuel, Lawvere (2009)
  • Draft of "Categorical Systems Theory" - This draft book is about categorical systems theory, the study of the design and analysis of systems using category theory by Jaz Myers (2022)
  • Polynomial Functors: A General Theory of Interaction - This book offers an interdisciplinary approach to the categorical study of general interaction, aiming to bridge diverse fields under a unified language to understand interactive systems; it provides detailed explanations and resources for learning, but assumes a foundational knowledge of category theory and graph-theoretic trees by Spivak, Niu (2023)
  • Seven Sketches in Compositionality: An Invitation to Applied Category Theory - This book by David I. Spivak and Brendan Fong (2019) provides an introductory glimpse into Category Theory by covering 7 key topics. It highlights practical, real-world examples to give readers a feel for the abstract theoretical concepts
  • The Joy of Abstraction - The book by Eugenia Cheng (2022) is written in a clear and engaging style. Cheng is a gifted writer who is able to make complex mathematical concepts accessible to a general audience
  • Basic Category Theory - Tom Leinster's (2014) book represents an edited version of his lecture notes. As such, it is a concise work that provides focused coverage of the Category Theory topics it addresses
  • Category Theory in Context - This text book by Emily Riehl (2016) is advanced and is suitable for diligent students who have mastered prior readings. It's praised for its well-crafted prose on Category Theory. Initially, it adopts an example-based methodology before illustrating how category theoretical language can encapsulate the concepts
  • Categories for Quantum Theory: An Introduction - Monoidal category theory provides an abstract language to describe quantum theory, emphasizing intuitive graphical calculus, and explores structures modeling quantum phenomena, classical information, and probabilistic systems, with connections to other disciplines highlighted throughout by Chris Heunen, Jamie Vicary (2020)
  • From Categories to Homotopy Theory - by Birgit Richter (2020), gets advanced, but Part I ‘Category Theory’ is pretty accessible
  • An Introduction to Category Theory - This book offers a beginner-friendly introduction to category theory, a versatile conceptual framework used across various disciplines, detailing fundamental concepts, examples, and over 200 exercises, making it ideal for self-study or as a course text, by Harold Simmons (2011)

Companies

  • Conexus - A start-up developing CQL, a generalization of SQL to data migration and integration that contains an automated theorem prover to rule out most semantic errors at compile time
  • Statebox - building a formally verified process language using robust mathematical principles to prevent errors, allow compositionality and ensure termination
  • IOHK - builds cryptocurrencies and blockchain solutions, based on peer reviewed papers; formally verified specifications in Agda, Coq and k-framework
  • RChain - blockchain ecosystem it's foundational language - Rholang is implementation of rho-calculus wih deep roots in higher category theory and enriched Lawvere theories

Community

Conferences

  • ACT - Applied Category Theory Conference
  • Statebox Summit - An yearly gathering of category theorists and functional programmers
  • SYCO - Symposium on Compositional Structures

Journals

  • Categories and General Algebraic Structures with Applications - Categories and General Algebraic Structures with Applications is an international biannual journal published by Shahid Beheshti University, Tehran, Iran, founded in 2013
  • Compositionality - Open-access journal for research using compositional ideas, most notably of a category-theoretic origin, in any discipline
  • Theory and Applications of Categories - Theory and Applications of Categories (ISSN 1201 - 561X) is the all-electronic, refereed journal on Category Theory, categorical methods and their applications in the mathematical sciences.

Lectures

Meetups

  • Boston - This group is about applying category theory to problems in information management
  • New York - NYC Category Theory and Algebra is a group for people interested in studying Category Theory (CT) and/or Abstract Algebra together. One of our purposes is to meet and read basic texts in Category Theory.
  • San Francisco Bay Area - A meetup dedicated to teaching category theory, and especially applications, including functional programming, data management, block-chain, quantum computing, and AI.

Podcasts

Related

Books

Podcasts

  • Type Theory Forall - Podcast hosted by Pedro Abreu (Pronounced ‘Ahbrel’), PhD Student in Programming Languages at Purdue University
  • Lambda Cast - LambdaCast is a podcast about functional programming for working developers

Software Libraries

  • Category Theory in Coq - Axiom-free formalization of category theory in Coq
  • Catlab.jl - Experimental framework for applied category theory
  • Lens - Lens: Lenses, Folds and Traversals
  • Semigroupoids - Semigroupoids: Category sans id
  • UniMath - Categories formalized using univalent mathematics, in Coq
  • copumpkin/categories - Categories parametrized by morphism equality, in Agda
  • free - Free monads are useful for many tree-like structures and domain specific languages
  • idris-ct - Formally verified category theory library written in Idris
  • Category Theory in Lean4 - Experimental category theory library for Lean
  • WildCats - Mathematica package for computational category theory

Tools

  • Quiver - Modern commutative diagram editor for the web
  • Cartographer.id - Tool for string diagrammatic reasoning
  • Homotopy.io - Web-based proof assistant for finitely-presented globular n-categories
  • KdMonCat - Tool for drawing morphisms in monoidal categories
  • XyJax - Xy-pic extension for MathJax, that lets you draw commutative diagrams in browser

Video Lectures

Wiki

  • ncatlab - A wiki with content varying from pure category theory, to categorical perspectives on other areas of maths, to random unrelated bits of maths
  • Wikipedia - Has some good articles about category theory

awesome-category-theory's People

Contributors

madnight avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

jomtung

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.