Module strict

Module strict 

Source
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 by arrow::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.