open_hypergraphs/
lib.rs

1//! # Open Hypergraphs
2//!
3//! A library for representing the two-dimensional syntax of *string diagrams*.
4//! Use it if you think of your data in terms of "boxes and wires" like this:
5//!
6//! ```text
7//!           ┌───┐
8//!       ────│ f │────┐    ┌───┐
9//!           └───┘    └────│   │
10//!                         │ h │────
11//!           ┌───┐    ┌────│   │
12//!       ────│ g │────┘    └───┘
13//!           └───┘
14//! ```
15//!
16//! A concrete example: neural networks, where wires carry tensors (e.g. a 3×4 matrix) and boxes
17//! are tensor operations (e.g. matmul)
18
19pub mod array;
20pub mod category;
21pub mod finite_function;
22pub mod indexed_coproduct;
23pub mod operations;
24pub mod semifinite;
25
26pub mod hypergraph;
27pub mod open_hypergraph;
28
29pub mod functor;
30pub mod layer;