A library for programmatically manipulating bigraphs, reaction rules, and Bigraphical Reactive Systems (BRS). It supports standard bigraphs and bigraphs with sharing, probabilistic and stochastic reaction rules, conditional rules, rule priorities, instantiation maps, and parameterised controls.
The matching engine relies on external solvers. Build a solver instance with Solver.Make_SAT (for SAT solvers) or use Solver.GBS directly. Instantiate a reactive system by passing the solver to Brs.Make, Pbrs.Make, Sbrs.Make, or Abrs.Make.
All types derive JSON encoders and decoders. Graphical output is available in Graphviz (DOT) and TikZ (LaTeX) formats.
A tutorial walks through the main usage patterns.
Bigraph.Abrs Operations on action BRSs i.e. BRSs with discrete probabilistic transitions and explicit non-deterministic choices.Bigraph.AppCond Application conditions for bigraph reaction rules.Bigraph.Big Bigraph operations.Bigraph.Brs Operations on BRSs.Bigraph.Ctrl Operations on bigraphical controls.Bigraph.Expr Expressions and constraints for use in control parameters.Bigraph.Face Operations on faces defined as sets of names.Bigraph.Fun Implementation of finite functions over integers.Bigraph.IntSet Finite sets of non negative integers.Bigraph.Iso Implementation of finite isomorphisms over non negative integers.Bigraph.Link Operations on link graphs.Bigraph.Nodes Operations on sets of bigraph nodes.Bigraph.Pbrs Operations on probabilistic BRSs.Bigraph.Place Operations on place graphs.Bigraph.Ports Operations on Ports.Bigraph.Predicate Predicates as labels for transition systems.Bigraph.Priority Priority classes over reaction rules.Bigraph.React Bigraphical reaction rules.Bigraph.Rel Implementation of finite binary relations over non negative integers.Bigraph.Rs Bigraphical reactive systems.Bigraph.Sbrs This module provides operations on stochastic BRSs.Bigraph.Solver Unified interface to external solvers.Bigraph.Tikz Simple TikZ output for bigraphs.Bigraph.Ts Functorial implementation of transition systems.Minicard Basic interface to the MiniCARD cardinality solver. Refer to the Example usage section for a short tutorial.Gbs Basic interface to the Glasgow Subgraph Solver (GBS), an efficient solver for induced and non-induced subgraph isomorphism.