with the convention that $a^+_{qp}=0$ if there is no such arc. Similarly, we denote by $a^-_{qp}$ the valuation of the arc from place $p$ to transition $q$, with the same convention. We set $a_{qp} := a^+_{qp} - a^-_{qp}$. The ${\mathcal{Q}}\times {\mathcal{P}}$ matrix $A = (a_{qp})_{q \in {\mathcal{Q}}, p \in {\mathcal{P}}}$ is referred to as the *incidence matrix* of the Petri net, and its transpose matrix $C := A{^\mathsf{T}}$ as its *token flow matrix*. We also denote by $C^+$ (resp. $C^-$) the ${\mathcal{P}}\times {\mathcal{Q}}$ matrix with entry $a_{qp}^+$ (resp. $a_{qp}^-$), so that $C = C^+ - C^-$. We limit our attention to *pure* Petri nets, [*i.e.*]{}, Petri nets with no self-loop: for every pair $(q,p)$, at least one of $a^+_{qp}$ and $a^-_{qp}$ is zero.

We denote by $q{^{\textrm{in}}}$ the set of upstream places of transition $q$ and by $q{^{\textrm{out}}}$ the set of downstream places of transition $q$. Similarly, we use the notation $p{^{\textrm{in}}}$ and $p{^{\textrm{out}}}$ to refer to the sets of input and output transitions of a place $p$.

Petri nets with free choice and priority routing
------------------------------------------------

In this paper, we consider a class of Petri nets in which places are either free choice or subject to priority. Recall that 