Welcome to ReGraph’s documentation!

The ReGraph Python library is a generic framework for building graph-based knowledge representations.

ReGraph provides various utilities for rewriting simple graphs with attributes (based on the sesqui-pushout rewriting approach). It allows the user to create and manipulate graph objects equipped with dictionary attributes, create rewriting rules, apply them to graphs, construct graph hierarchies and perform rewriting and propagation in these hierarchies. Moreover, it provides tools for audit of updates performed in individual graph objects as well as hierarchies of graphs.

ReGraph supports two graph backends: in-memory NetworkX graph objects (directed graphs) and persistent Neo4j property graphs.

Indices and tables