<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Full structural model refinement as type refinement of colored Petri nets</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Diana-Elena Gratie</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Ion Petre</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>dgratie</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>ipetreg@abo.fi</string-name>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Computational Biomodeling Laboratory</institution>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Department of Computer Science, A ̊bo Akademi University Joukahaisenkatu</institution>
          <addr-line>3-5, FIN-20520 Turku</addr-line>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Turku Centre for Computer Science</institution>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2015</year>
      </pub-date>
      <volume>1373</volume>
      <fpage>70</fpage>
      <lpage>84</lpage>
      <abstract>
        <p>In this paper we propose a method for implementing a full structural model refinement of a (biological) model represented as a (colored) Petri net. We build on the full structural data refinement definition of C. Gratie and Petre, and the type refinement of colored Petri nets introduced by Charles Lakos. Given a (biological) reaction-based model and a desired full structural refinement of it, we propose a general coloring scheme for a colored Petri net implementation of the model and give an algorithm for adding the refinement details in the Petri net model. We then prove that the construction is a type refinement, and that by our choice of color sets the resulting refined colored Petri net implements the full structural refinement of the given model.</p>
      </abstract>
      <kwd-group>
        <kwd>Colored Petri nets</kwd>
        <kwd>type refinement</kwd>
        <kwd>reaction network</kwd>
        <kwd>structural model refinement</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        Model refinement, the process of adding more details to an existing model, is
an important step in the model building cycle. Many refinement methods have
been proposed for different modeling frameworks and formalisms, e.g., action
systems [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ], Petri nets [
        <xref ref-type="bibr" rid="ref11 ref17">17, 11</xref>
        ], kappa [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], biochemical reaction networs [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ],
πcalculus [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ], etc. We bridge here two modelling frameworks and their respective
ways of implementing refinement, namely reaction network models with
structural refinement and colored Petri nets with type refinement.
      </p>
      <p>
        Type refinement of colored Petri nets has been introduced in [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], and consists
of refining the color sets of places such that the new color sets are polymorphic
with the initial color sets. The authors see this as adding some supplementary
data to a given data type represented as a color set, e.g. include in the entry of
a book in a library not only its title and authors, but also the maximum number
of days it can be borrowed.
      </p>
      <p>
        The concept of (full) structural refinement of a reaction network (bio-)model
