SkillAgentSearch skills...

Categories

Categories parametrized by morphism equality, in Agda

Install / Use

/learn @copumpkin/Categories
About this skill

Quality Score

0/100

Supported Platforms

Zed

README

This library is obsolete and does not work with newer versions of Agda. It sort-of works with 2.5.2, but less and less so afterwards. It is completely broken from 2.6 onwards.

Users should instead try https://github.com/agda/agda-categories. It is not completely compatible, but close. And it is supported.


One of the main goals of this library is to be as general as possible by abstracting over notions of equality between morphisms.

Another is to keep the definitions of categorical structures as simple as possible and then where possible to prove that the simple definition is equivalent to more interesting formulations. For example, we can define a monad as recording containing a functor and two natural transformations. Separately, we can show that a monoid object in the monoidal category of endofunctors is an equivalent definition, and that the composition of an adjoint pair of functors leads to monads, and so on.

The module structure is a mess, I realize. A lot of the parametrized modules should not be. Naming of things in general could also be made cleaner, but I've been more interested in definitions and proofs so far.

A lot of this is based on http://web.student.chalmers.se/~stevan/ctfp/html/README.html, but with some design changes that I thought were necessary. It's still very much a work in progress.

Other parts (mostly produts) are borrowed from Dan Doel

View on GitHub
GitHub Stars153
CategoryDevelopment
Updated1mo ago
Forks23

Languages

Agda

Security Score

85/100

Audited on Feb 10, 2026

No findings