Lably
Skip to content

History monoid

  • 4 min read
  • 4 chapters

Related on Lably

Through Mathematics, Computer science and Process (computing)

History monoids occur in the theory of concurrent computation, and provide a low-level mathematical foundation for process calculi, such as CSP the language of communicating sequential processes, or CCS, the calculus of communicating systems. History monoids were first presented by M.W. Shields.

History monoids are isomorphic to trace monoids (free partially commutative monoids) and to the monoid of dependency graphs. As such, they are free objects and are universal. The history monoid is a type of semi-abelian categorical product in the category of monoids.

Product monoids and projection

Let

A=(Σ1,Σ2,…,Σn)

denote an n-tuple of (not necessarily pairwise disjoint) alphabets Σk. Let P(A) denote all possible combinations of one finite-length string from each alphabet:

P(A)=Σ1∗×Σ2∗×⋯×Σn∗

(In more formal language, P(A) is the Cartesian product of the free monoids of the Σk. The superscript star is the Kleene star.) Composition in the product monoid is component-wise, so that, for

u=(u1,u2,…,un)

and

v=(v1,v2,…,vn)

then

uv=(u1v1,u2v2,…,unvn)

for all u,v in P(A). Define the union alphabet to be

Σ=Σ1∪Σ2∪⋯∪Σn.

(The union here is the set union, not the disjoint union.) Given any string w∈Σ∗, we can pick out just the letters in some Σk∗ using the corresponding string projection πk:Σ∗→Σk∗. A distribution π:Σ∗→P(A) is the mapping that operates on w∈Σ∗ with all of the πk, separating it into components in each free monoid:

π(w)↦(π1(w),π2(w),…,πn(w)).

Sign in to keep reading

3 more chapters are free with a Lably account.

More in Algebra