Home > Sample essays > Using Petri Nets for Modeling Complex Biological Systems

Essay: Using Petri Nets for Modeling Complex Biological Systems

Essay details and download:

  • Subject area(s): Sample essays
  • Reading time: 22 minutes
  • Price: Free download
  • Published: 1 April 2019*
  • Last Modified: 23 July 2024
  • File format: Text
  • Words: 7,217 (approx)
  • Number of pages: 29 (approx)

Text preview of this essay:

This page of the essay has 7,217 words.



section{Petri Nets for Biology}

subsection{Introduction/Motivation}

As biology becomes a data intensive science, due to advancements in high throughput molecular biology, the importance of emph{in silico} dynamical models of complex biological systems that are able to reproduce intricate behaviors observed in experimental settings increases. Consequently, modeling becomes a part of biological reasoning, and as the amount of biological data in the public domain grows, so does the range of modeling and analysis techniques employed in Systems Biology cite{bartocci}.

% add section with short survey on modeling techniques

Each modeling approach/technique abstracts the biological processes being considered in a certain way, thus bringing along its own set of assumptions and, consequently, niche of validity. The overall challenge is related with the understanding of cellular processes and their modeling within the adequate level of abstraction.

Nonetheless, any biochemical reaction network has, by its very nature, three distinctive characteristicscite{heiner}:

begin{enumerate}

    item it consists of two different types of entities, emph{species} and their emph{interactions}: a biochemical network has an inherent emph{bipartite} structure

    item several interactions can happen at the same time, independently: it is inherently emph{concurrent}

    item the timing behavior of the interactions is governed by stochastic laws: it is inherently emph{stochastic}

end{enumerate}

Bipartiteness (??) and concurrency are inherent characteristics of Petri Nets, and as such emph{stochastic Petri nets} represent a natural choice for the modeling of biochemical reaction systems.

Nonetheless, due to computational efforts required to analyse stochastic models, two other Petri net abstractions are more popular: emph{qualitative models}, and emph{continuous models}. While the choice of the latter abstraction is justified by the fact that continuous models are commonly used to approximate stochastic behavior by a deterministic one, the former  has the advantage of abstracting away from any time dependencies.

All in all, the advantages of employing the Petri net formalism for biochemical network modeling are as followscite{heiner}:

begin{itemize}

    item Petri nets offer a formal modeling and analysis technique for systems that display behaviors such as parallelism, concurrency, synchronization and resource sharing – all of which are inherent to biological processes;

    item they have an intuitive and executable modeling style;

    item they dispose of both true concurrency (partial order) semantics, and interleaving semantics – which allows to simplify analysis;

    item they have an exact mathematical definition of their execution semantics, and dispose of well-developed, mathematically founded qualitative and quantitative analysis techniques based on formal semantics;

    item theoretical results concerning them are plentiful, and their properties  have been and still are extensively studied; most notably, they allow for coverage of both structural and behavioral properties, as well as their relations;

    item last, but not least, they dispose of reliable tool support.

 end{itemize}

As mentioned above, qualitative models abstract away the timed information: they are stoichiometric, or purely causal, and are based on a graph-theoretical description of the underlying system's topology/structure.  The most abstract representation of a biochemical network is emph{qualitative} and is minimally described by its topology: herein, network structure represents static knowledge about interactions within a cell. This is usually carried out through the use of bipartite directed graph, with nodes representing either biochemical entities or reactions. The graph edges can be annotated with stoichiometric information w.r.t. the chemical reaction being modeled. The qualitative description can be enhanced by the abstract representation of quantities of species, that can represent either molecule numbers or concentrations levels of the underlying species, as we will see next.

However, since any real system behavior happens in time, the qualitative model can be seen as a supplementary intermediate step, “at least from the viewpoint of the biochemist accustomed to quantitative modeling only''cite{heiner}, which allows for model validation.  %cite{heiner3}- this cannot be achieved on the continuous level, and is generally much harder to do on the stochastic level

Generally, qualitative models provide a complementary approach to the analysis of the system, when compared to the quantitative ones: whereas the latter uses execution/simulation/“the token game'' to experience and establish confidence in (or dismiss) the model behavior, the former allows for formal emph{exhaustive} analysis and validation of the network.

For example, in cite{heiner3}, the authors propose a discrete qualitative Petri net model of the influence of the Raf Kinase Inhibitor Protein (RKIP) on the Extracellular signal Regulated Kinase (ERK) signalling pathway, the analysis of which is then used to derive the sets of initial concentrations required by the corresponding continuous ordinary differential equation model.

Having succesfully validated the qualitative model, the quantitative models can be derived from the qualitative ones, by adding timed information. This can be achieved in one of two ways: by assigning either stochastic, or deterministic, rate functions to all reactions in the network. Thus, the quantitative models preserve the structure of the qualitative ones.

It is common practice to distinguish quantitative and qualitative models (and handle them separately). As such, qualitative models are employed when kinetic parameters are either deficient or unavailable, and are widely accepted as an intermediary step for larger models. Conversely, quantitative models become prevalent as soon as a substantial fraction of the necessary kinetic parameters is known – for example, kinetic reaction rate constants, species' concentrations and equilibrium constants. The remaining kinetic parameters are then usually either estimated (CITE PARAMETER ESTIMATION METHODS), or, if available, taken from the taxonomically nearest neighbour species. The quantitative approach seems to be the favorite choice: the vast majority (CITATION NEEDED) of published biochemical models are quantitative. The reason for this resides in the long-term objective of Systems Biology: predict the system's dynamic behavior by continuous dynamic measures.

