Computational Category Theory

Computational Category Theory

On this page, we make available a Java library for computational category theory which is described in the paper

Mark Minas and Hans J. Schneider. Graph Transformation by Computational Category Theory. Apperas in Festschrift for Manfred Nagl on the Occasion of his 65th Birthday, Lecture Notes in Computer Science. Springer-Verlag (PDF)

Abstract: The categorical approach is well-suited for concise definitions of graph transformation concepts. At the same time, it allows for elegant proofs of their properties. We show that these categorical concepts also allow for a similarly simple and modular implementation of graphs and graph transformations by following Rydeheard and Burstall's idea of Computational Category Theory. We first present an implementation of some categorical definitions and constructions, e.g., colimits, in Java, and we demonstrate how this language supports the genericity of the categorical approach. We then show that applying the constructions to the category of sets as well as the category of graphs already provides an implementation of graph transformations that can be used as the foundation of an extensible graph transformation language.

The Java library is available as a ZIP-file. Java 6 is required.