โ† back to reading

๐Ÿž Natural Breadcrumbs

Applied category theory and programming language theory are converging on the same structures from different directions. These pages map the translations, with runnable code.

PL theory

assert P(x)
y = f(x)
assert R(y)
z = g(y)
assert Q(z)

Category theory

{ P } f { R }    { R } g { Q }
โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€
    { P } gโˆ˜f { Q }

Same structure. Different notation. Each paper below gets a page that shows both.


Papers

Each paper has a ๐Ÿž page that translates its key ideas into diagrams and runnable code.

Paper One sentence Kind
Staton 2025Every Hoare rule is a theorem, not an axiom โ€” derived from categorical axioms (correctness, incorrectness, relational)โ†’๐Ÿž
Fritz 2020Stochastic functions form a category with copy and discardโ†’๐Ÿž
Fritz, Perrone, Rezagholi 2021"Which outputs are possible?" is a monad morphismโ†’๐Ÿž
Gaboardi, Katsumata, Orchard, Sato 2021Hoare logic with grades: track side effects through compositionโ†’๐Ÿž
Kura, Gaboardi, Sekiyama, Unno 2026Effects that depend on values: indexed graded monads for dependent effect systemsโ†’๐Ÿž
Ghani, Hedges, Winschel, Zahn 2018Nash equilibrium composes the same way contracts composeโ†’๐Ÿž
Capucci 2021"What is a goal but a predicate on a system?"~๐Ÿž
Baez, Fritz, Leinster 2011Shannon entropy is the only information loss that respects compositionโ‰ˆ๐Ÿž
Liell-Cock, Staton 2025Graded monads give rise to Markov categories (compositional imprecise probability)โ†’๐Ÿž
Sato, Katsumata 2023Distance between programs = enrichment on the categoryโ†’๐Ÿž
Spivak 2013Typed ports and wiring diagrams: the syntax layer for composing boxesโ†’๐Ÿž
Aguirre, Katsumata, Kura 2022Weakest preconditions from fibrations over Kleisli categoriesโ†’๐Ÿž
Kidney, Wu 2021One monad parameterized by a semiring: probability, counting, searchโ†’๐Ÿž
Leinster 2021Diversity IS categorical cardinality: magnitude generalizes species countโ†’๐Ÿž
Smithe 2021Bayesian inversions compose as lenses: forward inference, backward learningโ†’๐Ÿž
Parzygnat 2020Bayesian inversion as dagger structure: three levels of reversibilityโ†’๐Ÿž
Di Lavore, Roman, Sobocinski 2025Markov categories where morphisms can fail: observations, conditioningโ†’๐Ÿž
Panangaden 2009Bisimulation metrics: behavioral distance between stochastic processesโ†’๐Ÿž
Cho, Jacobs 2015Predicates as effects, not subobjects: states/effects dualityโ‰ˆ๐Ÿž
Ho, Wu, Raad 2026Separation logic for Bayesian programs: the frame rule IS probabilistic independenceโ†’๐Ÿž
Chen, Vigneaux 2023Shannon entropy and magnitude unified: recovers magnitude under uniformโ†’๐Ÿž

โ‰ˆ proven equivalence โ€” a theorem makes the two sides the same structure ยท โ†’ construction โ€” one side builds on / gives rise to the other ยท ~ framing โ€” an intuition or lens, not a proven equivalence

๐Ÿชž The negative space: Neat, Not Useful โ€” where these same bridges hold and still drop their cargo, and the three ways a translation fails.


Three ways in

Also: symbol grid ยท how to use this site

๐Ÿ“บ Video lectures: MIT 18.S097: Applied Category Theory (Fong & Spivak) ยท Stanford CS364A: Algorithmic Game Theory (Roughgarden)

Neighbors