% bridging the gap

In cite{popova}, the authors address the issue of bridging the gap between qualitative and quantitative models, by demonstrating how to develop quantitative models of biochemical networks in a systematic manner, starting from the underlying qualitative ones. To do so, they exploit the well-established structural Petri net analysis technique of transition invariants, which may be interpreted as a characterization of the system’s steady state behaviour.

In the rest of this chapter/section, we present the syntax and different execution semantics for both quantitative and qualitative Petri net models, as well as the available analysis techniques, in a formal manner.

% put introductory paragraph on Petri nets somewhere

subsection{Qualitative Petri Nets}

subsubsection{Syntax}

An ordinary Petri Net is a weighted directed bipartite graph, in which the nodes represent either emph{places} or emph{transitions}. The distinction between places and transitions reflects the difference between passive and active system components: while places are usually used to model passive components such as conditions, transitions stand for active system components such as atomic actions. In the case of biochemical reaction networks, conditions are represented by chemical compounds (emph{e.g.} proteins, protein compounds) acting as precursors, products or enzymes, while (atomic) actions denote chemical reactions, for example (dis)association, (de)phosphorylation, or transforming precursors into products.

We start by defining the discrete/ordinary Petri net.

The directed arcs connect precursors to reactions (incoming arcs), or reactions to products (outgoing arcs). Arc weights are read as the multiplicity of the arc, and reflect known stoichiometries. Thus, the arc weight 0 marks the absence of an arc, while arc weight 1 is the default value, and is usually omitted when drawing a Petri net.

By construction, in the case of Petri Nets modeling biochemical reaction networks, the pre-places of a transitions correspond to the reaction's precursors, and its post-places to the reaction's products.

In order to formalize the notion of pre- and post-places, we introduce the following notations:

We also note that $x$ is called an emph{input node} if $^bullet x=emptyset$, respectively an emph{output node} if $x^bullet=emptyset$. More generally, x is called a emph{boundary node} if it is either an input or an output node.

The above notions can be extended to sets of nodes $Xsubseteq Pcup T$, by defining:

In order to describe the dynamics of a Petri net, another object needs to be introduced – the token, denoted by a solid dot ($bullet$) inside the circles representing places. We note that the tokens that inhabit the system at a given time $t$ constitute the marking of the net at $t$, and describe the emph{state of the system} at that time. In ordinary Petri nets, tokens are indistinguishable; their role is to indicate the presence (or absence) of a condition, resource or signal. For Petri nets that model biochemical systems, the quantity of tokens in a place may be interpreted according to the type of net being used: in the case of a $mathcal{QPN}$, the integer number of tokens in a place is a proxy for the discrete amount of the substance corresponding to that place, emph{i.e.} how many molecules of the substance is present in the system at the current time.

To the original emph{discrete} Petri net model described in Def.ref{def:QPN}, David and Alla cite{david-alla2,david-alla1} added a emph{continuous} model, that is well suited to describe a large class of continuous systems.  

 As can be seen from Def.ref{def:CPN-David}, the distinguishing feature of continuous Petri nets is that both the marking of a place and the weight of an arc are no longer integers, but real positive numbers.

 These nets allow for the modeling of systems that cannot be modeled by ordinary Petri nets: they enable a suitably close model to be obtained, when the number of markings of an ordinary Petri net is too large. Continuous Petri nets can be seen as a relaxation of discrete models, that lead to improvements in complexity and decidability (CITATION NEEDED).

 The continuous framework proves to be particularly well suited for our goal: in the case of biochemical systems modeled under mass-action kinetics, not only does the real system behavior happen in time, but also  atomic actions take place continuously, and their rates typically depend on the continuous concentrations of the involved substances.

Indeed, in a continuous Petri net model of a biochemical network, the switch from integers to positive real numbers w.r.t. place marking can be interpreted as using tokens to model species' emph{concentration} instead of emph{copy numbers}; thus, the non-integer token quantity may correspond to any predefined unit measurement of substance, such as mole, mili-mole, emph{etc…}.

Using continuous Petri nets to model biochemical networks thus seems an appropriate choice, especially considering that an execution semantics can  be defined such that the continuous Petri net becomes the structured description of the ODE system describing the time evolution of species' concentration cite{heiner3,heiner2} – see Def.ref{def:sem_CPN_Heiner}.

Since the introduction of continuous Petri nets by David and Alla, other continuous net models have been presented.

However, in the related work that is of direct interest for this thesis – namely cite{cohen1,cohen2}, cite{gaujal-giua}, cite{silva-recalde} and cite{heiner1,heiner,heiner2}-, the authors use the same definition for the emph{untimed} continuous Petri net as that of David and Alla. However, the above-mentioned articles differ in their definition of emph{timed} continuous Petri net, as we will show below. For ease of notation, we will use the following notationg for the four different models: CGQ for cite{cohen1,cohen2}, GG for cite{gaujal-giua}, SR for cite{silva-recalde}, and HGD for cite{heiner1,heiner,heiner2}.

subsubsection{Semantics}

subsubsection{Incidence matrix and State Equation}label{s:incidence-state}

