GATlab.jl

GATlab: a computer algebra system based on generalized algebraic theories (GATs)
Author AlgebraicJulia
Popularity
24 Stars
Updated Last
4 Months Ago
Started In
February 2023

GATlab

A collection of tools that one can use to reason with GATs and organize models of GATs.

Features

  • Declaration of GATs
  • Multiple inheritance of GATs via pushouts
  • Parameterized models of GATs ala Standard ML modules/functors
  • E-Graph backed rewriting and type inference in arbitrary GATs
  • Backwards compatibility with the Catlab implementation of GATs

Further reading

The design and essential features of GATlab are described in our paper:

O. Lynch, K. Brown, J. Fairbanks, E. Patterson, 2024: "GATlab: Modeling and Programming with Generalized Algebraic Theories" arXiv:2404.04837