has been introduced in [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] (where it was called data refinement), with a focus on
an ODE-based representation of a model and its refinement. A sufficient
condition for the refined model to preserve the fit of the original one was discussed
in [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] for mass-action models. We follow in this paper the terminology of [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. We
use the main concepts of species refinement and (full) structural refinement for
models represented as (colored) Petri nets, and give a methodology for
implementing full structural refinements as type refinements of colored Petri nets. An
approach to implementing model refinement in the colored Petri net framework
has been exemplified for a model of the eukaryotic heat shock response
mechanism in [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ]. The authors present there two coloring schemes that can be used
for the particular refinement they were implementing. We derive here a general
coloring scheme for model refinement that can be used when implementing a full
structural data refinement of a model.
      </p>
      <p>We assume the reader is familiar with (colored) Petri nets, but we recall some
of the basic definitions so that the paper is self-contained.</p>
      <p>The paper is structured as follows: in Section 2 we present reaction network
(also called reaction-based) models and the notions of species refinement and
(full) structural refinement of such models, with a discussion on the explosion of
the model induced by a refinement, in terms of number of species and reactions
that the initial model refines to. In Section 3 we recall some notions and notations
for Petri nets and their colored version, give a coloring scheme and discuss how
a reaction network model can be implemented as a (colored) Petri net. We
continue in Section 4 with proposing a type refinement based on a refinement
relation ρ and prove that the chosen type refinement results in a colored Petri
net that is the implementation of the full structural ρ−refinement of the initial
model. We draw our conclusions and discuss about the model size and successive
refinements in Section 5.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Model Refinement</title>
      <p>
        In systems biology, model refinement comprises two aspects: the structural side
and the quantitative side. The structural side handles the newly introduced
species and presents a methodology for computing the new set of reactions,
while the quantitative side deals with changes in the kinetic constants of the
model and ways of setting the new parameters in such a way that previous data
is used. Quantitative model refinement was introduced in [
        <xref ref-type="bibr" rid="ref15 ref4">15, 4</xref>
        ] for rule-based
models, and for reaction-based models in [
        <xref ref-type="bibr" rid="ref13 ref7">13, 7</xref>
        ]. We recall here the structural
refinement of reaction network models, as presented in [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] and based on the
terminology of [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. We are only interested in the structural refinement, so we
will not focus on any quantitative details.
      </p>
      <p>A reaction-based model M consists of a finite set of species S = {A1, . . .,Am}
and a finite set of reactions R = {r1, . . . , rn} using only species in S . A reaction
rj ∈ R can be formulated as a rewriting rule of the form:
krj
rj : c1,j A1 + . . . + cm,j Am −−→ c01,j A1 + . . . + c0m,j Am,
(1)
with the meaning that ci,j copies of species Ai are consumed by the reaction and
c0i,j copies of species Ai are produced, i = 1..m. Constants c1,j , . . . , cm,j , c01,j , . . . ,
c0m,j ∈ N are the stoichiometric coefficients of rj and krj ≥ 0 is the kinetic rate
constant of reaction rj . We denote by rj− = (c1,j , . . . , cm,j ) the vector of
stoichiometric coefficients on the left hand side of the reaction, for the species being
consumed in reaction rj , and by rj+ = (c01,j , . . . , c0m,j ) the vector of stoichiometric
coefficients on its right hand side, those of species being produced. Without a
risk of ambiguity, reaction rj can then be written as rj− −k−r→j rj+.
Example 1. A biological system with two irreversible reactions that encode the
dimerization of a molecule P can be represented as a reaction-based model M =
(S , R) where S = {P, P2} and R = {2P → P2, P2 → 2P }. P represents the
monomeric molecule and P2 is the dimer that is formed from two P monomers.</p>
      <p>Data refinement is the type of refinement of a model that consists in adding
details related to the species of the model, i.e., it replaces a species with several of
its subspecies. The subspecies may account for post-translational modifications
of macromolecules, or distinguish between possible variants of some trait.</p>
      <p>
        All species are considered to be refined at once, thus each species in an initial
model is replaced by a non-empty set of refined species to yield a refined model,
as dictated by a species refinement relation ρ. This is formalized in Definition 1.
Definition 1 ([
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]). Given two sets of species S and S 0, and a relation ρ ⊆
S ×S 0, we say that ρ is a species refinement relation iff it satisfies the following
conditions:
1. for each A ∈ S there exists A0 ∈ S 0 such that (A, A0) ∈ ρ;
2. for each A0 ∈ S 0 there exists exactly one A ∈ S such that (A, A0) ∈ ρ.
We denote ρ(A) = {A0 ∈ S 0 | (A, A0) ∈ ρ}. We say that all species A0 ∈ ρ(A)
are siblings.
      </p>
      <p>Intuitively, each species A ∈ S is replaced in the refined model with the set
of species ρ(A). For the case where ρ(A) is a singleton set, one may consider
that species A does not change, even if its refined counterpart is denoted by a
different name in S 0; such a refinement of a species is called trivial.</p>
      <p>Next we recall the definitions of refinement of a vector (of stoichiometric
coefficients), of a reaction, and of a reaction-based model.</p>
      <p>
        Definition 2 ([
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]). Let S = {A1, . . . , Am} and S 0 = {A01, . . . , A0p} be two sets
of species, and ρ ⊆ S × S 0 a species refinement relation.
1. Let α = (α1, . . . , αm) ∈ NS and α0 = (α10, . . . , αp0) ∈ NS 0 . We say that α0 is
a ρ-refinement of α if
      </p>
      <p>X
1≤j≤p
A0j∈ρ(Ai)</p>
      <p>αj0 = αi, for all 1 ≤ i ≤ m .</p>
      <p>We denote by ρ(α) the set of all ρ−refinements of α.
2. Let r : r− → r+ and r0 : r0− → r0+ be two reactions over S and S 0, resp.</p>
      <p>We say that r0 is a ρ-refinement of r if</p>
      <p>r0− ∈ ρ(r−) and r0+ ∈ ρ(r+) .</p>
      <p>We denote by ρ(r) the set of all ρ−refinements of r. Note that ρ(r) = ρ(r−)×
ρ(r+).
3. Let M = (S , R) and M 0 = (S 0, R0) be two reaction-based models, and
ρ ⊆ S × S 0 a species refinement relation. We say that M 0 is a ρ-structural
refinement of M if</p>
      <p>R0 ⊆
[ ρ(r) and ρ(r) ∩ R0 6= ? ∀r ∈ R .</p>
      <p>r∈R
In case R0 = Sr∈R ρ(r), we say M 0 is the full structural ρ-refinement of M ,
denoted M 0 = Mρ.</p>
      <p>Model explosion. Note that a vector of coefficients α0 ∈ NS that respects the
sum condition P 1≤j≤p αj0 = αi, for all 1 ≤ i ≤ m can be seen as a way of</p>
      <p>A0j∈ρ(Ai)
choosing αi elements from a bag containing elements of |ρ(Ai)| types, where the
selection may contain several elements of the same type. The total number of
different ways in which one may choose k elements from a bag with elements of
nthetyspoe-sca(lalesdsummuinltgiseentocuogeffihccioepnite,s nofmeualcthichtyoposeeakre. available) is nk = n+kk−1 ,
A reaction rj of the form (1) can refine to Q
1≤i≤m |ρc(iA,ji)| · |ρc(0iA,ji)| different
reactions. The number stems from the number of possible ways of choosing ci,j
(c0i,j , resp.) copies from the possible refinements of a species Ai ∈ S . The number
of reactions in a full structural ρ−refinement of a model with n reactions is thus:
X</p>
      <p>Y
1≤j≤n 1≤i≤m
|ρ(Ai)|
ci,j
·
|ρ(Ai)|
c0i,j
.</p>
      <p>Example 2. Consider the reaction-based model M = (S , R) from Example 1.
One possible refinement for this model is to consider that molecule P can be in
two states: acetylated (P (1)) and non-acetylated(P (0)). Then the dimer P2 could
have none (P2(0)), one (P2(1)) or both (P2(2)) of its composing monomers
acetylated. Consider a set of species S 0 = {P (0), P (1), P (0), P2(1), P2(2)}. A relation
2
ρ ⊆ S × S 0 that would capture such a refinement is ρ = {(P, P (0)), (P, P (1)),
(P2, P (0)), (P2, P2(1)), (P2, P2(2))}. One can easily see that ρ is a refinement
rela2
tion, based on Definition 1.</p>
      <p>A full structural ρ-refinement of M is the model M 0 = (S 0, R0), where R0 =
{2P (0) → P2(0), 2P (0) → P2(1), 2P (0) → P2(2),
2P (1) → P2(0), 2P (1) → P2(1), 2P (1) → P2(2),
P (0) + P (1) → P2(0), P (0) + P (1) → P2(1), P (0) + P (1) → P2(2),
PPP222(((012))) →→→ 222PPP (((000))),,, PPP222(((012))) →→→ 222PPP (((111))),,, PPP222(((012))) →→→ PPP (((000))) +++ PPP (((111))),,}.</p>
      <p>Modeling Biological Systems as (Colored) Petri Nets
Many biological models are implemented as Petri nets due to the graphical,
intuitive formalism, and the many simulation strategies they offer. We start our
discussion over refinement and implementations of models as Petri nets from the
standard version of Petri nets. We then continue with colored Petri nets.
3.1</p>
      <sec id="sec-2-1">
        <title>Preliminaries</title>
        <p>
          We assume the reader is familiar with the basic notions and notations related
to Petri nets and we refer to [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ], [
          <xref ref-type="bibr" rid="ref14">14</xref>
          ] for details. We also assume that the reader
is familiar with constructing a standard Petri net associated to a reaction-based
model; we refer to [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ] for details.
        </p>
        <p>
          In order to implement a reaction-based model as a Petri net, one represents
each species via a place, and each reaction via a transition having as pre-places
the places representing the reactants of the reaction, and as post-places the
places representing the products of the reaction, with each arc expression being
the stoichiometry of the represented species in that reaction, see [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ].
Definition 3 (Implementation of a reaction network model as a Petri
net). Given a reaction-based model M = (S , R), and a Petri net N = (P, T, A,
f, M0) with |S | = |P | and |R| = |T |, we say that the Petri net N structurally
implements model M if there exists a bijection δ : S ∪ R → P ∪ T mapping
species of M into places of N and reactions of M into transitions of N (δ(x) ∈ P ,
for all x ∈ S and δ(x) ∈ T for all x ∈ R) such that for every reaction rj ∈ R
and its corresponding transition t = δ(rj ) and for every species Si ∈ S the
following conditions hold:
1. if ci,j &gt; 0 then (δ(Si), t) ∈ A and f (δ(Si), t) = ci,j , otherwise (δ(Si), t) 6∈ A;
2. if c0i,j &gt; 0 then (t, δ(Si)) ∈ A and f (t, δ(Si)) = c0i,j , otherwise (t, δ(Si)) 6∈ A.
Example 3. An example of a Petri net structural implementation of the model
described in Example 1 is given in Figure 1. The bijection δ is defined such that
δ(P ) = P , δ(P2) = P 2, δ(2P → P2) = T fw, δ(P2 → 2P ) = T bw. One can
easily see that the arc multiplicities respect the two conditions in Definition 3.
        </p>
        <p>P
2</p>
        <p>T fw
T bw
2</p>
        <p>P 2</p>
        <p>
          There exist two ways of defining colored Petri nets, one proposed by Kurt
Jensen in [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ], and an equivalent one adapted from the first definition, by Charles
Lakos in [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ]. In this paper we consider the definition of colored Petri nets
proposed by Lakos because it does not explicitly include transition guards (that
we are not using in our construction) and because of the definition of type
refinement of colored Petri nets proposed in [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ]. We use the following less well
known notations: Σ denotes a universe of non-empty color sets with an associated
partial order &lt;:⊆ Σ × Σ indicating that values from one color set X with
X &lt;: Y can be used in contexts expecting values of Y . ΠY is a projection
function mapping values of X into values of Y . ΦΣ = {X → Y | X, Y ∈ Σ}
denotes the functions over Σ, and μX = {X → N} denotes the multisets over
X. E−, E+ : Y → M represent the incremental negative and positive, resp.
changes of the occurrence of a step Y , and are given by the linear extension of:
E−((t, c)) = Pp∈P {p} × E((p, t))(c) and E+((t, c)) = Pp∈P {p} × E((t, p))(c),
∀t ∈ T, ∀c ∈ C(t).
        </p>
        <p>
          Definition 4 ([
          <xref ref-type="bibr" rid="ref11">11</xref>
          ]). A colored Petri net is a tuple N = (P, T, A, C, E, Σ, M,
Y, M0) where:
– P is the finite set of places;
– T is the finite set of transitions, such that P ∩ T = ?;
– A ⊆ P × T ∪ T × P is the finite set of arcs;
– Σ is a universe of non-empty color sets with an associated partial order;
– C : P ∪ T → Σ is the color set function, assigning color sets to places and
(modes) of transitions;
– E : A → ΦΣ is the arc expression function, where E(p, t), E(t, p) : C(t) →
μC(p);
– M = μ{(p, c) | p ∈ P, c ∈ C(p)} is the set of markings;
– Y = μ{(t, c) | t ∈ T, c ∈ C(t)} is the set of steps;
– M0 the initial marking, with M0 ∈ M.
        </p>
        <p>Arc expressions may contain variables, which are seen as symbols whose value
is determined by the color (mode) of the transition the arc is connected with.</p>
        <p>
          For any colored Petri net with finite color sets there exists a standard Petri
net that is behaviorally equivalent, see [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ]. The process of transforming a colored
Petri net into its standard Petri net equivalent is called unfolding. We give in
the following the definition of the unfolding of a colored Petri net as adapted
from [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ] to the notations we use.
        </p>
        <p>
          Definition 5 ([
          <xref ref-type="bibr" rid="ref10">10</xref>
          ]). Given a colored Petri net N = (P, T, A, Σ, C, E, M, Y,
M0), its unfolded Petri net is denoted by N ∗ = (P ∗, T ∗, A∗, f ∗, M0∗), where:
– P ∗ is the set of place instances, pairs (p, c) with p ∈ P and c ∈ C(p);
– T ∗ is the set of transition instances, pairs (t, c) with t ∈ T and c ∈ C(t);
– A∗ = {((p, c), (t, c0)) ∈ P ∗ × T ∗ | E((p, t))(c0)(c) &gt; 0} ∪{((t, c0), (p, c)) ∈
        </p>
        <p>T ∗ × P ∗ | E((t, p))(c0)(c) &gt; 0};
– f ∗((p, c), (t, c0)) = E((p, t))(c0)(c), ∀((p, c), (t, c0)) ∈ A∗ and</p>
        <p>f ∗((t, c0), (p, c)) = E((t, p))(c0)(c), ∀((t, c0), (p, c)) ∈ A∗;
– M0∗((p, c)) = M0(p, c).</p>
      </sec>
      <sec id="sec-2-2">
        <title>Coloring a Standard Petri Net</title>
        <p>A colored Petri net representation of a model can be obtained from a standard
Petri net implementation of the model by assigning to each place a color set with
just one element. We propose here a general coloring scheme that uses record
color sets (i.e. a data structure containing a finite collection of fields, each with
a name and an associated data type) and can easily be extended to incorporate
refinement details by adding new fields. Each place is assigned its own record
color set with one field that has exactly one value. Each transition is assigned
a color set that is a multiset of color sets of its pre- and post-places, where the
multiplicity of each color set is given by the multiplicity of the arc connecting
the place and the transition. It is basically a multiset with elements of different
types. For example, the color set CS T fw in Figure 2 is a collection of two
elements of type CS P and one element of type CS P2. Note that this is not the
only possible coloring scheme and moreover it may not be optimal (in terms of
number of variables and data structures used), but it is general. One may use
integers, records, sets, Cartesian products, or whatever coloring scheme better
suits the system being modeled.</p>
        <p>A further change that is required when turning a standard Petri net into a
colored one is assigning to each arc a with arc function f (a) = k where k ∈ N
the expression E(a) = v1 + + . . . + +vk where ++ denotes multiset addition and
vi :C(p) are typed variables with i = 1..k, and p is the place of arc a. Intuitively,
we use a different variable for each token that may traverse an arc. The total
number of variables needed in a model is thus Pa∈A f (a). A further change is in
the initial marking, where each place p is assigned the same number of tokens as
in the standard network, and all tokens have as color the one color in p’s color
set. We call such a colored Petri net the trivial coloring of the initial network.</p>
        <p>We denote by C(x) the one color in the color set of a place/transtition x. In
order to identify precisely the variables used in the expression of an arc (x, y) ∈ A
we denote the variables by vx,y,i, where i = 1..f ((x, y)). We also use the shorthand
notation va,i to denote the i-th variable on arc a ∈ A.</p>
      </sec>
      <sec id="sec-2-3">
        <title>Definition 6 (Trivial coloring of a Petri net). Given a standard Petri net</title>
        <p>N = (P, T, A, f, M0), we call a trivial coloring of N a colored Petri net T (N ) =
(P, T, A, Σ, C, E, M, Y, M00 ) such that:
– Σ = Sp∈P Cp ∪ St∈T Ct where Ct : {Cp | p ∈ P } → N is a multiset such
that:</p>
        <p>Ct(Cp) =
0


f ((p, t))
(p, t) 6∈ A and (t, p) 6∈ A
(p, t) ∈ A and (t, p) 6∈ A
;
f ((t, p)) (p, t) 6∈ A and (t, p) ∈ A


f ((p, t)) + f ((t, p)) otherwise
– C : P ∪ T → Σ, such that C(x) is a record color set defined as above if x ∈ P
and a multiset defined as above if x ∈ T ;
– E(a) = ++P1≤i≤f(a) va,i = va,1 + + · · · + +va,f(a), for all a ∈ A, where va,i :</p>
        <p>C(p) with p being the place of arc a;
– M is the set of markings;
– Y is the set of steps;
– M00 (p) = M0(p)`C(p), for all p ∈ P .</p>
        <p>Example 4. An example of a trivial coloring of the Petri net described in
Example 3 is given in Figure 2.</p>
        <p>CS P</p>
        <p>P</p>
      </sec>
      <sec id="sec-2-4">
        <title>Definition 7 (Implementation of a reaction-based model as a colored</title>
        <p>Petri net). We say that a colored Petri net N structurally implements a given
reaction-based model M iff N ∗, the unfolding of N , structurally implements
model M in the sense of Definition 3.</p>
        <p>Proposition 1. The unfolding T (N )∗ of a trivial coloring T (N ) of a standard
Petri net N is equivalent to the initial net N (as every color set has exactly one
color).</p>
        <p>Proposition 2. If a standard Petri net N structurally implements a
reactionbased model M , then its trivial coloring T (N ) structurally implements the same
model M .</p>
        <p>Proof. By Proposition 1, N and T (N )∗ are equivalent, thus the unfolding of
T (N ) structurally implements model M and, by Definition 7, T (N ) structurally
implements M .
3.3</p>
      </sec>
      <sec id="sec-2-5">
        <title>Type Refinement of Colored Petri Nets</title>
        <p>
          Refinements of Petri nets have been a subject of interest for many years. In
particular, we are concerned here with the work of Charles Lakos, who has identified
and formalized three types of refinements: type refinement, subnet refinement and
node refinement, see [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ] for details. The concepts of type and node refinement
have been further extended by Choppy et. al., see [
          <xref ref-type="bibr" rid="ref3">3</xref>
          ]. We prove in this paper that
a full structural refinement of a model can be implemented via a type refinement
of the colored Petri net representing the model.
        </p>
        <p>
          We recall now the definition of type refinement of a colored Petri net as it
was proposed in [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ].
        </p>
        <p>
          Definition 8 ([
          <xref ref-type="bibr" rid="ref11">11</xref>
          ]). Let N and N 0 be two colored Petri nets. A morphism
Φ : N → N 0 captures a type refinement of a colored Petri net if:
1. Φ is the identity function on P, T, A;
2. C(x) &lt;: Φ(C)(x), for all x ∈ P ∪ T ;
3. Φ(1 `(x, c)) = 1`(x, ΠΦ(C)(x)(c)) for all x ∈ P ∪ T and for all c ∈ C(x);
4. Φ(E−(1`(t, m)))(p) = ΠΦ(C)(p)(E(p, t)(m)) = Φ(E)(p, t)(ΠΦ(C)(t)(m)), for
all (p, t) ∈ A and for all (t, m) ∈ Y;
5. Φ(E+(1`(t, m)))(p) = ΠΦ(C)(p)(E(t, p)(m)) = Φ(E)(t, p)(ΠΦ(C)(t)(m)), for
all (t, p) ∈ A and for all (t, m) ∈ Y.
        </p>
        <p>
          A morphism that captures a type refinement is a system morphism, see [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ],
which means that it is a behavior-respecting mapping of two colored Petri nets.
Expressing structural refinement as a type morphism will thus guarantee that
the behavior of the initial network is preserved in the refined network. Moreover,
as discussed in [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ], type refinement ensures bisimilarity between the initial and
the refined network.
        </p>
        <p>Note that for every refined state or action there exists a corresponding
abstract state or action, resp. via the projection from subtype to supertype. Also
note that in Definition 8, N denotes the refined network.
4</p>
        <p>Full Structural Refinement as Type Refinement of
Colored Petri Nets
In this section we prove that the full structural refinement of a reaction-based
model implemented as a Petri net can be implemented as a type refinement of
the trivial coloring of the Petri net. We give a coloring strategy (type refinement)
for implementing a full structural data refinement of a model represented as a
Petri net, and conclude by proving that our construction indeed implements the
required full structural data refinement.
4.1</p>
      </sec>
      <sec id="sec-2-6">
        <title>Implementing a Full Structural Model Refinement via a Type</title>
      </sec>
      <sec id="sec-2-7">
        <title>Refinement in a Colored Petri Net Model</title>
        <p>
          Intuitively, species refinement implies replacing each species with a non-empty
set of species. This can be done in a colored Petri net by replacing for each place
representing a species its default color set by a new record or enumeration color
set having as many elements as the set of species that its corresponding species
refines to. Or, assuming color sets defined as records, by replacing a single value
field with a new field with as many possible values as the cardinality of the
refined subspecies set. Formally, we need to define a morphism from the refined
colored Petri net to the initial colored Petri net that respects all the properties
of a type refinement, as described in [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ] and presented in Section 3.3.
        </p>
      </sec>
      <sec id="sec-2-8">
        <title>Definition 9 (Colored Petri net implementation of a structural refine</title>
        <p>ment of a reaction network model). We say that a colored Petri net N
structurally implements the full structural refinement of a model M as described
by a refinement relation ρ iff the unfolding of N , N ∗, structurally implements
the full structural refinement of M , ρ(M ) in the sense of Definition 3.</p>
        <p>We describe next a type refinement of a given trivial coloring of a Petri net
implementation of a reaction-based model M that captures the full structural
data refinement of M as described by a given refinement relation ρ.
Algorithm 1 TypeRef
function TypeRef(N, ρ)
Σ0 ← ?;</p>
        <p>. create the new color sets based on the old ones;
for all p ∈ P do
cs ← C(p);
define a new color set cs0 that extends cs with a new field with ρ(δ−1(p))
values;
Σ0 ← Σ0 ∪ {cs0};</p>
        <p>C0(p) ← cs0;
end for
for all t ∈ T do</p>
        <p>define cs as a multiset cs : {C0(p) | p ∈ P } → N such that cs(C0(p)) =
C(t)(C(p)), ∀p ∈ P ;
Σ0 ← Σ0 ∪ {cs};</p>
        <p>C0(t) ← cs;
end for</p>
        <p>. re-type the arc expressions: for each variable in an arc expression, create one
having as type the new color set of the place that the arc is connected to; the new
arc expression is a multiset sum of these variables;</p>
        <p>E0 ← ?;
for all e ∈ E do
p ← the place connected to e;
V ← set of variables appearing in e;
V 0 ← ?;
for all vi ∈ V do
define vi0 : C0(p);</p>
        <p>V 0 ← V 0 ∪ {vi0}
end for
e0 ← ++Pv∈V 0 v; . ++P denotes multiset addition;
E0 ← E0 ∪ {e0};
end for
M0 ← μ{(p, c) | p ∈ P, c ∈ C0(p)};
Y0 ← μ{(t, c) | t ∈ T, c ∈ C0(t)};
M00 is designed such that Pc∈C0(p) | M00(p, c) |=| M0(p, C(p)) |, ∀p ∈ P ;
N 0 ← (P, T, A, Σ0, C0, E0, M0, Y0, M00 );
return N 0;
end function</p>
        <p>Let N = (P , T, A, Σ, C, E, M, Y, M0) be a trivially colored Petri net that
implements a reaction-based model M = (S , R) with correspondence function
δ. Let ρ ⊆ S × S 0 be a full structural refinement relation that refines model
M to model M 0 = (S 0, R0). We build a colored Petri net N 0 = (P , T, A, Σ0, C0,
E0, M0, Y0, M00 ) and then show that the construction is a type refinement.
Moreover, we show that the resulting network implements the full structural
refinement ρ(M ). The procedure takes as input a trivially colored Petri net that
implements M , and the refinement function ρ. It then updates the color sets of
the network such that the color set of each place is extended with a new field
that will account for the new subtypes of the species that the place stands for.
Each transition gets as color set a multiset of the color sets of its pre- and
postplaces, with multiplicities dictated by the cardinality of each arc expression, just
like in the trivial coloring. Note that this means that the refined transition color
sets are subtypes of the initial transition color sets, as multisets of subtypes of
a color set that is a multiset of supertypes, with identical multiplicities.</p>
        <p>Using a distinct variable for each token on every arc is important because
it allows for exact identification of each token. One can thus encode all
possible combinations of in- and out- tokens for a transition t, i.e. the full set of
refinements of the reaction encoded by transition t.</p>
        <p>Proposition 3. Given a trivially colored Petri net N that is an implementation
of a reaction-based model M , and a full structural refinement relation ρ of M ,
the colored Petri net N 0 = TypeRef(N, ρ) is a type refinement of the initial
network.</p>
        <p>Proof. Based on the construction described in Algorithm 1, we detail here the
type refinement morphism between the two networks.</p>
        <p>Note that N is trivially colored, so all color sets have exactly one color. The
projection from any color in a color set of Σ0 onto its corresponding supertype
color set is the one color in the supertype color set: ΠC(x)(c) = C(x), for any
x ∈ P ∪ T , and any color c ∈ C0(x).</p>
        <p>We now describe a morphism Φρ : N 0 → N between the two networks, that
is a type morphism.
1. Φρ(x) = x for all x ∈ P ∪ T ∪ A.
2. Φρ(C0)(x) = C(x). By definition of the color sets in N 0, the color set of
each place and of each transition in N 0 is a subtype of the color set of the
same place/transition in N , i.e. C0(x) &lt;: Φρ(C0)(x). Moreover, for any color
c ∈ C0(x) : ΠΦρ(C0)(x)(c) = ΠC(x)(c) = C(x).
3. ∀x ∈ P ∪ T : ∀c ∈ C0(x) : Φρ(1 `(x, c)) = 1 `(x, ΠC(x)(c)) = 1 `(x, C(x)): for
every colored place/transition in N 0 with color c, the morphism Φρ returns
the same place/transition (because Φρ is the identity on P ∪ T ), having as
color the projection of c on the color set of x as given by the morphism Φρ,
namely C(x).
4. ∀(p, t) ∈ A : ∀(t, m) ∈ Y0 : Φρ(E0(p, t)) = E(p, t) and the multiset of
colored tokens consumed from place p at the firing of transition t in mode
m is E0(p, t)(m). By construction of E0, the number of consumed tokens is
E(p, t)(C(t)). The projection of every color in C0(p) is C(p), thus we get:
Φρ(E−(1`(t, m))(p)) = ΠΦρ(C0)(p)(E0(p, t)(m)) = E(p, t)(C(t)) =
= E(p, t)(ΠC(t)(m)) = Φρ(E0)(p, t)(ΠΦρ(C0)(t)(m)).
5. Similarly, ∀(t, p) ∈ A : ∀(t, m) ∈ Y0 : Φρ(E0(t, p)) = E(t, p) and the multiset
of colored tokens added to place p at the firing of transition t in mode
m is E0(t, p)(m). By construction of E0, the number of produced tokens is
E(t, p)(C(t)). The projection of every color in C0(p) is C(p), thus we get:
Φρ(E+(1`(t, m))(p)) = ΠΦρ(C0)(p)(E0(t, p)(m)) = E(t, p)(C(t)) =
= E(t, p)(ΠC(t)(m)) = Φρ(E0)(t, p)(ΠΦρ(C0)(t)(m)).</p>
        <p>Because the morphism Φρ respects all conditions for being a type refinement
of a Petri net it follows that Algorithm 1 computes a type refinement of its input
Petri net.</p>
        <p>Theorem 1. Given a reaction-based model M = (S , R), a structural
refinement relation ρ ⊆ S × S 0, and a colored Petri net N = (P, T, A, Σ, C, E, M, Y,
M0) that is trivially colored and implements model M with function δ : S ∪R →
P ∪ T , the colored Petri net TypeRef(N, ρ) implements the full structural
ρrefinement of model M .</p>
        <p>Proof. Let N 0 denote the refined colored Petri net TypeRef(N, ρ), and let M 0 =
(S 0, R0) denote the full structural ρ-refinement Mρ. By construction of the
refined colored Petri net N 0 there exists a type morphism between N 0 and N ,
as detailed in the proof of Proposition 3.</p>
        <p>First, note that N is trivially colored and thus the network is equivalent to
its unfolding (see Proposition 1). With a slight abuse of notation, we will use x
to denote the unfolded equivalent of a place/transition x ∈ P ∪ T , (x, C(x)).</p>
        <p>We show now that the unfolding of N 0 implements the full structural
refinement of M . Let N ∗ = {P ∗, T ∗, A∗, f ∗, M0∗} be the unfolding of N 0. The color
set of a place p ∈ P 0 has | ρ(δ−1(p)) | elements, where each color represents
one refined species S0 ∈ S 0, (δ−1(p), S0) ∈ ρ. The places of N ∗ represent pairs
(p, c) such that p ∈ P and c ∈ C0(p). Given that every place p has a symbolic
correspondence with one species S = δ−1(p) in S , and the colors of places in
N 0 can be thought of as the refinements of S, there exists a one-to-one
correspondence between places in P ∗ and species in S 0. Let δρ : S 0 → P ∗, with
δρ(S0) = (δ(S), c) ∈ P ∗ where (S, S0) ∈ ρ and no two siblings are mapped to the
same value.</p>
        <p>δρ can be extended to map also reactions in R0 to (t, m) pairs. The color
m of a transition t uniquely identifies its pre- and post-places in the unfolded
network, and the arc inscriptions. By definition of the color sets of transitions
as multisets over the color sets of neighbouring places, it follows that every
possible combination of colored tokens flowing through a transition is captured
by a transition color. This means that a transition t in N 0 encodes all possible
refinements ρ(r) of the reaction r = δ−1(t) that transition t stands for in N .</p>
        <p>A transition (t, m) ∈ T ∗ encodes the reaction</p>
        <p>X
(p,c)∈•(t,m)
f ∗((p, c), (t, m))δρ−1((p, c)) →
f ∗((t, m), (p, c))δρ−1((p, c)).</p>
        <p>X
(p,c)∈(t,m)•</p>
        <p>The reaction r0 = δρ−1(t, m) that a transition (t, m) ∈ T ∗ implements in N 0∗
is a ρ-refinement of the reaction r = δ−1(t) that transition t implements in N .
This comes from the type refinement conditions 4 and 5 (see Definition 8). The
incremental effects of executing a step (t, m) in the refined network equal the
incremental effects of executing the step (t, ΠC(t)(m)) in the initial network. The
negative incremental effect E− encodes the left hand side of a reaction, and the
positive incremental effect E+ encodes the right hand side.</p>
        <p>We detail here the negative incremental effect of a step, and relate it to
its meaning in the model M 0. E−(1`(t, m)) = P(p,t)∈A p × E((p, t))(m). In
the unfolded network N ∗ a transition (t, m) is connected to places via edges
((p, c), (t, m)) ∈ A∗ where f ∗((p, c), (t, m)) = E((p, t))(m)(c). Summing over all
unfolded instances of a place in N ∗ yields</p>
        <p>X
c∈C0(p)</p>
        <p>X
c∈C0(p)
f ∗((p, c), (t, m)) =</p>
        <p>E((p, t))(m)(c) =| E((p, t))(m) | .</p>
        <p>Note that the arc expressions in N and N 0 are the same, which means that
their cardinality is also the same. N implements model M , thus |E((p, t))| = ci,j
and |E((t, p))| = c0i,j where ci,j is the stoichiometric coefficient of species Si =
δ−1(p) on the left hand side of reaction rj = δ−1(t) and c0i,j is the soichiometric
coefficient of Si on the right hand side of rj . Arc multiplicities in N ∗ represent
stoichiometries, and for any place p of N 0 its unfolded places {(p, c) | c ∈ C0(p)}
represent the sibling species in ρ(δ−1(p)).</p>
        <p>A similar argument can be made for the right hand side of a reaction, starting
from the positive incremental effect of a step. With both the left and the right
hand side of a reaction represented by (t, m) being a ρ-refinement of the left
or right, respectively hand side of the reaction δ−1(t), it follows that (t, m)
implements a ρ-refinement of the reaction implemented by t.
5</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Discussion</title>
      <p>
        In this paper we have made a connection between the notions of type refinement
of a colored Petri net proposed in [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ] and that of full structural refinement of
reaction network models proposed in [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. The connection is based on modeling a
reaction network system as a Petri net and using a coloring scheme that allows
for easy type refinement. Starting from a Petri net implementation of a
reactionbased model, we proposed a general coloring scheme that uses record color sets
and further detailed the construction and how the color sets can be refined. We
proved that the colored Petri net obtained by coloring the initial Petri net with
our coloring strategy is also an implementation of the model implemented by the
initial net. We further proved that our strategy is in fact using a type refinement
that implements a full structural refinement of a model.
      </p>
      <p>The size of the refined colored Petri net model We discuss here about the size
of the colored Petri net model obtained by refining a given model, in terms of
number of places and transitions.</p>
      <p>A type refinement of a colored Petri net preserves the structure of the network
unchanged, i.e. the number of places and transitions does not change. But the
semantics of each place and transition is different, and we will therefore consider
the unfolding of the colored Petri net.</p>
      <p>Given N = (P , T, A, Σ, C, E, M, Y, M0) a trivial colored Petri net
implementation of a reaction-based model M = S , R, a refinement relation ρ ⊆ S × S 0
and a colored Petri net N 0 = (P , T, A, Σ0, C0, E, M0, Y0, M00 ) which is the
implementation of the full structural ρ−refinement of M by Algorithm 1 with function
δ : S ∪ R → P ∪ T , we discuss the size of the unfolding of N 0, denoted byN ∗.</p>
      <p>N has by construction |S | places and |R| transitions. In N 0 by construction
each place representing a species S ∈ S has ρ(S) colors, and will therefore unfold
to ρ(S) places. The total number of unfolded places is PS∈S |ρ(S)| = |S 0|. The
total number of possible colors of a transition depends on the number of colors in
the color set of the pre- and post-places of the transition, and on the cardinality
of the arc expressions of arcs connected on either end with the transition. A
transition t ∈ T will thus unfold to
transitions in N ∗, which yields a total number of transitions in N ∗ equal to
Y
p∈•t
|ρ(δ−1(p))|</p>
      <p>E((p, t))
X
t∈T</p>
      <p>Y
p∈•t
|ρ(δ−1(p))|</p>
      <p>E((p, t))
·</p>
      <p>Y
p∈t•
·</p>
      <p>Y
p∈t•
|ρ(δ−1(p))|
E, ((t, p))
|ρ(δ−1(p))|
E, ((t, p))
.</p>
      <p>Depending on the refinement function ρ, this number can be much larger than
the number of transitions in the colored network N 0, which successfully avoids
this explosion in number of places and transitions of the network.
Consecutive full structural refinements Very often models go through several
steps of refinement, as new information about the modeled system is available,
and a more detailed representation is needed. We discuss in this paragraph how
subsequent full structural refinements of a model can be implemented using
our approach. The problem can be formulated as follows. Given a
reactionbased model M = (S , R) and two refinement relations ρ ⊆ S × S 0 and
ρ0 ⊆ S 0 × S 00, obtain the full structural ρ0−refinement of the full structural
ρ−refinement of M . In our construction, we start from a trivial coloring of a
Petri net implementation of a model. This is however not a limitation of the
approach, since subsequent refinements can be implemented as one single
refinement that is the composition of the two (or more) successive refinements to be
implemented.</p>
      <p>We conclude that colored Petri nets can be used to implement full structural
refinements of reaction-based models. The major advantage of using the colored
Petri nets formalism lies in their ability to represent the fully structurally refined
system in a compact way, using the same network structure and adding all
refinement details in the colors of places and transitions.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Ralph-Johan Back</surname>
            and
            <given-names>Joakim</given-names>
          </string-name>
          <string-name>
            <surname>Wright</surname>
          </string-name>
          .
          <article-title>Refinement calculus: a systematic introduction</article-title>
          . springer Heidelberg,
          <year>1998</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>Claudine</given-names>
            <surname>Chaouiya</surname>
          </string-name>
          .
          <article-title>Petri net modelling of biological networks</article-title>
          .
          <source>Briefings in bioinformatics</source>
          ,
          <volume>8</volume>
          (
          <issue>4</issue>
          ):
          <fpage>210</fpage>
          -
          <lpage>219</lpage>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>Christine</given-names>
            <surname>Choppy</surname>
          </string-name>
          , Laure Petrucci, and
          <string-name>
            <given-names>Alfred</given-names>
            <surname>Sanogo</surname>
          </string-name>
          .
          <article-title>Coloured petri nets refinements</article-title>
          .
          <source>In PNSE+ ModPE</source>
          , pages
          <fpage>187</fpage>
          -
          <lpage>201</lpage>
          . Citeseer,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>Vincent</given-names>
            <surname>Danos</surname>
          </string-name>
          ,
          <string-name>
            <surname>J</surname>
          </string-name>
          ´eroˆme Feret, Walter Fontana, Russell Harmer, and
          <string-name>
            <given-names>Jean</given-names>
            <surname>Krivine</surname>
          </string-name>
          .
          <article-title>Rule-based modelling and model perturbation</article-title>
          .
          <source>Transactions on Computational Systems Biology XI</source>
          , pages
          <fpage>116</fpage>
          -
          <lpage>137</lpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5. Ren´e David and
          <string-name>
            <given-names>Hassane</given-names>
            <surname>Alla</surname>
          </string-name>
          .
          <article-title>Petri nets for modeling of dynamic systems: A survey</article-title>
          .
          <source>Automatica</source>
          ,
          <volume>30</volume>
          (
          <issue>2</issue>
          ):
          <fpage>175</fpage>
          -
          <lpage>202</lpage>
          ,
          <year>1994</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>Cristian</given-names>
            <surname>Gratie</surname>
          </string-name>
          and
          <string-name>
            <given-names>Ion</given-names>
            <surname>Petre</surname>
          </string-name>
          .
          <article-title>Fit-preserving data refinement of mass-action reaction networks</article-title>
          .
          <source>In Arnold Beckmann</source>
          , Erzs´ebet Csuhaj-Varju´, and Klaus Meer, editors, Language, Life, Limits, volume
          <volume>8493</volume>
          of Lecture Notes in Computer Science, pages
          <fpage>204</fpage>
          -
          <lpage>213</lpage>
          . Springer,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>Bogdan</given-names>
            <surname>Iancu</surname>
          </string-name>
          , Elena Czeizler, Eugen Czeizler, and
          <string-name>
            <given-names>Ion</given-names>
            <surname>Petre</surname>
          </string-name>
          .
          <article-title>Quantitative refinement of reaction models</article-title>
          .
          <source>International Journal of Unconventional Computing</source>
          ,
          <volume>8</volume>
          (
          <issue>5</issue>
          -6):
          <fpage>529</fpage>
          -
          <lpage>550</lpage>
          ,
          <year>2012</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <given-names>Bogdan</given-names>
            <surname>Iancu</surname>
          </string-name>
          ,
          <string-name>
            <surname>Diana-Elena</surname>
            <given-names>Gratie</given-names>
          </string-name>
          , Sepinoud Azimi, and
          <string-name>
            <given-names>Ion</given-names>
            <surname>Petre</surname>
          </string-name>
          .
          <article-title>On the implementation of quantitative model refinement</article-title>
          . In
          <string-name>
            <surname>Adrian-Horia</surname>
            <given-names>Dediu</given-names>
          </string-name>
          , Carlos Mart´
          <article-title>ın-</article-title>
          <string-name>
            <surname>Vide</surname>
          </string-name>
          , and Bianca Truthe, editors,
          <source>Algorithms for Computational Biology</source>
          , volume
          <volume>8542</volume>
          of Lecture Notes in Computer Science, pages
          <fpage>95</fpage>
          -
          <lpage>106</lpage>
          . Springer International Publishing,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>Kurt</given-names>
            <surname>Jensen</surname>
          </string-name>
          .
          <article-title>Coloured petri nets: A high level language for system design and analysis</article-title>
          .
          <source>Advances in Petri nets 1990</source>
          , pages
          <fpage>342</fpage>
          -
          <lpage>416</lpage>
          ,
          <year>1991</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <given-names>Kurt</given-names>
            <surname>Jensen</surname>
          </string-name>
          .
          <article-title>Coloured petri nets</article-title>
          . volume
          <volume>1</volume>
          ,
          <article-title>basic concepts</article-title>
          .
          <source>EATCS Monographs in Theoretical Computer Science</source>
          ,
          <volume>1</volume>
          ,
          <year>1992</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <given-names>Charles</given-names>
            <surname>Lakos</surname>
          </string-name>
          .
          <article-title>Composing abstractions of coloured petri nets</article-title>
          .
          <source>In Application and Theory of Petri Nets</source>
          <year>2000</year>
          , pages
          <fpage>323</fpage>
          -
          <lpage>342</lpage>
          . Springer,
          <year>2000</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <given-names>Charles</given-names>
            <surname>Lakos</surname>
          </string-name>
          and
          <string-name>
            <given-names>Glenn</given-names>
            <surname>Lewis</surname>
          </string-name>
          .
          <article-title>A catalogue of incremental changes for coloured petri nets</article-title>
          .
          <source>Technical report, the International Conference of Application and Theory of Petri Nets</source>
          ,
          <year>1999</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <surname>Andrzej</surname>
            <given-names>Mizera</given-names>
          </string-name>
          , Eugen Czeizler, and
          <string-name>
            <given-names>Ion</given-names>
            <surname>Petre</surname>
          </string-name>
          .
          <article-title>Self-assembly models of variable resolution</article-title>
          .
          <source>LNBI Transactions on Computational Systems Biology</source>
          , pages
          <fpage>181</fpage>
          -
          <lpage>203</lpage>
          ,
          <year>2011</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <given-names>Tadao</given-names>
            <surname>Murata</surname>
          </string-name>
          .
          <article-title>Petri nets: Properties, analysis and applications</article-title>
          .
          <source>Proceedings of the IEEE</source>
          ,
          <volume>77</volume>
          (
          <issue>4</issue>
          ):
          <fpage>541</fpage>
          -
          <lpage>580</lpage>
          ,
          <year>1989</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Elaine</surname>
            <given-names>Murphy</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>Vincent</given-names>
            <surname>Danos</surname>
          </string-name>
          ,
          <string-name>
            <surname>J</surname>
          </string-name>
          ´eroˆme Feret, Jean Krivine, and
          <string-name>
            <given-names>Russell</given-names>
            <surname>Harmer</surname>
          </string-name>
          .
          <source>Elements of Computational Systems Biology, chapter Rule Based Modelling and Model Refinement</source>
          , pages
          <fpage>83</fpage>
          -
          <lpage>114</lpage>
          . Wiley Book Series on Bioinformatics. John Wiley &amp; Sons, Inc.,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <given-names>Marco</given-names>
            <surname>Pistore</surname>
          </string-name>
          and
          <string-name>
            <given-names>Davide</given-names>
            <surname>Sangiorgi</surname>
          </string-name>
          .
          <article-title>A partition refinement algorithm for the pi-calculus</article-title>
          .
          <source>In Proceedings of CAV'96</source>
          , volume
          <volume>1102</volume>
          of Lecture Notes in Computer Science, pages
          <fpage>200</fpage>
          -
          <lpage>1</lpage>
          . Springer-Verlag,
          <year>1996</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <given-names>Ichiro</given-names>
            <surname>Suzuki</surname>
          </string-name>
          and
          <string-name>
            <given-names>Tadao</given-names>
            <surname>Murata</surname>
          </string-name>
          .
          <article-title>A method for stepwise refinement and abstraction of petri nets</article-title>
          .
          <source>Journal of Computer and System Sciences</source>
          ,
          <volume>27</volume>
          (
          <issue>1</issue>
          ):
          <fpage>51</fpage>
          -
          <lpage>76</lpage>
          ,
          <year>1983</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>