The dynamic behavior of  Petri nets can also be described (and completely analyzed) using algebraic equations. By doing so, one does not only accentuate the engineering spirit of the Petri net framework – as the behavior of systems studied in engineering is usually described by differential or algebraic equations, but, more importantly, also opens the door to analysis techniques based on linear algebra.

The main idea is to represent the net structure by a matrix, and then derive matrix equations that govern the dynamic behavior of concurrent systems modeled by Petri nets. This structure is called the emph{incidence} matrix in the Petri net community – and emph{stoichiometric matrix} in Systems Biology. We note that the solvability of the incidence matrix equations remains somewhat limited, partly because of the inherent non-deterministic nature of Petri nets, and partly because of the non-negativity integer constraint imposed on the solutions.

begin{definition}[textbf{(Incidence matrix)}]label{def:inc-mat}

The incidence matrix of a Petri net $mathcal{N}=(P,T,f,m_0)$, with $n$ transitions (emph{i.e.}, $mid T mid=n$) and $m$ places (emph{i.e.}, $mid Pmid=m$) is a $mtimes n$ integer matrix $nabla: Ptimes T rightarrow mathbb{Z}$, whose entries are given by $nabla_{ij}= f(j,i) – f(i,j)$.

end{definition}

Thus, the incidence matrix contains a row for each place and a column for each transition, and each of its entries $nabla_{ij}$ (emph{i.e.} the element on the $j^{th}$ column of the $i^{th}$ line) denotes the token change on place $i$ through the firing of transition $j$. As such, a preplace of transition $j$ which is not a postplace of $j$ will have a positive entry corresponding to the arc's multiplicity, a postplace which is not a preplace will have a positive entry with the arc's multiplicity, while the entry of a place which is both a preplace and a postplace will correspond to the difference of the multiplicities of the transition's outgoing and ingoing arcs. One notes that in the latter case, information is lost: the non-ordinary (EXPLAIN WHAT IT IS) net structure cannot be reconstructed uniquely out of the incidence matrix.

end{definition}

% introduce example

% “In a continuous Petri net, the marking of a place is no longer an integer, but a positive real number, called token value, which is interpreted as the concentration of the species modeled by the place. The instantaneous firing of a transition is carried out like a continuous flow.''

subsection{Qualitative Analysis}

As mentioned before, one of the advantages of using Petri nets to model biochemical networks resides in the their support for the qualitative analysis of many properties and problems commonly associated with concurrent systems. The available mathematically founded analysis techniques allow the modeler/user to decide on an exhaustive range of properties, by relying (almost) exclusively on the topology of the underlying net.

Two types of properties can be studied with a Petri net model: those which depend on the initial marking, which will be refered to as emph{marking-dependent} or emph{behavioral} properties, and those which are independent of the initial marking, which will be refered to as emph{structural} properties.

Below, we present the most biologically relevant such properties and their decidability, as reviewed in cite{heiner}.

subsubsection{Behavioral properties}

The first step in analysing a Petri net usually consists in deciding  properties that can be formulated independently of the considered network's functionality.

These can be considered as emph{general behaviour properties}. The three main such properties, which are orthogonal, are emph{boundedness}, emph{liveness} and emph{reversibility}.

In order to formally define these properties, we first need to introduce the concept of reachable markings.

The set of reachable markings of a Petri net $mathcal{N}$ is defined to be $reach(m_0)$, and is also called the emph{state space}.

end{definition}

The nodes of the reachability graph represent all possible states (markings) of the net, and the arcs connecting them are labeled by single transitions, the firing of which causes the related state change.

The reachability graph provides a (interleaving) semantics in terms of a Kripke structure, which may be emph{finite} or emph{infinite}. It can be constructed in an iterative fashion, starting with the initial marking and adding, step by step, all reachable markings.  Nonetheless, even if the reachability graph of a net is finite, its explicit construction is not always feasible, as its size can explode with that of the net. Even worse, if the net is unbounded, there are infinitely many reachable markings, and the construction will not terminate. Therefore, analysis techniques based on the reachability graph are not applicable to them. Instead, a finite graph footnote{which a priori can still suffer from state explosion problem}, called the emph{coverability graph} can be constructed, providing important information about the behavior of the marked net. In particular, this graph can be used to decide boundedness of places and deadness of transitions.

The first step in constructing the coverability graph is to introduce a special symbol $omega$, which can be thought of as “infinite'' – it is used to denote  “arbitrarily many'' tokens inhabiting a place. Then, the arithmetic on natural numbers is extended as follows. For every natural number $n in mathbb{N}$, one has that:

begin{center}

   $omega geq n$

   

   $ omegapm n = omega$

   

   $omega + omega = omega$

   

   $0 cdot omega = 0$

   

   $omega geq omega $

   

   

end{center}

The notion of marking also needs to be extended. A $omega$-marking represents an abstraction of a classical marking:

begin{definition}[textbf{($omega$-marking)}]label{def:omega-mark}

For a Petri net $mathcal{N}=(P,T,f,m_0)$, an $omega$-marking is defined by a function $m_omega:Prightarrow mathbb{N}_0cup{omega}$. As such, in an $omega$-marking, each place $p$ will have either $ninmathbb{N}_0$ tokens, or $omega$, emph{i.e.} arbitrarily many, tokens.

end{definition}

