About me

I’m a PhD student at the University of Strathclyde, part of the MSP group, under the supervision of Neil Ghani, Jules Hedges and Scott Cunningham.

I work in applied category theory, focusing on developing a principled mathematical description of open systems exhibiting agency, such as players in a game, learners and reasoners (cybernetic systems). My tools of choice are optics, triple categories, dependent types and graphical syntax. Here’s my full academic CV.

I post about this and more on this blog (rarely) and on my Twitter page (much more frequently). Lately you can find me on Mathstodon.


  • If you want to know what ACT is and why I’m so passionate about it, I recommend this talk by David Spivak on the matter. I picked some highlights here.
  • I’m a great admirer of Alexandre Grothendieck, to understand why I suggest reading a short biography. TL;DR: strong moral principles, faiths in theoretical methods, and humbleness towards the mystery of mathematics.
  • I sometimes make silly merch about my research, you can get it here.
  • I’m a proud member of ItaCa (Italian Category theorists).
  • Here’s some nice-to-look-at math: Category Theory without Context

Active lines of research

This is a more of less up-to-date list of the topics I’m working on. For a list of talks, preprints and papers, check out this page.

I’m open to collaborations in any of the topics listed below, you can get in touch by emailing matteo dot capucci at strath.ac.uk.

Categorical foundations of cybernetics

Cybernetic systems self-adapt through the observations they make of the ‘environment’ which interacts with them. In games, this brings players to play equilibria. In machine learning, it makes models learn from a dataset.

Category theory can put the mathematical treatment of these systems on strong and flexible foundations. We can then use string diagrams to describe systems compositionally, categorical logic to impose guarantees on their behaviour, and functional programming to produce efficient and effable programs to analyse them.

My research focuses in understanding agency and its compositional structure. Together with people at MSP, I’m developing some foundational machinery for investigating this question, working in the groove of compositional game theory.

My current goal is to develop a framework for categorical cybernetics inspired by David Jaz Myers’ work on open dynamical systems.

Reading list

  1. The series of posts on open cybernetics on this blog
  2. Towards Foundations of Categorical Cybernetics by me, Bruno Gavranović, Jules Hedges, Eigil Fjeldgren Rischel
  3. Categorical systems theory, by David Jaz Myers
  4. Triple categories of open cybernetic systems, by me

Categorical game theory

Game theory is a fascinating subject studying the behaviour of self-interested interacting agents. All cybernetic systems feature agents trying to control a given system with a goal in mind, but games are unique in their compositional structure.

In fact the composition of many game-theoretic agents looks different from any of the composee. This is a consequence of the information flow of a game, which starves player of crucial information on the consequences of their action. The main issue with this state of affairs is that the more players are together the harder it is for them to reach mutually beneficial states (Pareto optima).

Category theory can describe this very well, by bringing to the table a few crucial ingredients:

  1. Good ‘forms’ to model the dynamics of a game; less unwieldly than extensive forms but also more expressive than normal form,
  2. Off-the-shelf compositionality, both for specifying games and for computing their behaviours (e.g. Nash equilibria),
  3. Conceptual discernment, for instance clarifying the relation between learning and games, or why games have such a peculiar phenomenology.

Categorical game theory has been brewing for a while, and now foundations are almost done. The first goal is to reproduce classical results and tools from game theory, reframing them in a more scalable and conceptually convincing mathematical framework. Then we can start to go beyond that: my current goal is to understand compositionality of agency, see here.

Reading list

  1. Compositional game theory, by Neil Ghani, Jules Hedges, Viktor Winschel and Philipp Zhan
  2. Open cybernetic systems II: parametrised optics and agency, by me
  3. Diegetic representation of feedback in open games, by me
A ‘diegetic’ open game

Dependent optics

Bidirectional transformations are ubiquitous in applied category theory, in the form of lenses, Dialectica categories, morphisms of containers, modular data accessors, and more. In particular, they provide the foundations for categorical cybernetics.

This is a somewhat technical topic. The current goal in dependent optics is to find good dependently-typed generalizations of optics, which are themselves a generalization of lenses. Optics seems to have better operational properties than lenses, and capture a wider range of bidirectional transformations.

Reading list

  1. Towards dependent optics, by Jules Hedges
  2. Fibre optics, by Dylan Braithwaite, Matteo Capucci, Bruno Gavranović, Jules Hedges, Eigil Fjeldgren Rischel
  3. Compound optics, by Bartosz Milewski
  4. Seeing double through dependent optics, by me
  5. Dependent optics, by Pietro Vertechi

Relativization of stochastic calculus

Some theories are unnaturally complicated when described in the language of sets. Using the languages of other topoi can help to make them look simpler, and therefore to be simpler to work with. In a sense, relativization is the search for the natural habitat of a mathematical theory, where it can be ‘its true self’ and thrive. Stochastic calculus is one such a theory: topoi of sheaves over suitably defined sites make the theory tame and natural-looking.

My current goal is to construct Ito’s and Stratonovich’s integrals in this way.

Reading list

  1. How topos theory can help commutative algebra by Ingo Blechschmidt,
  2. My name is stochastic calculus but everybody calls me calculus by myself,
  3. Topos theory and measurability by Asgar Jamneshan.

Applied sheaf theory

Sheaf theory is a wonderful abstraction to deal with local/global data. Can we use it to better understand compositional behaviour? This is an open ended question and a long-term research topic. A crucial step into answering this question is: how do we bridge the cartesian-monoidal gap in order to use sheaves on categories of systems?

Reading list

  1. Systems, Generativity and Interactional Effects by Elie Adam,
  2. Lax functors describe emergent effects by Jules Hedges,
  3. Fantastic sheaves and where to find them by myself,
  4. Opinion Dynamics on Discourse Sheaves by Jakob Hansen and Robert Ghrist