POWL 2.0 (Partially Ordered Workflow Language) Engine. Exact Mathematical Realization of:
- [BPM25] Kourani, Park, van der Aalst (2025). Unlocking Non-Block-Structured Decisions: Inductive Mining with Choice Graphs. BPM 2025, LNCS 16044, pp. 144–161.
- [PETRI25] Kourani, Park, van der Aalst (2025). Hierarchical Decomposition of Separable Workflow-Nets. PETRI NETS 2025, LNCS 15714, pp. 242–264.
Represents process models as hierarchical, sound-by-construction operator trees:
Activity: Leaf node executing a labeled transition $t \in T$ with $l(t) \in \Sigma$.Silent: Silent transition $t$ with $l(t) = \tau$ (skip).Sequence: Strict linear composition $\times(T_1, T_2, \dots, T_n)$.Choice: Exclusive branching $\oplus(T_1, T_2, \dots, T_n)$ or ChoiceGraph $G = (N, E)$.ChoiceGraph: POWL 2.0 directed choice graph $G = (N, E)$ with artificial delimiters $▷, □$.Loop: Iterative repeat $\circlearrowleft(body, redo)$ / $\looparrowright$.PartialOrder: Concurrency constrained by explicit poset edges $(nodes, order\_edges)$ with order-preserving shuffle $\prec\hspace{-0.6em}\odot$.
Every valid POWL 2.0 tree is mathematically guaranteed to be 1-safe sound without reachability anomalies.
Summary
Functions
Constructs a leaf activity node.
Constructs an exclusive choice composition of child nodes.
Constructs a POWL 2.0 Choice Graph node $G = (N, E)$ with delimiters $▷, □$
Constructs a loop composition with body and redo branches.
Constructs a POWL model from a map of nodes and a designated root node id.
Constructs a partially ordered workflow node with explicit precedence edges.
Constructs a sequential composition of child nodes.
Constructs a silent tau transition node.
Translates a POWL tree into a mathematically sound Workflow Net (Petri Net).
Returns %{places: [...], transitions: %{...}, initial_marking: [...], final_marking: [...]} or {:ok, %WorkflowNet{}}.
Functions
Constructs a leaf activity node.
Constructs an exclusive choice composition of child nodes.
Constructs a POWL 2.0 Choice Graph node $G = (N, E)$ with delimiters $▷, □$:
- Definition 1 [BPM25, p. 7]
- Definition 3.6 [PETRI25, p. 8]
Constructs a loop composition with body and redo branches.
Constructs a POWL model from a map of nodes and a designated root node id.
Constructs a partially ordered workflow node with explicit precedence edges.
Constructs a sequential composition of child nodes.
Constructs a silent tau transition node.
Translates a POWL tree into a mathematically sound Workflow Net (Petri Net).
Returns %{places: [...], transitions: %{...}, initial_marking: [...], final_marking: [...]} or {:ok, %WorkflowNet{}}.