For example, the $omega$-marking $(1,omega,0)$ can be interpreted as the set of (non-$omega$!) markings that have one token in the first place, any number of tokens in the second place, and no tokens in the third place.

This allows us to talk about the concept of emph{covering}.

begin{definition}[textbf{(Covering)}]label{def:covering}

A $omega$-marking $m$ covers another $omega$-marking $m'$, denoted $mgeq m'$ iff $forall pin P: m(p)geq m'(p)$.

We say that $m$ emph{strictly covers} $m'$, denoted $m>m'$ iff $mgeq m'$ and $mneq m'$.

end{definition}

The following algorithm constructs the coverability graph of a Petri net $mathcal{N}=(P,T,f,m_0)$. The ideas behind the algorithm are as follows. The first obvious observation is that if a marking $m'$ covers a marking $m$, then $m'$ enables at least the same transitions as $m$ does. What's more, if there is a sequence of transitions $t_1t_2ldots t_n$ such that $mxrightarrow{t_1t_2ldots t_n}m'$, then there exists a marking $m''$ such that $m'xrightarrow{t_1t_2ldots t_n}m''$. If one denotes with $Delta m=m'-m$, the place-wise difference between $m'$ and $m$footnote{as $m'< m$, $Delta m$ has only non-negative values, of which at least one is non-zero}, then by firing the transition sequence $t_1 t_2 ldots t_n$ repeatedly, an arbitrary number of tokens can be “pumped'' into all the places of $Delta m$ that have a non-zero marking: thus, every non-zero marking of $Delta m$ denotes a place whose marking strictly increases by firing $t_1 t_2 ldots t_n$. Then, the main idea for constructing the coverability graph is to abstract these places using the $omega$ symbol, thus creating an “umbrella'' marking for the places whose markings would otherwise increase indefinitely, thus leading to an infinite number of nodes in the reachability graph. More specifically, the marking $m'$ will be replaced with a $omega$-marking where all the places with non-zero tokens in $Delta m$ are replaced by $omega$. We note that generally, several places may map to $omega$, representing simultaneous growth of the token count on these places.

 %cite{murata}, schwoon at http://www.lsv.fr/~schwoon/enseignement/verification/ws1718/nets.pdf:

