AlgebraicInference.jl is a library for performing Bayesian inference on wiring diagrams, building on Catlab.jl.
Gaussian systems were introduced by Jan Willems in his 2013 article Open Stochastic
Systems. A probability space
If
Every
where
If
There exists a hypergraph PROP whose morphisms
These wiring diagrams look a lot like undirected graphical models. One difference is that wiring diagrams can contain half-edges, which specify which variables are marginalized out during composition. Hence, a wiring diagram can be thought of as an inference problem: a graphical model paired with a query.
Bayesian inference problems on large graphs are often solved using message passing. With AlgebraicInference.jl you can compose large numbers of Gaussian systems by translating undirected wiring diagrams into inference problems over a valuation algebra. These problems can be solved using generic inference algorithms like the Shenoy-Shafer architecture.