Library Reference

AlgebraicABMs.ABMs.RegularPType

Default case, where pattern matches should be found via (incremental) homomorphism search and represented explicitly, each with own events getting scheduled.

source
AlgebraicABMs.ABMs.RepresentablePType

A pattern match from a coproduct of representables is just a choice of parts in the codomain. E.g. matching L = •→• • • is just a random choice of edge and two random vertices.

The vector of ints refers to parts of L which are the counits of the left kan extensions that define the representables (usually this is just wherever the colimit leg sends 1, as there is often just one X part in the representable X).

WARNING: this is only viable if the timer associated with the rewrite rule is symmteric with respect to the disjoint representables and has a simple exponential timer.

source
AlgebraicABMs.ABMs.pattern_typeMethod

Analyze a pattern to find the most efficient pattern type for it.

Because ACSet types do not know their own equations, we may have to pass the schema as an argument in order to compute representables that would otherwise be infinite.

Even if the pattern is a coproduct of representables, we cannot use the efficient encoding unless the distribution is either an exponential (or a single dirac delta - not yet supported).

source
AlgebraicABMs.ABMs.run!Method

Run an ABM, creating a fresh runtime + trajectory.

save - function applied to the ACSet state to produce the data that gets stored for every change in the model dt - timestep for checking discrete events when running ODE dynamics.

source