Skip to content

ydewit/categorica

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 

Repository files navigation

Categorica

Categorica is an experimental proof engine for category theory, inspired by automated theorem provers like Vampire but focused on categorical structures. It provides a kernel for reasoning about categories, functors, and universal constructions using equational logic and saturation techniques.

Features

  • Category-theoretic reasoning kernel
    A lightweight core for modeling categories, objects, morphisms, and their equations.

  • Equational logic & automated proof search
    Built on equational reasoning with normalization and saturation, aiming toward superposition and e-graph backends.

  • Multi-category support
    Work with many categories at once, while keeping category boundaries explicit and safe.

  • Universal properties as rules
    Extendable with constructions like products, pullbacks, equalizers, and their ∀∃! axioms.

  • Extensible architecture
    Functors and natural transformations are layered as capabilities, enabling both symbolic and concrete interpretations.

  • Interactive exploration
    Designed to support user feedback loops: suggest missing constructions, materialize witnesses, or inspect goals interactively.

Roadmap

TBD

Getting Started

TBD

Example

TBD

Status

Categorica is a (early) work in progress. The current kernel supports typed morphisms, category-local constraints, and normalization-based goal checking. The next milestones include unification, superposition, and an e-graph backend for scalable equational reasoning.

About

Categorica is an experimental proof engine for category theory. It models objects, morphisms, and universal constructions with equational reasoning and e-graphs. The goal: a “Vampire-for-CT” kernel where categories, functors, and natural transformations can be explored interactively.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors