catlog/lib.rs
1//! A toolbox for categorical logic based on double-categorical theories.
2//!
3//! # Organization
4//!
5//! While the purpose of this package is to implement double theories and their
6//! models and morphisms, a certain amount of lower-dimensional category theory is
7//! necessary as background. The package is organized into top-level modules
8//! according to dimensionality:
9//!
10//! 0. [`zero`]: Sets and mappings, known semi-seriously as zero-dimensional
11//! category theory, and a bit of abstract algebra.
12//! 1. [`one`]: Ordinary, or one-dimensional, category theory.
13//! 2. [`dbl`]: Double category theory.
14//!
15//! The prerequisite modules make no pretence to completeness, but if they become
16//! sufficiently useful in their own right, they may be spun off into their own
17//! crates.
18
19#[cfg(doc)]
20pub mod refs;
21
22pub mod egglog_util;
23pub mod validate;
24
25pub mod dbl;
26pub mod one;
27pub mod simulate;
28pub mod stdlib;
29pub mod tt;
30pub mod wd;
31pub mod zero;