The subroutine ADD-OMEGAS$(m,m',V)$ checks if the sequences leading to the marking $m'$ can be repeated, thus strictly increasing the number of tokens in some of the places, and replaces their values with $omega$. The notation $mrightarrow^* m'$ is used when the coverability graph currently contains contains a path (including the empty path) from $m$ to $m'$.

The coverability graph is used to decide on properties such as emph{boundedness}, emph{safety}, emph{reachability} (partially), and existence of emph{dead transitions}, as we will see next.

paragraph{Boundedness}

The first property, emph{boundedness}, prevents overflow in places due to unlimited increase of tokens: informally, a Petri net is said to be $k$-bounded, with $k$ a natural number, if the maximal amount number of tokens in any place of the net is bounded by $k$.

Properties of bounded nets depend on the initial marking $m_0$. An unmarked Petri net is said to be textbf{structurally bounded} if it is bounded in any initial finite marking.

end{definition}

Boundedness (and safety) are decidable properties:

We note that for a emph{bounded} Petri net, the coverability tree is actually the reachability tree.

paragraph{Reachability}

The reachability property is fundamental for studying the dynamic properties of Petri nets.

Assume a net $mathcal{N}=(P,T,f,m_0)$ and $m$ a marking. Then, the emph{reachability problem} for $(mathcal{N},m)$ is to determine whether $min reach(m_0)$.

If the net is not $k$-safe for any $k$, then it has infinitely many reachable markings, and one cannot effectively compute the reachability graph. What's more, the coverability graph offers only limited information w.r.t. coverability. More specifically, if a marking $m$ of a net $mathcal{N}$ is reachable, then it is covered by some node of the coverability graph, but the reverse implication emph{does not hold}:  emph{i.e.} a marking that is covered by some node of the coverability graph is not necessarily reachable.

Nonetheless, it has been shown that the reachability problem is decidablecite{kosaraju,mayr} – however, the complexity of the problem is in general non-elementary, and papers continue to be published on how to do it efficiently.

An easier problem to solve in practice is checking whether $m$ is emph{part of a reachable marking}, emph{i.e.} if it is emph{coverable}, by using the coverability graph.

A necessary (but not sufficient) reachability conditioncite{murata} can be stated in terms of the state equation presented in ref{s:incidence-state}. Suppose that a destination marking $m$ is reachable from $m_0$ through a firing sequence $t=(t_1 t_2ldots t_n)$: $m_0xrightarrow{t_1 t_2ldots t_n} m$. Then, the state equations writes as:

begin{equation}label{eq:state}

    m=m_0+nablacdot t

end{equation}

%with $u_k$ the $k^{th}$ firing or control vector: a T-vector with a single non-zero entry, a 1, in the  position corresponding to $t_k$.

Eq.(ref{eq:state}) can be rewritten as:

begin{equation}label{eq:re-state}

    nabla cdot t =Delta m,

end{equation}

with $Delta m=m-m_0$ and $x=sumlimits_{k=1}^{n}u_k$, the emph{firing count vector}. It is well known that the set of linear algebric equations of ref{eq:re-state} has a solution emph{iff} $Delta m$ is orthogonal to every solution $t$ of the homogeneous system:

begin{equation} label{eq:hom-eq}

    nabla cdot t =0

end{equation}

Then, let $r$ be the rank of $nabla$, which can be partitioned into:

begin{equation}label{eq:part}

nabla=

  begin{bmatrix}

    nabla_{11} & nabla{12} \

    nabla_{21} & nabla{22}

  end{bmatrix},

end{equation}

where $nabla_{12}$ is a non-singular $rtimes r$ square matrix. Then, a set of $(mid Pmid – r)$ linearly independent solutions $y$ for Eq.(ref{eq:hom-eq}) can be given as the $(mid Pmid – r)$ rows of the following $(mid Pmid – r)times r$ matrix, $B_f$:

begin{equation}label{eq:B_f}

B_f=lbrack I_mu :footnote{the : operator denotes matrix concatenation}-nabla_{11}^T(nabla_{12}^T)^{-1}rbrack,

end{equation}

where $I_mu$ is the identity matrix of order $mu = mid Pmid – r$.

Now, the condition that $Delta m$ is orthogonal to every solution for Eq.(ref{eq:hom-eq}) is equivalent to:

begin{equation}label{eq:eq-hom}

    B_fDelta m = 0.

end{equation}

Thus, if $m$ reachable from $m_0$,then the corresponding firing count vector $y$ must exist and Eq.(ref{eq:eq-hom}) must hold.

Therefore, we have the following necessary condition for reachability in an unrestricted Petri netcite{murata2}:

begin{theorem}label{th:nec-reach}

If $m$ is reachable from $m_0$ in a Petri net $mathcal{N}=(P,T,f,m_0)$, then $B_fDelta m=0$.

end{theorem}

The contrapositive of Th.(ref{th:nec-reach}) gives a sufficient condition for non-reachability:

begin{theorem}label{th:non-reach}

In a Petri net $mathcal{N}=(P,T,f,m_0)$,a marking $m$ is not reachable from $m_0$ if their difference is a linear combination of the row vectors of $B_f$, that is, if $Delta m=B_f^T z$, where $z$ is a non-zero $mu$-vector.

end{theorem}

paragraph{Liveness}

The liveness property is closely related to the absence of deadlocks: one seeks to decide whether the modeled system could possibly reach a deadlocked state from the initial marking, whereby a deadlocked state denotes any marking from which none of the allowable sequence of actions will ever involve some part of the system. As such, a Petri net is said to be emph{live}, if no matter what marking has been reached from $m_0$, it is possible to ultimately fire emph{any} transition of the net by firing some further sequence. This effectively means that a live Petri net is guaranteed to be deadlock-free, no matter what firing sequence is chosen.

begin{definition}[textbf{Liveness of a transition}]label{def:liveness}

Given a Petri net $mathcal{N}=(S,T,f,m_0)$, a transition $tin T$ is emph{dead} in a marking $m$ if it is not enabled in any marking $m'$ reachable from $m$: $nexists m' in reach(m)$ s.t. $m'[t$textgreater. Conversely, a transition $t$ is emph{live} if it not dead in any marking reachable from $m_0$.

end{definition}

begin{definition}[textbf{Live Petri net}]label{def:livenet}

Let $mathcal{N}=(S,T,f,m_0)$ be a Petri net. A marking $m$ is dead if there is no transition which is enabled in $m$: $nexists t in T$ s.t. $m[t$textgreater. $mathcal{N}$ is said to be emph{deadlock-free/weakly live} is there are no reachable dead markings, and emph{(strongly) live} if each transition is live.

end{definition}

The liveness and reachability problems have been proven to be equivalentcite{hack}, and thus both decidable. However, verifying this strong property can be impractical and too costly for some systems, which is why it can be relaxed to different levels of liveness, as follows.

A transition $t$ in a Petri net $mathcal{N}=(P,T,f,m_0)$ is said to be:

begin{itemize}

    item dead (emph{$L_0$-live}), if $t$ cannot be fired in any fireable sequence starting in $m_0$

    item emph{$L_1$-live} (potentially fireable, if $t$ can be fired at least once in some fireable sequence starting in $m_0$

    item emph{$L_2$-live}, if for any positive integer $k$, $t$ can be fired at least $k$ times in some fireable sequence starting in $m_0$

    item emph{$L_3$-live}, if $t$ is fired infinitely often in some fireable sequence starting in $m_0$

    item emph{$L_4$-live} or emph{live}, if $t$ is $L_1-live$ for every marking $min reach(m_0)$

end{itemize}

begin{definition}[textbf{$L_k-live$ Petri net}]label{def:lklivenet}

A Petri net $mathcal{N}=(P,T,f,m_0)$ is said to be emph{$L_k-live$} if every transition of the net is $k-live$, with $kin{0,1,2,3,4}$.

end{definition}

We note that $L_4-liveness$ is the strongest condition among the 5 presented, and also corresponds to the liveness of Def.ref{def:livenet}.

It is easy to see that the following implications holds:

begin{equation*}

    emph{$L_4$-liveness}Rightarrow emph{$L_3$-liveness}Rightarrow emph{$L_2$-liveness}Rightarrow emph{$L_1$-liveness}

end{equation*}

paragraph{Reversibility}

begin{definition}[textbf{Reversible Petri net}]label{def:rev}

A Petri net $mathcal{N}$ is said to be reversible is the initial marking can be reached again from each reachable marking: $forall min reach()$

end{definition}

subsubsection{Structural properties}

subsubsection{Model checking of special behavioral properties}

% don't forget to say that liveness can be reduced to boundedness, and is thus a decidable problem

% also, define what a decidable problem means

% talk about conflicts, and introduce parallel execution semantics as being better suited for modeling biology: for description of conflicts, maybe use this fragment, from David et Alla: “The concept of conflict frequently appears. A conflict structure exists when the same place is an input of two or more transitions. An example is given in Figure 1.1a, where place P3 is an input of transitions T3 and T6. If both these transitions are enabled and there is only one token in P3, only one of these transitions can be fired. There is thus a conflict between these transitions. This concept relates to a decision to be taken between two firings. It is found, for example, in the case of sharing of a common resource.'', paired with the max-parallel execution described in Krepska et al – Design Issues for Qualitative Modelling of Biological Cells with Petri Nets

subsubsection{Quantitative Petri Nets}

%INSERT PARAGRAPH ABOUT QUALITATIVE VS QUANTITATIVE PNS; talk about timed qualitative PNs as well, before delving into timed CPNs

As previously mentioned, quantitative Petri nets can be obtained by adding timed information to the qualitative description, in one of two possible ways: deterministic/constant timings or stochastic timings with exponential distribution.

paragraph{NOTE:} Timed Petri nets are used for emph{performance evaluation}. Different ways of adding time to qualitative PNs:

begin{itemize}

    item time associated to places (textbf{P-timed}): when a token is deposited in a place $p_i$, it must remain in this place for at least a time $d_i$, during which it is said to be emph{unavailable}; when the time $d_i$ has elapsed, the token becomes emph{available}

    item includegraphics[scale=0.8]{P-time.png}

    item time associated to transitions (textbf{T-timed}): a timing $d_j$ is associated to transition $t_j$; when transition $t_j$ becomes enabled, it is not fired immediately – instead, it will be fired after the time $d_j$ has elapsed emph{after enabling}, except in case of conflict

    item includegraphics[scale=0.8]{T-time.png}

end{itemize}

% give examples from David-Alla book, pp. 99-100: both examples are on QPNs; for Timed Continuous PNs, see chapter 5

There are also Time (NO D!) Petri nets: models in which a timing has a minimal and a maximal value (intervals instead of single values). While in a Timed PN, a duration – either deterministic or random – is associated with each transition or place, in a textbf{time PN} a emph{time interval} $[a,b]$ is used.

begin{itemize}

    item textbf{T-time}: an interval $[a_t,b_t]$ is associated with each transition $t$; if $t$ becomes enabled at time $tau$, then it will be emph{certainly fired} in the interval $[tau+a_t,tau+b_t]$, except if it is disabled by the firing of another transition during this time interval

    item textbf{P-time}: the interval $[a_p,b_p]$ is associated with each place $p$; a token deposited in $p$ at time $tau$ emph{must be taken out} (by firing an output transition) between the earliest leaving time $tau+a_p$ and the latest leaving time $tau+b_p$; before $tau + a_p$, the token is unavailable; after $tau + b_p$ the token is dead

end{itemize}

The stochastic Petri net description $mathcal{SPN}$ is (always?) T-timed

begin{definition}[textbf{Stochastic Petri net ($mathcal{SPN}$), Syntax – Heinercite{heiner}}] A (biochemically interpreted) stochastic Petri net is a 5-tuple $mathcal{SPN}_{Bio}=(P,T,f,v,m_0)$, where:

begin{itemize}

    item $P$ and $T$ are finite, non-empty and disjoint sets; $P$ is the set of places, and $T$ is the set of transitions

    item $f:((Ptimes T)bigcup(Ttimes P))rightarrow mathbb{N}_0$ defines the set of directed arcs, weighted bt non-negative integer values

    item $v:Trightarrow H$ is a function that assign a stochastic hazard function $h_t$ to each transition $t$, such that $H=bigcuplimits_{tin T}{h_tmid h_t:mathbb{N}_0^{mid^bullet tmid}rightarrow mathbb{R}^+}$ is the set of all stochastic hazard functions, and $v(t)=h_t$ for all transitions $tin T$

    item $m_0:Prightarrow mathbb{N}_0$ gives the initial marking

end{itemize}

Citation from cite{heiner}: “The stochastic hazard function $h_t$ defines the marking-dependent transition rate $lambda_t(m)$ for the transition $t$. The domain of $h_t$ is restricted to the set of pre-places of $t$, to enforce a close relation between network structure and hazard functions. Therefore, $lambda_t(m)$ actually depends only on a sub-marking.''

end{definition}

%AS MENTIONED BEFORE, THE PASSAGE FROM QLT TO QNT IS DONE BY ADDING TIMED INFORMATION —> TALK ABOUT CONTINUOUS VS STOCHASTIC, AND THE LINK BETWEEN THE TWO (SEE HEINER, P.218) // TALK ABOUT STOCHASTIC PNS AS WELL, THEN ABOUT THE RELATION BETWEEN CONTINUOUS AND STOCHASTIC

The first definitions of a timed continuous Petri net we choose to present are those of the CGQ and GG models. In both models, a release delay $tau_p$ is associated to each place $p$, representing the time that the “fluid'' (tokens) that enter(s) will spend in the place, before it can be available to fire the output transitions. On the contrary, no delay is associated to the transitionsfootnote{an equivalent model can be created by associating a release delay to every transition}.

begin{definition}[textbf{Continuous Timed Petri Net with Multipliers ($mathcal{CTPN}$), Syntax – CGQcite{cohen1,cohen2}}]label{def:CTPN-CGQ-GG}

A Continuous Timed Petri Net with Multipliers ($mathcal{CTPN}$) is a 5-tuple $mathcal{N}=(P,T,M,m_0,tau)$, where:

begin{itemize}

    item “$P$ is a finite set whose elements are called emph{places}; places should be seen as reservoirs, with input and input pipes, in which a  liquid flows according to a dynamics described later on''

    item $T$ “is a finite set whose elements are called emph{transitions}; transitions mix flows coming from the places immediately upstream, in given proportions and instantaneously, and pour the resulting liquid in downstream places, also in given proportions''

    item $f:((Ptimes T)bigcup(Ttimes P))rightarrow mathbb{R}_0^+$ denotes the weight of the arcs; the equivalent interpretation given in cite{cohen2} reads “the multiplier $f(p,t)$ (resp. $f(t,p)$) gives the number of edges from place $p$ to transition $t$ (resp. from transition $t$ to place $p$). We allow non-integer number of edges; the zero value for $f$ denotes the absence of edge (arc)[…] Multipliers determine the mixing and dispatching proportions as follows: transition $t$ takes $f(p,t)$ molecules of fluid from each upstream place $p$, and produces $f(t,p)$ molecules of fluid in each downstream place of $t$. textbf{The mixing process at transition $t$ continues as long as emph{all} the upstream places are non-empty}. When a place is upstream several transitions, we assume that there is a routing mechanism fixing which proportions of the flow should be sent to the concurrent downstream transitions.''

    item $m_0:Prightarrow mathbb{R}_0^+$ represents the initial marking

    item $tau:Prightarrow mathbb{R}_0^+$ represents the holding times; “$tau_p$ gives the sojourn time in place $p$, emph{i.e.} the minimal time from the entry of a molecule in place $p$ to its availability for the firing of of downstream transitions. %This delay may be caused for example by a preparation time required for heating or homogenizing the fluid.

    ''

end{itemize}

end{definition}

The only difference between the syntaxes of the CQG model and the GG model considered explicitly in cite{gaujal-giua}, is that in the latter the delays are defined to be natural numbers:

begin{definition}[textbf{Deterministic Continuous Timed Petri Net ($mathcal{DTCPN}$), Syntax – GGcite{gaujal-giua}}]label{def:CTPN-GG}

“A deterministic timed Continuous Petri Net is a pair $(mathcal{N},delta)$, where $mathcal{N}$ is a $mathcal{CPN}$ footnote{as presented in Def.ref{def:CPN-David}}, and $delta:Prightarrow mathbb{N}$, called release delay, assigns a non-negative fixed duration to each place. The mark that enters place $p$ at time $tau$ must remain within the place for a time greater or equal to $delta(p)$ before it becomes available for firing an output transition.''

end{definition}

Nonetheless, the authors note that “by changing the time unit'', their method and results still hold if delays are represented by rational numbers. %also, infinite server semantics —> I think this is a typo, cause infinite server = variable speed, whereas they say the “delay is the same, no matter how much mark is actually present in the place''.

%infinite server = variable speed

%finite server = constant speed

By contrast, a rather different continuous Petri net models has been presented in the SR papers. Therein, as in the model of David and Allacite{david-alla2}, the timing of the net is given under the form of “speed parameters'' for all transitions. The authors postulate that an interesting way of introducing time in emph{discrete} Petri nets is to assume that emph{transitions}, instead of places, are timed with exponential probability functions. This leads to a purely markovian performance model, for which – due to the memoryless property-, the state of the underlying Markov chain is represented by the marking of the Petri net itself. Then, for the timing interpretation of continuous Petri nets, a first order/deterministic approximation of the discrete case is used, assuming the delays associated to the firing of transitions can be approximated by their mean valuesfootnote{the authors note that for “congested'' systems, the central limit theorem ensure that this approximation is valid for any prob. distr. function}.

% infinite server semantics

begin{definition}[textbf{Timed Continuous Petri Net ($mathcal{TCPN}$), Syntax – SRcite{silva-recalde}&DAcite{david-alla1,david-alla2}}]label{def:CPN_SR_DA}

A timed continuous Petri net is a 5-tuple $mathcal{N}=(P,T,f,m_0,lambda)$, where:

begin{itemize}

    item $P$ and $T$ are the finite, non-empty, disjoint sets of places ($P$), respectively transitions ($T$)

    item $f:((Ptimes T)bigcup(Ttimes P))rightarrow mathbb{R}_0^+$ defines the set of directed arcs, weighted by non-negative real values

    item $m_0:Prightarrowmathbb{R}_0^+$ denotes the initial marking, which is composed of non-negative real values

    item $lambda:Trightarrowmathbb{R}_0^+$ denotes the (maximal) firing speeds associated to each transition

end{itemize}

end{definition}

% include the paragraph about infinite server semantics from GG paper, section 1.1 A different continuous Petri net model

%say somewhere that the heiner paper is more focused on applying PNs to bicochemical reaction networks, and not a pure PN paper

Similarly, in the definition of cite{heiner}, the continuous Petri Net ($mathcal{CPN}$) model not only replaces the discrete values of species %(represented by an integer-valued marking function $m:Prightarrow mathbb{N}_0)$

with continuous values %- thus describing a switch from a description of species' behavior at the level of individual molecules to a description of the overall behavior via emph{concentrations}

footnote{in this sense, the discrete description of concentration levels can be regarded as abstracting over the continuous description of concentrations}, but also introduces timed information on transitions instead of places, rendering the model emph{quantitative}. The timed information is introduced by associating a deterministic reaction rate to each transition, which in turn allows the continuous model to be represented as a set of ordinary differential equations (ODEs), describing the evolution of species' concentrations. % We note that the state space of such models are continuous and linear; as such, they can be analysed using linear temporal logic (LTL) methods

begin{definition} [textbf{Continuous Petri Net ($mathcal{T-CPN}$), Syntax – Heinercite{heiner}}]label{def:CPN_Heiner}

A continuous Petri net is a 5-tuple $mathcal{T-CPN}=(P,T,f,v,m_0)$, where:

begin{itemize}

    item $P$ and $T$ are finite, non-empty, disjoint sets, that denote the continuous set of places ($P$), respectively transitions ($T$)

    item $f:((Ptimes T)cup(Ttimes P))rightarrow mathbb{R}_0^+$ defines the set of directed arcs, weighted by non-negative real values

    item $v:Trightarrow H$ is a function that assigns a emph{firing rate function} $h_t$ to each transition $t$, with $H:=bigcuplimits_{tin T}{h_tmid h_t:mathbb{R}^{mid ^bullet tmid}rightarrow mathbb{R}}$ the set of all firing rate functions, and $v(t)=h_t$ for all transitions $tin T$

    item $m_0:Prightarrowmathbb{R}_0^+$ gives the initial marking

end{itemize}

end{definition}

%A place can hold an arbitrary number of emph{tokens}. In the case of $mathcal{QPN}$s

subsection{Semantics of PNs – CHANGE, MOVE TO PREVIOUS SECTIONS}

The definitions presented so far deal exclusively with the syntax/static aspects of Petri nets. The semantics/behavior of a net is defined by a firing rule, which consists of two parts: the precondition and the firing itself. The firing of a transition moves tokens from its pre-places to its post-places, while possibly changing the number of tokens: it “consumes'' tokens from the pre-places, and “produces'' tokens in its post-places, just as a chemical reaction consumes reactants in order to create products.

In the case of qualitative Petri nets ($mathcal{QPN}$), as presented in Def.ref{def:QPN}, the standard semantic does not associate a time with neither transitions nor with the sojourn of tokens at places, thus rendering the description time-free. Consequently, the qualitative analysis, which we present in the next subsection, considers all possible behavior of the system, under any timing.

begin{definition}[textbf{($mathcal{QPN}$, Firing rule)}] label{def:firing_rule}

Let $mathcal{N}=(P,T,f,m_0)$ be a Petri net. A transition $tin T$ is emph{enabled} in a marking $m$, written as $m[trangle$, if $forall p in ^bullet t, m(p)geq f(p,t)$. A transition $t$ may (but is not emph{forced} to) fire in marking $m$, if it is enabled. This firing yields a new marking $m'$, with $forall p in P, m'(p)=m(p)-f(p,t)+f(t,p)$.  For quantitative (untimed) Petri nets, the firing happens emph{atomically/instantaneously}: it does not consume any time.

end{definition}

%For convenience purposes, we can write  $mxrightarrow{t} m'$ to denote the  firing of transition $t$ in marking $m$. Conversely, we say that a marking $m'$ is emph{reachable in one step} from a marking $m$ if there exists an transition $t$ enabled in $m$ such that $mxrightarrow{t} m'$; it is emph{reachable}  

If the firing of (the enabled) transition $t$ in marking $m$ changes the system state into marking $m'$, it is common practice to write $mxrightarrow{t}m'$. This notation is naturally extended to emph{sequences of transitions}: one writes $mxrightarrow{t_1 t_2ldots t_n}m'$ as an abbreviation of $mxrightarrow{t_1}m_1xrightarrow{t_2}m_2ldotsxrightarrow{t_n}m'$.

The repeated firing of transitions establishes the behavior of the net. In the emph{interleaving execution semantics}, only one transition fires at a time: in each step, one of the enabled transitions is selected non-deterministically, then fired. If there are no more enabled transitions, the net deadlocks; otherwise, the procedure repeats. This semantics contains all possible interleavings of transitions, and as such describes the textbf{totally asynchronous behavior} of the net.  The interleaving semantics of Petri nets can be formally described using a variation of the transition systems used in model checking to represent the behavior of a discrete system: a emph{Kripke structure}, which consists in a graph whose nodes represent the reachable states of the system and whose edges represent state transitions. What's more, a labelling function maps each node to a set of properties that hold in the corresponding state.

About this essay:

If you use part of this page in your own work, you need to provide a citation, as follows:

Essay Sauce, Using Petri Nets for Modeling Complex Biological Systems. Available from:<https://www.essaysauce.com/sample-essays/2018-11-5-1541420568/> [Accessed 05-05-26].

These Sample essays have been submitted to us by students in order to help you with your studies.

* This essay may have been previously published on EssaySauce.com and/or Essay.uk.com at an earlier date than indicated.