Skip to content

AlgebraicJulia/GATlab.jl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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