Expand description
An implementation of Open Hypergraphs directly following the paper “Data-Parallel Algorithms for String Diagrams”.
To use Vec
-backed open hypergraphs, use the crate::strict::vec
module, which provides some
type-aliases specialised to the Vec
backend.
Re-exports§
pub use crate::finite_function::FiniteFunction;
pub use crate::indexed_coproduct::IndexedCoproduct;
pub use crate::semifinite::SemifiniteFunction;
pub use hypergraph::Hypergraph;
pub use crate::array::*;
pub use crate::category::*;
pub use open_hypergraph::*;
Modules§
- eval
- An array-backend-agnostic evaluator
- functor
- Functors between categories of open hypergraphs
- hypergraph
- The category of hypergraphs has objects represented by
Hypergraph
and arrows byarrow::HypergraphArrow
. - layer
- A Coffman-Graham-inspired layering algorithm.
- open_
hypergraph - The primary datastructure for representing cospans of hypergraphs
- vec
- Type alises for strict Open Hypergraphs using the
VecKind
array backend.