First, let's tighten up the construction of a Markov chain for a given Petri net.

Here is a general recipe for constructing a CTMC. Form a labeled, directed graph which has Nodes = the definite states, and a directed edge from \$$x\$$ to \$$y\$$ whenever \$$y\$$ can be reached from \$$x\$$ in one "hop." The edge will get labeled with the transition rate for this hopping.

That is what we did above in comment 14, when we constructed a directed, labeled graph with Nodes = \$$\mathbb{N}^S\$$ = the definite states.

Note: here we have a graph with a countably infinite number of nodes. However, things are simplified by the fact that each node has only a finite number of neighbors.

Specifically, for our Petri net graph, there is a directed edge from \$$x \in \mathbb{N}^S\$$ to \$$y \in \mathbb{N}^S\$$ whenever \$$y\$$ can be reached from \$$x\$$ by a single firing of one of the transitions.

And this holds whenever \$$y - x\$$ equals the stoichiometric vector ("delta vector") for one of the transitions.

If multiple transitions have the same stoichiometric vector \$$y - x\$$, then we will introduce, as an intermediate construction, multiple edges from \$$x\$$ to \$$y\$$.