HyperGraph Isomorphism Checker
Welcome to the documentation for the Hypergraph Isomorphism Checker (HgIC) project!
Overview
The current version is a serial Python library for directed hypergraphs.
Key Features
- ๐ Graph Structures: Support for directed hypergraphs/graphs
- โ Validation: Comprehensive validation of graph structures and signatures
- ๐จ Visualization: Built-in support for rendering graphs using Graphviz
- ๐งช Well-Tested: Extensive test coverage with pytest
- ๐ Type-Safe: Full type hints for better IDE support and code quality
Use Case
from IsomorphismChecker_python_serial.node import Node
from IsomorphismChecker_python_serial.edge import Edge
from IsomorphismChecker_python_serial.graph import Graph
# Create nodes
n1 = Node(index=0, label="A")
n2 = Node(index=1, label="B")
# Create edge
edge = Edge(source=n1, target=n2, label="f")
# Create graph
graph = Graph(nodes=[n1, n2], edges=[edge])
# Validate
if graph.is_valid():
print("Graph is valid!")
Getting Started
Check out the Installation Guide to get started with the HgIC.
Project Structure
src/IsomorphismChecker_python_serial/
โโโ node.py # Node definitions
โโโ edge.py # Simple edge definitions
โโโ hyperedge.py # Hyperedge definitions
โโโ graph.py # Directed graph implementation
โโโ hypergraph.py # Hypergraph implementation
โโโ signature.py # Signature handling
โโโ diagram.py # Graph visualization
โโโ validation.py # Validation utilities
โโโ ...
Contributing
We welcome contributions! See our Contributing Guide for details.
Table of Contents
- Introduction
- Getting Started
- API Reference
- Contributing