English
Related papers

Related papers: DisCoPy: Monoidal Categories in Python

200 papers

There are different notions of computation, the most popular being monads, applicative functors, and arrows. In this article we show that these three notions can be seen as monoids in a monoidal category. We demonstrate that at this level…

Logic in Computer Science · Computer Science 2014-06-19 Exequiel Rivas , Mauro Jaskelioff

Premonoidal categories are monoidal categories without the interchange law while effectful categories are premonoidal categories with a chosen monoidal subcategory of interchanging morphisms. In the same sense that string diagrams,…

Category Theory · Mathematics 2025-05-07 Mario Román , Paweł Sobociński

The correspondence between monoidal categories and graphical languages of diagrams has been studied extensively, leading to applications in quantum computing and communication, systems theory, circuit design and more. From the categorical…

Programming Languages · Computer Science 2018-03-05 Dan R Ghica , Aliaume Lopez

Monadic programming presents a significant challenge for many programmers. In light of category theory, we offer a new perspective on the use of monads in functional programming. This perspective is clarified through numerous examples coded…

Programming Languages · Computer Science 2024-10-14 Fethi Kadhi

We introduce a graphical language for closed symmetric monoidal categories based on an extension of string diagrams with special bracket wires representing internal homs. These bracket wires make the structure of the internal hom functor…

Logic in Computer Science · Computer Science 2025-12-09 Callum Reader , Alessandro Di Giorgio

Array programming provides a powerful, compact, expressive syntax for accessing, manipulating, and operating on data in vectors, matrices, and higher-dimensional arrays. NumPy is the primary array programming library for the Python…

We study monoidal profunctors as a tool to reason and structure pure functional programs both from a categorical perspective and as a Haskell implementation. From the categorical point of view we approach them as monoids in a certain…

Programming Languages · Computer Science 2022-07-05 Alexandre Garcia de Oliveira , Mauro Jaskelioff , Ana Cristina Vieira de Melo

PaPy, which stands for parallel pipelines in Python, is a highly flexible framework that enables the construction of robust, scalable workflows for either generating or processing voluminous datasets. A workflow is created from user-written…

Programming Languages · Computer Science 2014-07-17 Marcin Cieslik , Cameron Mura

We formalize the simulation paradigm of cryptography in terms of category theory and show that protocols secure against abstract attacks form a symmetric monoidal category, thus giving an abstract model of composable security definitions in…

Cryptography and Security · Computer Science 2022-08-30 Anne Broadbent , Martti Karvonen

This paper introduces an inherently strict presentation of categories with products, coproducts, or symmetric monoidal products that is inspired by file systems and directories. Rather than using nested binary tuples to combine objects or…

Category Theory · Mathematics 2025-04-30 Owen Lynch , Markus Lohmayer

Visualization of multidimensional, categorical data is a common challenge across scientific areas and, in particular, the life sciences. The goal is to create a comprehensive overview of the underlying data which allows to assess multiple…

Quantitative Methods · Quantitative Biology 2025-06-19 Matthias Flotho , Philipp Flotho , Andreas Keller

We describe our experience implementing a broad category-theory library in Coq. Category theory and computational performance are not usually mentioned in the same breath, but we have needed substantial engineering effort to teach Coq to…

Category Theory · Mathematics 2022-05-04 Jason Gross , Adam Chlipala , David I. Spivak

One goal of applied category theory is to better understand networks appearing throughout science and engineering. Here we introduce "structured cospans" as a way to study networks with inputs and outputs. Given a functor $L \colon…

Category Theory · Mathematics 2020-11-11 John C. Baez , Kenny Courser

In this paper we present an open source framework developed in Python and consisting of three distinct classes designed to manipulate in a simple and intuitive way both symbolic representations of neutrosophic sets over universes of various…

Artificial Intelligence · Computer Science 2024-04-10 Giorgio Nordo , Saeid Jafari , Arif Mehmood , Bhimraj Basumatary

We discuss some aspects of our work on the mechanization of syntax and semantics in the UniMath library, based on the proof assistant Coq. We focus on experiences where Coq (as a type-theoretic proof assistant with decidable typechecking)…

Programming Languages · Computer Science 2023-10-10 Benedikt Ahrens , Ralph Matthes , Kobe Wullaert

While machine learning fairness has made significant progress in recent years, most existing solutions focus on tabular data and are poorly suited for vision-based classification tasks, which rely heavily on deep learning. To bridge this…

Computer Vision and Pattern Recognition · Computer Science 2025-05-12 Ignacy Stępka , Lukasz Sztukiewicz , Michał Wiliński , Jerzy Stefanowski

This is a report on aspects of the theory and use of monoidal categories. The first section introduces the main concepts through the example of the category of vector spaces. String notation is explained and shown to lead naturally to a…

Category Theory · Mathematics 2012-10-05 Ross Street

There exist several graphical languages for quantum information processing, like quantum circuits, ZX-Calculus, ZW-Calculus, etc. Each of these languages forms a dagger-symmetric monoidal category (dagger-SMC) and comes with an…

Quantum Physics · Physics 2019-02-20 Titouan Carette , Emmanuel Jeandel , Simon Perdrix , Renaud Vilmart

We introduce collages of string diagrams as a diagrammatic syntax for glueing multiple monoidal categories. Collages of string diagrams are interpreted as pointed bimodular profunctors. As the main examples of this technique, we introduce…

Category Theory · Mathematics 2023-12-15 Dylan Braithwaite , Mario Román

We enhance the calculus of string diagrams for monoidal categories with hierarchical features in order to capture closed monoidal (and cartesian closed) structure. Using this new syntax we formulate an automatic differentiation algorithm…

Programming Languages · Computer Science 2021-07-29 Mario Alvarez-Picallo , Dan R. Ghica , David Sprunger , Fabio Zanasi