<!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>Complexity Aspects of Web Services Composition</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Karima Ennaoui</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Lhouari Nourine</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Farouk Toumani</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>LIMOS, CNRS, Universite Clermont Auvergne 1 Rue de la Chebarde</institution>
          ,
          <addr-line>63178 AUBIERE CEDEX</addr-line>
        </aff>
      </contrib-group>
      <fpage>85</fpage>
      <lpage>104</lpage>
      <abstract>
        <p>The web service composition problem can be stated as follows: given a finite state machine M , representing a service business protocol, and a set of finite state machines R, representing the business protocols of existing services, the question is to check whether there is a simulation relation between M and the shuffle product closure of R. In fact the shuffle product is a subclass of the communication free petri net and basic parallel processes, for which the same problem of simulation is known to be 2-Exptime-hard. This paper studies the impact of several parameters on the complexity of this problem. We show that the problem is Exptime-complete if we bound either: (i) the number of instances of services in R that can be used in a composition, or(ii) the number of instances of services in R that can be used in parallel, or (iii) the number of the so-called hybrid states in the finite state machines of R by 2.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        Web Services [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] is a new computing paradigm that tends to become a technology
of choice to facilitate interoperation among autonomous and distributed
applications. The UDDI consortium defines Web services as self-contained, modular
business applications that have open, Internet-oriented, standards-based
interfaces. Several models have been proposed in the literature to describe different
facets of services. In particular, the importance of specifying external behaviour
of services, also called service business protocols, has been highlighted in several
research works [
        <xref ref-type="bibr" rid="ref3 ref4 ref6">6,3,4</xref>
        ]. Through literature, different models have been used to
represent web service business protocols. The Finite States Machines (FSM)
formalism is widely adopted in this context to model statefull applications exposed
as web services where states represent the different phases that a service may
go through while transitions represent “abstract” activities that a service can
perform [
        <xref ref-type="bibr" rid="ref3 ref4 ref6">6,3,4</xref>
        ].
      </p>
      <p>
        We consider in this paper the problem of Web Service Composition (WSC).
This problem arises from the situation where none of the existing services can
provide a requested functionality. In this case, the idea is to find out,
algorithmically, if the target functionality could be composed out of the existing services
(components repository). This automatic approach of composition simplifies the
development of software by reusing existing components and offers capabilities
to customize complex systems built on the fly [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. We focus more particularly on
a specific instance of WSC, namely the (business) protocol synthesis problem,
which can be stated as follows: given a set of business protocols of available
services and given a business protocol of a target service, is it possible to synthesize
automatically a mediator that implements the target service using the existing
ones?
      </p>
      <p>
        [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ] shows that when business protocols are described by means of FSMs,
the WSC problem can then be formalized as the problem of deciding whether
there exists a simulation relation between the target protocol and the shuffle (or
asynchronous product) of the available ones. This result is however based on the
implicit assumption that at most one instance of each available service can be
used in a composition. This setting has been extended in [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] to the case where
the number of instances that can be used in a composition is unbounded. WSC
is formalized in this latter case as a simulation problem between an FSM and
an infinite state machine, called Product Closure State Machine (PCSM), that
is able to compute the shuffle closure of an FSM.
      </p>
      <p>
        Shuffle product of FSMs (and PCSM) is a subclass of Basic Parallel Processes
(BPP), the class of communication free petri nets: every transition has at most
one input place. Simulation of FSM by BPP was proven Expspace-hard by Lasota
[
        <xref ref-type="bibr" rid="ref15">15</xref>
        ] and 2-Exptime-hard in [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ].
      </p>
      <p>
        Complexity analysis of WSC was first considered by Musholl et al.[
        <xref ref-type="bibr" rid="ref16">16</xref>
        ], under
the aforementioned implicit assumption, where it is shown Exptime-Complete.
In case of unbounded instances, the WSC problem has been proved decidable
with an Ackermanian function as upper bound in [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. The proof of [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] is based on
Dickson lemma, and hence cannot be exploited to derive tighter upper bounds.
An Expspace-hard lower bound is given by Lasota[
        <xref ref-type="bibr" rid="ref15">15</xref>
        ]. The source of complexity
derived from the analysis of the algorithm given in [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] is related to the presence of
the so-called hybrid states (final states with outgoing transitions and correspond
to unbounded places in Petri net terminology) in the components and loops in the
target: if the target FSM is loop free, the WSC problem becomes NP-complete
and when the components are hybrid state free the problem is proven Exptime.
      </p>
      <p>
        In this paper, we consider additional parameters related to
bounded/unbounded web services composition. We consider as inputs an
FSM M (the target protocol) and a set of FSMs R (the protocols of the
available services) and we investigate the complexity of testing simulation
between M and the shuffle closure of R, represented as a PCSM [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. More
precisely, we study the complexity of the following problems:
1. W SC(M; R): The problem of composing M using an unbounded number of
instances of R.
2. BC(M; R; k): The problem of composing M using at most k instances of
each FSM in R.
3. P BC(M; R; k): The problem of composing M using simultaneously at most
k F SM instances in R (in parallel).
4. U CHS(M; R; k) : The problem of composing M using an unbounded number
of instances of R, with the number of hybrid states in R is bounded by
k 2 f0; 1; 2g.
Paper organisation Section 2 recalls some basic definitions needed in this paper.
In section 3, we investigate the problem of bounded web services composition
and proves that it is Exptime-Complete. Next, we define web service composition
with fixed number of parallel instances, and show that it is Exptime-Complete
in general and is NP-complete when M is loop free and polynomial for k = 1. In
section 5, we consider the web service composition when the number of hybrid
states is bounded. We show that this problem is Exptime-Complete for k = 0,
k = 1 and k = 2. We conclude in section 6.
2
      </p>
    </sec>
    <sec id="sec-2">
      <title>Preliminaries</title>
      <p>Finite State Machine We consider in this paper service business protocols
formally described as FSMs. We recall below the definition of such machines.
Definition 1. (Finite State Machine (FSM))
A State Machine (SM) M is a tuple M = ( M ; QM ; FM ; qM0 ; M ), where: M
is a finite alphabet, QM is a set of states, M QM M QM is a set of
labelled transitions, FM QM is a set of final states, and qM0 2 QM is the initial
state. If QM is finite then M is called a Finite State Machine (FSM).
Moreover, a state q 2 QM is called: intermediate, if q 2= FM and 9p1; p2 2 QM ,
s.t (p1; a; q) 2 M and (q; b; p2) 2 M , we denote by I(M ) the set of intermediate
states of M ; hybrid, if q 2 FM , q 6= q0 and there exist at least one transition
(q; b; p) 2 M , with p 2 QM and b 2 , the set of hybrid states is denoted H(M )
and terminal, if q 2 FM and is not hybrid.</p>
      <p>We define the norm of a state q as the finite length of the shortest path
from q to a final state. The norm of an FSM M , noted norm(M), is the
maximal norm of its states.
k-Iterated Product Machine (k-IPM) and Product State Machine (PCSM) We
start by defining the shuffle (asynchronous product) and union operations on
FSMs:
Definition 2. (Asynchronous product and Union of two FSMs)
Let M = ( M ; QM ; FM ; qM0 ; M ) and M 0 = ( M0 ; QM0 ; FM0 ; qM00 ; M0 ) be two
FSMs. We have :
– The shuffle or asynchronous product of M and M 0, denoted M M 0,
is an FSM ( M [ M0 ; QM QM0 ; FM FM0 ; (qM0 ; qM00 ); ) where the
transition function is defined as follows: = f((q; q0); a; (q1; q10)) : ((q; a; q1) 2
M and q0 = q10) or ((q0; a; q10) 2 M0 and q = q1)g.
– The union of M and M 0, denoted M [ M 0, is the FSM ( M [ M0 [ f g;
QM [ QM0 [ fq0g; FM [ FM0 ; q0; M [ M0 [ f(q0; ; qM0 ); (q0; ; qM00 )g).</p>
      <p>For a set of available FSMs R = fM1; :::Mig, we consider a compact structure
that abstracts all possible executions that can be produced using the components
of R. First, we begin by the simple case where each Mj can be used only once:</p>
      <p>Mij ) where j 2 [0; i].</p>
      <p>Definition 3. (Union of asynchronous products of FSMs set) Let R =
fM1::::Mmg be a FSMs repository. We define (R) the union of asynchronous
product of all the subsets of R as the FSM: (R) = SfMi1 ;:::;Mij g22R (Mi1
:::</p>
      <p>Second, we consider the case where the number of copies of each Mj 2 R is
bounded by an integer k:
Definition 4. (k-iterated product of FSMs set R) The k-iterated product
of R is defined by R k = R k 1 (R) with R 1 = (R).</p>
      <p>
        Finally, we consider the general case where the number of instances of each
Mj 2 R is unbounded. This corresponds to the product closure of R [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]:
Definition 5. (Product closure of FSMs set) The product closure of R,
noted R , is defined as: R = Si+=10 R i .
      </p>
      <p>
        The Product Closure Machine (PCSM) of R, defined in [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] and proven
equivalent to R , is the SM with unbounded number of tokens stacked at the
beginning in the initial states in R. Then, the instantaneous description of a
PCSM gives the number of tokens (instances) at each state of its underlaying
FSMs. This description is called a configuration of R . We omit from this
description the initial states (source:infinite number of tokens) and terminal states
(sink:terminated instances).
      </p>
      <p>Example 1. Figure 2 illustrates the execution of the sequence "abca" by the
PCSM of the FSM M in figure 2-(a). M contains one intermediate state q1
and two hybrid states q2 and q5. Therefore, figure 2-(b) depicts a part of the
PCSM M with triplets as configurations where integers witness respectively
the number of tokens in q1, q2 and q5. For each configuration c in figure
2(b), we associate an instant t (or several instants) during the execution when c
describes the PCSM. At the beginning (t = 0), M ’s instantaneous description
is (0; 0; 0), interpreting an empty stack in every state of M , except the initial
state with an infinite number of tokens (figure 2-(c)). To execute the transition
(q0; a; q1), a token is moved from q0 to q1 in figure 2-(d), corresponding to the
configuration (1; 0; 0) in instant t = 1. In t = 2, the executed transition (q0; b; q4)
corresponds to moving a token from the initial state to a terminal one q4 (figure
2-(e)). Since the instantaneous description does not consider neither initial states
nor terminal ones, then the configuration stays the same as the previous instant.
Notice that this move corresponds to both creating and terminating an instance
of the FSM. Then, the transition (q0; c; q5) is executed by moving a token from
q0 to the hybrid state q5. This creates a new instance implying, in this case,
an increase in the number of simultaneously used instances in the execution.
This is depicted in figure 2-(f). Finally, a token is moved from the state q1 to
q2 in figure 2-(g), in order to execute the transition (q1; a; q2). It changes M ’s
instantaneous description in t = 4 into (0; 1; 1) which is a final configuration (i.e
(0; 1; 1) 2 FC ) since all tokens in the PCSM are in final states (either hybrid or
terminal).</p>
      <p>Formally, we define the PCSM R as the SM (
R; CR ; FC; c0;</p>
      <p>R ), where:
1. R = SMj2R Mj ;</p>
      <sec id="sec-2-1">
        <title>2. CR is the set of states (also called configurations of R ). CR Nn, with:</title>
        <p>n = nI (R) + nH (R) with: nI (R) is the number of intermediate states in
R) (nI (R) = j SMj2R I(Mj )j) and nH (R) is the number of hybrid states
in R) (nH (R) = j SMj2R H(Mj )j). For each configuration c, c[m] (the mth
component of c) is called a witness of a unique state qm 2 QMj for some j.
Note that:
– qm is an intermediate state, if 1 m nI (R);
– qm is an hybrid state, if nI (R) + 1 m n.</p>
        <p>In an abuse of notation, we use c[m] and c[qm] interchangeably.
3. FC is the set of final states. FC = fc 2 CR jc[m] = 0; for each: 1 m
nI (R)g;
4. c0 = f0gn is the initial state of R ;
5. CR R CR is the set of transitions. we have (c1; a; c2) 2 R</p>
        <p>R
iff :
– there exists (q0; a; q) 2 QMj , such that: q0 is the initial state of Mj and
c2[q] = c1[q] + 1 and c2[p0] = c1[p0] for each p0 6= q.
– there exists (p; a; q) 2 QMj , such that: c2[p] = c1[p] 1, c2[q] = c1[q] + 1
and c2[p0] = c1[p0] for each p0 6= p; q.
– there exists (p; a; q) 2 QMj , such that: q is a final state or the initial
state, c2[p] = c1[p] 1 and c2[p0] = c1[p0] for each p0 6= p.</p>
        <p>Simulation preorder We recall below the definition of the simulation preorder
between two SMs.</p>
        <p>q1
q3 a q2</p>
        <p>c
(c) PCSM M⊗at the instant t = 0
(d) PCSM M⊗at the instant t = 1</p>
        <p>(e) PCSM M⊗at the instant t = 2
(a) An FSM M</p>
        <p>(b) A part of the PCSM M⊗
(f) PCSM M⊗at the instant t = 3</p>
        <p>1
(g) PCSM M⊗at the instant t = 4
1. 8a 2 M and 8p0 2 QM such that (p; a; p0) 2 M , there exists (q; a; q0) 2 N
such that p0 q0, and
2. if p 2 FM , then q 2 FN .</p>
        <sec id="sec-2-1-1">
          <title>M is simulated by N , denoted M initial sate of M.</title>
        </sec>
        <sec id="sec-2-1-2">
          <title>N , iff the initial state of N simulates the</title>
          <p>Example 2. Figure 3-(c) is an example of a simulation tree, verifying if the initial
state s0 of the FSM A (figure 3-(a)) is simulated by the initial configuration
c0 = (0; 0; 0) of the PCSM of M (figure 3-(b)). A branch is terminated with
success when a terminal state of A is reached and paired with a final configuration
(all intermidiate witnesses are null), or when a configuration of M that covers
one of its predecessors is reached and paired with the same state of A. In this
case, the simulation tree proves that A M .</p>
          <p>A
s0
a
c
s1
s3</p>
          <p>M
q0
b
q4
a
b
a
s2
c
a q5
(a)- An FSM A</p>
          <p>a
q1
c a
q3
q2</p>
          <p>c
s3, c0 = (0, 0, 0)</p>
          <p>Success
s0, c0 = (0, 0, 0)</p>
          <p>a
s1, c1 = (1, 0, 0)</p>
          <p>c
s3, c2 = (1, 0, 1)</p>
          <p>Fail
s1, c5 = (0, 1, 0)</p>
          <p>a
c
s3, c6 = (0, 1, 1)</p>
          <p>Success b
s2, c5 = (0, 1, 0)</p>
          <p>a
s1, c7 = (1, 1, 0)
c1/c7 Success
b
s2, c1 = (1, 0, 0)</p>
          <p>a
s1, c3 = (2, 0, 0)
c
s3, c1 = (1, 0, 0)</p>
          <p>Fail</p>
          <p>c
s3, c4 = (2, 0, 1)</p>
          <p>Fail
(b)- An FSM M</p>
          <p>(c)- Simulation tree between A and M⊗</p>
          <p>Interestingly, the simulation verification defined above can be seen as a two
players game in a directed graph (Va; Vd; ; v0), such that V = Va [Vd is the set of
vertices with Va QM QN and Vd QM QN M , (Va Vd) [ (Vd Va)
is the edges set verifying:
-for (q; p) 2 Va and (q; a; q0) 2 M , we have ((q; p); (q0; p; a)) 2 ; and
-for (q; p; a) 2 Vd and (p; a; p0) 2 N , we have ((q; p; a); (q; p0)) 2 .</p>
          <p>The game is played by an attacker and a defender. It starts by putting a
token in v0 = (qM0 ; qN0 ) 2 Va, then the players move it along the edges of the
graph. If the token is on a vertex v 2 Va then the attacker moves it, otherwise
it is the defender’s turn.</p>
          <p>A strategy of a player x 2 fa; dg is a function S : V :Vx 7! V , where
V :Vx denotes all sequences of vertices in V that end with a vertex in Vx and
S(v0; :::; vk) = vk+1 implies that (vk; vk+1) 2 . In each different play, a player x
adapts a strategy that decides his moves.</p>
          <p>The defender wins every infinite play. Otherwise, the first player who can not
move loses. M is simulated by N iff the defender has a wining strategy regardless
of his opponent’s strategy.</p>
          <p>Observe that, by definition, each transition of a PCSM can at most increase
or decrease a configuration component by 1. In addition, if a configuration is
final then all intermediate states witnesses are equal to 0. Therefore, given a
set of FSMs R and c 2 CR , we have q2SMi2R I(Mi)c[q] norm(c). Moreover,
since final states can only be simulated by final ones, then for M an FSM and
p 2 QM , if p c then norm(c) norm(p). Hence, we are able to derive the
following property.</p>
          <p>CR j q2SMi2R I(Mi)c[q]
q2SMi2R I(Mi)c[q]</p>
          <p>norm(M )g.</p>
          <p>
            Property 1. (Intermediate witnesses bound) [
            <xref ref-type="bibr" rid="ref9">9</xref>
            ] For c 2 CR and p 2 QM ,
if p c then norm(p). We denote CRM = fc 2
          </p>
          <p>
            In [
            <xref ref-type="bibr" rid="ref9">9</xref>
            ], the WSC problem in the unbounded case is reduced to simulation test
between an FSM and a PCSM and this later problem is proved to be decidable.
The proof of the termination of the algorithm given in [
            <xref ref-type="bibr" rid="ref9">9</xref>
            ] is based on the following
property:
Property 2. (configuration cover) [
            <xref ref-type="bibr" rid="ref9">9</xref>
            ] Let c and c0 be two configurations of
R , such that: c[m] = c0[m], m 2 [1; nI (R)] and c[m] c0[m], m 2 [nI (R)+1; n].
if q c, where q is a state of a SM M, then q c0.
          </p>
          <p>We say that c0 covers c, denoted c / c0.</p>
          <p>
            We introduce below the algorithm of [
            <xref ref-type="bibr" rid="ref9">9</xref>
            ], focusing the presentation on the
structure of its execution tree.
          </p>
          <p>Definition 7. (Simulation Tree)
We call a simulation tree Tsim(M; R ) a tree (V; v0; E) where:
– v0 = (qM0 ; c0) is the root of the tree;
– V QM CRM is the set of nodes;
– If (q; c) 2 V and q is final in M then so is c in R ;
– E V V is the set of the tree’s edges. 8e = ((p; c); (q; d)) 2 E : 9a 2</p>
          <p>M s.t (p; a; q) 2 M and (c; a; d) 2 R ;
– v = (p; c) 2 V is a leaf in Tsim(M; R ) iff p is terminal in A or there exists
an ancestor (p; c0) 2 V of v in Tsim(M; R ) such that c/c0.</p>
          <p>In the next section, we shall bound the size of this tree in the case of bounded
WSC problem (i.e., when the instances of services allowed to be used in the
simulation is bounded by a parameter k).</p>
        </sec>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Bounded Composition</title>
      <p>We call a bounded WSC problem, a service composition problem where the
number of copies of each web service in the repository R used to compose the
target M is bounded a priori by an integer k. This problem is formally stated
as follows.</p>
      <p>Problem 1. Bounded Composition BC(M; R; k)
Input : R a set of FSMs; M a target FSM; k an integer.</p>
      <p>Question : M Sik=0 R i ?
Sik=0fR1; R3g i , for any k</p>
      <p>
        The particular case BC(M; R; 1) has been investigated by Muscholl and
Walukiewicz [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ] where it is shown to be Exptime-Complete. We shall prove
in this section that BC(M; R; k) is also Exptime-Complete. We point out that
the straightforward reduction of BC(M; R; k) to BC(M; R; 1), obtained by
duplicating k times each service of R, is not polynomial in the input size, since k
may be large, and hence cannot be used to achieve our goal.
      </p>
      <p>The parameter k drops the infinite aspect and reduces the search space.
In this case, a loop in M can only be simulated by loops in R. For example,
one can observe that, in figure 4, St is not simulated by Sk
i=0fR1; R3g i for
every k 2 N. This is because when we repeat the loop in St (k + 1) times,
there is no corresponding execution in Sik=0fR1; R3g i . However, we have St
1.</p>
      <p>St</p>
      <p>a
b
c
a</p>
      <p>R1</p>
      <p>a
b
c</p>
      <p>R2
b
a</p>
      <p>R3
a</p>
      <p>In the following, we give an upper bound of the number of states that might
appear in Sik=0 R i , with k 2 N.</p>
      <p>Lemma 1. Let R be a set of FSM and k is an integer. The number of states in
Sik=0 R i is bounded by O(2nlogk) where n = nI (R) + nH (R).
Proof. Notice that R</p>
      <p>= (Sik=0 R i ) [ (Si+=1k+1 R i ).</p>
      <p>In fact, the states in Sik=0 R i correspond to the PCSM’s configurations
subset fc 2 CR k j 0 c[i] k; i 2 [1; n]g. Hence, the number of states of
Sik=0 R i is bounded by (k + 1) : : : (k + 1) = 2nlog(k+1). tu</p>
      <p>This lemma reduces the search space to an exponential size and leads to the
following theorem.</p>
      <p>Theorem 1. BC(M; R; k) is Exptime-Complete
Proof. Exptime. To show that BC(M; R; k) is Exptime, we bound the size of
the simulation tree. A node of the simulation tree corresponds to (q; c) where
q is a state of M and c a configuration of R k . According to Lemma 1, the
number of PCSM’s configurations is bounded by kn. So the number of nodes in
the simulation tree is at most jQM j kn = 2nlog(k)+log(jQM j) and therefore the
complexity is in Exptime.</p>
      <p>
        Exptime-Hardness. It can be deducted directly from the Exptime-Hardness
of the particular case BC(M; R; 1) [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ]. tu
      </p>
      <p>Instead of the total number of instances used in the simulation, what happens
if we bound only the number of instances used simultaneously? we raise this
question in the next section and prove that the problem stays Exptime-complete.
4</p>
    </sec>
    <sec id="sec-4">
      <title>Bounded parallel instances</title>
      <p>Now we consider a new parameter in service web composition that bounds the
number of communications in parallel between the target and the services, i.e.
the number of live services executions is bounded, but the number of instances
is not. It appears that the web services composition with unbounded instances
and bounded parallel instances is Exptime-Complete.</p>
      <p>To do so, we limit the configurations of the PCSM R to configurations
where the number of waiting instances is bounded by k. Indeed, when we need
to use a new instance in R , we check if Pin=1 c[i] k. If so, we decrease c[j]
for some j 2 [nI (R) + 1; nH (R)], i.e. we finish an instance that is waiting in an
hybrid state. Let us denote by R k;p the obtained PCSM.</p>
      <p>Problem 2. Bounded Parallel Instances Composition (P BC(M; R; k))
Input : R a set of FSMs;</p>
      <p>M a target FSM.</p>
      <p>k an integer, bounding the number of parallel instances of R’s components
used simultaneously in the simulation.</p>
      <p>Question : M R k;p ?</p>
      <p>Note that P BC(M; R; k) can use an unbounded number of instances but
only k instances in parallel.</p>
      <p>Theorem 2. P BC(M; R; k) is Exptime-complete.
Proof. First we show that P BC(M; R; k) is Exptime. Clearly the entry of any
configuration is bounded by k (hybrid states are included) and therefore we can
check simulation in Exptime, since the depth of the simulation tree is bounded
by kn (see Lemma 1).</p>
      <p>To show the Exptime-hardness, it suffices to note that the unbounded
composition without hybrid states U CHS(M; R; 0) is a particular case of
P BC(M; R; k), since we prove later in theorem 4 that U CHS(M; R; 0) is
Exptime-hard. In fact, the number of tokens in intermediate states of R is
bounded by norm(M ) (property 1). Hence, when R is hybrid state free, the
number of instances that can be used in the simulation is bounded by norm(M ).
In other words, it corresponds to P BC(M; R; norm(M )). tu</p>
      <p>For k a constant, we obtain the following.</p>
      <p>Corollary 1. P BC(M; R; k) is polynomial when k is a constant.
Proof. First of all, let us consider for every configuration c of R k;p , a new
component c[n + 1] = k (Pin=1 c[i]), with n = nI (R) + nH (R).</p>
      <p>For every configuration c in R k;p , the non-empty witnesses fc[i] &gt; 0; i
n + 1g correspond to a partition of k elements (instances) into a sequence of j
non empty subsets, for j = jfc[i] &gt; 0; 1 i ngj k. Note that j is in fact
inferior to min(k; n), but since k is a constant then it is more interesting to keep
it as a lower bound of j.</p>
      <p>
        For every j k, the number of labeled partitions of k elements into a
sequence of j non empty subsets is j! fjkg, where fjkg is a Stirling number of
the second kind [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Hence, the number of configurations in R k;p that have j
non-empty witnesses is bounded by Cnj j! fjkg. Notice that Cnj = e n::: (nj! j+1)
is in the order of O(nj ).
      </p>
      <p>We conclude that the number of configurations in R k;p is bounded by
Pjk=1 Cnj j! fjkg 2 O(nk).</p>
      <p>
        Finally, by applying the simulation algorithm in [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], P BC(M; R; k) can be
decided in O(mv:me), where mv = jQM j + jCR j and me jQM j2 + jCR j2 are
respectively the number of edges and transitions in M and R k;p . tu
      </p>
      <p>
        In the following, we show that P BC(M; R; k) is NP-Complete for loop-free
target FSM. Let a sequence of letters (a word) over and M the FSM that
recognizes exactly . We call the language recognized by M . We consider
the following NP-complete Problem [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ].
      </p>
      <p>Problem 3. SHUFFLE PRODUCT
Input : and 0 two words over an alphabet
Question : 2 0 ?
;
Theorem 3. P BC(M; R; k) is NP-complete whenever M is loop-free.
Proof. Clearly P BC(M; R; k) is in NP since the simulation relation is
polynomial in the size of M . To show the NP-hardness, we reduce SHUFFLE
PRODUCT to it. Let and 0 be an instance of SHUFFLE PRODUCT. We associate
an FSM M which recognizes exactly and R = fN g where N is the FSM that
recognizes exactly 0. Since M is a chain, then the size of a branch of the
simulation tree can not surpass j j. Thus,the simulation verification will only explore
R k;p ’s executions where the size is bounded by j j k:j 0j with k = d jj 0jj e and
therefore the number of instances is bounded by k. Hence, 2 0 iff M R k;p
iff M R . We give an example in figure 5. tu
M
N
a
a
b
b
a
c
c
b
c</p>
      <p>μ = {abacbc}
μ0 = {abc}</p>
      <p>μ
k = d||μ0||e = 2 M</p>
      <p>N⊗2,p</p>
      <p>Another factor of complexity of the WSC problem is the number of hybrid
states in the available services. We investigate next the effect of this parameter
on the complexity of the WSC problem.
5</p>
    </sec>
    <sec id="sec-5">
      <title>Bounded number of hybrid states</title>
      <p>The presence of hybrid states is a source of complexity in a WSC problem. As
mentioned before, the size of intermediate states witnesses in configurations of
R used to simulate M is bounded by norm(M ). We are however unable to
provide a similar bound for the number of hybrid states witnesses.</p>
      <p>Figure 6 is an example of simulation between an FSM M and a PCSM R .
The FSMs in R contain two hybrid states (state 1 and 2) and no intermediate
state. Hence, a configuration of R is a pair of integers witnessing the number
of tokens in state 1 and state 2. The example illustrates the different roles that
an hybrid state of R can play to simulate a state of M . Indeed an hybrid state
of R, can be used as:</p>
      <p>(i) a terminal state, e.g., when testing whether q5 (1; 1), we can consider
the second hybrid state of R as a terminal state and terminate the test, or
(ii)an intermediate state, e.g., when testing whether q2 (1; 1), the second
hybrid state of R here plays the role of intermediate state, or</p>
      <p>both a terminal and an intermediate state, e.g., when testing whether q1
(1; 0), a transition of R labeled by (b; ( 1; 0)) only appears in one branch in the
simulation tree Tsim(M; R ). Hence, the first hybrid state of R is considered
intermediate in one branch and terminal in the other, or
a hybrid state, e.g., when it is used to simulate an hybrid state of H(M ).
We consider in the following the problem defined below.</p>
      <p>M
q0
q1
a
c
q5
b
1</p>
      <p>R
c
d
2
d, (0, −1)</p>
      <p>q4, (1, 0)
c, (0, 1)
q5, (1, 1)</p>
      <p>Tsim(M, R⊗)</p>
      <p>It is worth noting that U CHS(M; R; k + 1) is harder then U CHS(M; R; k).
In the sequel, we progressively investigate the complexity of U CHS(M; R; k)
problem for k = 0, then for k = 1 and finally for k = 2.</p>
      <p>Case of composition without hybrid states (i.e. k = 0)
In this section, we are interested in the problem U CHS(M; R; 0). We first give
a polynomial transformation, denoted K, which is used to reduce BC(M; R; 1)
to U CHS(N; R0; 0). This transformation provides a mean to bound the number
of instances used to prove simulation.</p>
      <p>Definition 8. Transformation K. For an FSM M = ( M ; QM ; FM ; q0M ; M )
and a set of FSMs R = fM1; :::; Mmg, we define K(M; R)=(N; R0=fN1; ::; Nmg)
where:
1. Each Ni is built based on Mi, by adding a letter ti to its alphabet, a final
state fi and a transition set f(q0Mi ; ti; fi)g [ f(q; ti; fi)jq 2 FMi g. All final
states of Mi become intermediate in Ni.
2. N is defined as:
– N = M [ ftij1 i mg;
– QN = QM [ frij1 i mg;
– FN = frmg;
– N = M [ f(q; t1; r1)jq 2 FM g [ f(ri; ti+1; ri+1)j1 i &lt; mg.</p>
      <p>R
c
p3</p>
      <p>Proposition 1. Let M be an FSM, R = fM1; :::; Mmg be a set of FSMs and
K(M; R) = (N; R0 = fN1; ::; Nmg). For p and q two states of respectively M and
R 1 , we have: p (M;(R) 1 ) q iff p (N;(R0) 1 ) q.
q0.</p>
      <p>Proof. By construction of K(M; R), if p
then p (N;(R0) 1 ) q.</p>
      <p>We suppose next that:
If (p; a; p0) 2 M , (q; a; q0) 2</p>
      <p>R 1 and p0
and prove that p</p>
      <p>(N;(R0) 1 ) q.</p>
      <p>For each (p; a; p0) 2 N , we have:
(M;R 1 ) q and p is terminal in M
(M;R 1 ) q0, then p0
(N;(R0) 1 )</p>
      <p>M , then there exists (q; a; q0) 2</p>
      <p>R 1
(N;(R0) 1 ) q0.
– else a = t1, p0 = r1 and q is a product of final states of R. therefore, there
exists (q; t1; q0) 2 (R0) 1 such that q0 = (f1; q0i1 ; :::; q0il ) where q0ij is final
in R such that p0 (N;(R0) 1 ) q0.</p>
      <p>(R0) 1 such that p0
(M;R 1 ) q.</p>
      <p>(N;(R0) 1 ) q then p
We conclude that if p (M;R 1 ) q then p (N;(R0) 1 ) q.</p>
      <p>Reciprocally, we have (p; a; p0) 2 N (respectively (R0) 1 ) and a 2= ftij1
i mg iff (p; a; p0) 2 M (respectively R 1 ). In addition, the definition of K
ensures that if p is final in M and p (N;(R0) 1 ) q then q is final in R 1 . Hence
if p
tu
In particular, we take p as the initial state of M and q the initial state of R 1 .
This implies that:
Proposition 2. Let M be an FSM, R = fM1; :::; Mmg be a set of FSMs and
K(M; R) = (N; R0 = fN1; ::; Nmg). We have: M R 1 iff N (R0) .
Proof. We have N (R0) 1 iff N (R0) . Indeed, each path that starts from
the initial state to a final one in N contains exactly one transition labelled by ti,
for each i 2 [1; m] and a similar path in each Ni contains exactly one transition
labelled by ti.
tu
Hence, K is a polynomial reduction of BC(M; R; 1) problem to the UCHS
problem. This enables to derive the following result.</p>
      <p>Theorem 4. U CHS(M; R; 0) problem is Exptime-complete.</p>
      <p>
        Proof. According to proposition 2, the K transformation reduces BC(M; R; 1)
to U CHS(M; R; 0) in polynomial time. Thus U CHS(M; R; 0) is Exptime-hard.
Since it is also proven Exptime in [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], then U CHS(M; R; 0) is Exptime-complete.
tu
5.2
      </p>
      <p>Case of composition with one hybrid state
We consider the problem U CHS(M; R; 1) where M is an FSM and R a set
of FSMs containing at most one hybrid state (nH (R) 1). We denote k0 =
jQM j:2nI (R):log(norm(M)). Two nodes (q; c) and (q0; c0) in a simulation tree are
called comparable if q = q0 and either c/c0 or c0/c. The nodes (q; c) and (q0; c0)
are said incomparable otherwise.</p>
      <p>Property 3. Let R be a set of FSMs containing at most one hybrid state. Two
configurations of R are comparable by the cover relation, iff they have exactly
the same intermediate witnesses.</p>
      <p>Proof. Acoording to property 2, for c; c0 two configurations in R
c0 iff :
we have c /
1. c and c0 have the same intermediate witnesses; and
2. for every hybrid witness c[h], we have: c[h]
c0[h].</p>
      <p>In the current case, we consider that R has at most one hybrid witness. Hence,
for any pair of configurations of R , condition 2 is verified.</p>
      <p>We conclude that for every two configurations c; c0 in R , c / c0 iff c and c0
have the same intermediate witnesses.
tu
Property 4. Let S be a set of nodes of Tsim(M; R ) that are pairwise
incomparable, then jSj k0.</p>
      <p>Proof. In configurations considered in Tsim(M; R ), intermediate witnesses are
bounded by norm(M ) (property 1). Therefore and according to property 3, the
number of incomparable configurations considered in Tsim(M; R ) is at most</p>
      <sec id="sec-5-1">
        <title>2nI (R):log(norm(M)). Since S QM CR , then jSj k0. tu</title>
        <p>Proposition 3. If nH (R)
(nI (R) + 1)] k02.</p>
        <p>1, then foreach (q; c) 2 Tsim(M; R ), c[h =
Proof. let P be a path in Tsim(M; R ), Int be an interval in N and
S = (vn = (qn; cn))n2Int be a sequence of nodes in P such that:
-vi is the ith node met in P that is comparable to one of its predecessors
v = (qi; c); and
-For each i; j 2 Int, vi and vj are incomparable.</p>
        <p>If Int = ;, then all nodes of P are not comparable. The size of P is then
bounded by k0, therefore, c[nI (R) + 1] k0 for each (q,c) in P.</p>
        <p>We suppose next that Int 6= ; and take Int = [1; k], k 2 N. We prove
recursively that for each l 2 [1; k], cl[h] l:k0.</p>
        <p>For l = 1, we have c1[nI (h] k0.</p>
        <p>For 1 &lt; l &lt; k, we suppose that cl[h]
vl+1 in P is either:
1. comparable to a node vi with i 2 [1; l]. In this case, c[h] &lt; ci[h] l:k0
(otherwise v should be a leaf).
2. incomparable to all its predecessors. The number of such nodes is bounded
by k0. And since transitions displacements is in f 1; 0; 1gh, then we have
c[h] &lt; l:k0 + k0.</p>
        <p>Therefore cl+1[h]</p>
        <p>(l + 1):K0.</p>
        <p>Once we reach vk, each one of its possible successors v = (q; c) is comparable
to a node vi with c[h] &lt; ci[h], except for the last one that is the leaf of P.</p>
        <p>Finally, since k &lt; k0 (because S is a sequence of incomparable nodes), we
conclude that each node of P is in QA ([1; norm(A)]I [1; k02]). tu
l:k0. Each node v = (q; c) between vl and</p>
        <p>Since deciding simulation only requires to visit a node once, we argue next
that this problem is in APspace (i.e a problem that can be solved by an
alternating Turing machine in polynomial space): the size of a position of the
simulation tree is polynomial in the input size (Proposition 3). Hence a polynomial
space alternating turing machine can solve this simulation problem: universal
states correspond to the target’s and existential states correspond to the shuffle
product’s configurations. Note that APspace corresponds to Exponential time
complexity. Given the above, we conclude that:
Lemma 2. U CHS(M; R; 1) is in Exptime.</p>
        <p>To prove the Exptime-hardness of the problem, we recall that U CHS(M; R; 0) is
Exptime-hard (theorem 4) and that U CHS(M; R; 1) is harder than U CHS(M;
R; 0).</p>
        <p>Theorem 5. U CHS(M; R; 1) is Exptime-complete.</p>
        <p>Case of composition with two hybrid states
In this section, we consider the problem of unbounded composition of web
services with at most 2 hybrid states in R, i.e. U CHS(M; R; 2). Our approach is
based on relating this simulation problem to the reachability issue.</p>
        <p>For x 2 Ni1 and y 2 Ni2 , we denote the concatenation of two vectors x and
y, (x:y) 2 Ni1+i2 such that:
– States: S QM fc 2 NnI (R)j Pii==1nI (R) c[i] norm(M )g.
– Transitions: W S S f 1; 0; 1g2 such that:
((q; c); (p; d); x) 2 W iff there exists a 2 M , y 2 N2 such that (p; a; q) 2
QM and ((c; y); a; (d; y + x)) 2 R and Pii==1nI (R) c[i] norm(M ) and
Pii==1nI (R) d[i] norm(M ).
– Initial configuration: the system starts with the state (q0M ; f0gnI (R)) and the
vector (0; 0).</p>
        <p>Figure 8 depicts an example of a VASS associated to an FSM M and a set of
FSMs R.
q3
a
c</p>
        <p>M
q0
a
q1
a
q4
b
q2
(a)
a
2
c
R
1
3
a
b
a</p>
        <p>
          The reachability issue in 2-dimension VASSs has been investigated by
Hopcroft and Pansiot [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ] in the general case where displacements are in N2.
[
          <xref ref-type="bibr" rid="ref11">11</xref>
          ] gives an algorithm to prove the semi-linearity of the reachability set of such
systems. The algorithm builds a tree Treach labeled by 3-tuples (p; c; Ac) where
p is the current state, c 2 N2 is a vector reached in the system and Ac N2.
(p; c; Ac) denotes that every vector in the linear set fc + 1a1 + ::: + nanji 2
[1; n]; ai 2 Ac and i 2 Ng can be reached in state p from the initial
configuration.
        </p>
        <p>We consider in the following a simulation tree Tsim(M; R )=(V; v0; E), a
recheability tree Treach(VM;R)=(V 0; v00; E0) and a function defined as follows:</p>
        <p>Proposition 4. Let = v0:::vt be a path in Tsim(M; R ). Then there exists a
path 0 = v00:::vt0 in Treach(VM;R) such that vi = (vi0), i 2 [0; t].
Proof. We proof by induction on the length i of the path = v0:::vt.</p>
        <p>For i = 0 we have v0 = (q0M ; c0) = ((q0M ; f0gnI (R)); x0; Ac0 ) = (v00).</p>
        <p>Now suppose that the property is true for i &lt; t and v0:::vi+1 is a path in
Tsim(M; R ). Then by hypothesis there exists a path v00:::vi0 in Treach(VM;R),
such that vj = (vj0 ), j 2 [0; i].</p>
        <p>
          Suppose that vi0 is a leaf in Treach(VM;R). Then according to the algorithm
of Hopcroft and Pansiot [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ], we have either:
– There exist j 2 [0; i 1] such that vj0 = ((p; c); y; Ax) and vi0 = ((p; c); x; Ax)
with y x (see Algorithm ??, line 1). This implies that vj /vi, which
contradicts that vi is not a leaf in Tsim(M; R ), i.e. (c; y)/(c; x).
– There is no transition from vi0 in the system (see Algorithm ??, line 1).
        </p>
        <p>But for vi = (p; (c; x)) and vi+1 = (q; (d; y)) we have vivi+1 2 E which
means that (p; a; q) 2 M and ((c; x); a; (d; y)) 2 R . This implies that
((p; c); (q; d); y x) 2 W . Contradiction.</p>
        <p>Therefore, we have : vi0+1 = ((q; d); y; Ay) is a successor of vi0 in Treach(VM;R),
with vi+1 = (q; (d; y)). We conclude that 0 is a path in Treach(VM;R). tu</p>
        <p>The following corollary is a consequence of Proposition 4.</p>
        <p>Corollary 2. Tsim(M; R ) is a sub-tree of Treach(VM;R).</p>
        <p>
          Clearly the time complexity for computing Tsim(M; R ) is dominated by the
complexity of computing Treach(VM;R). Moreover we know from [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ] that the
size of Treach(VM;R) is in 2-Exptime. Hence, we derive the following complexity
result.
        </p>
        <p>Theorem 6. U CHS(M; R; 2) is in 3-Exptime.</p>
        <p>
          Proof. According to [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ], the size of Treach(VM;R) is of order O(22 ) where
= max(jSj; jW j) c (jQM j N orm(M )nI (R))2 with c is a constant. Then
according to Corollary 2, the size of Tsim(M; R ) is bounded by 222c1+c2 where
c1 and c2 are constants and = log(jQM j) + nI (R) log(N orm(M )). tu
        </p>
        <p>
          Our proof for Theorem 6 can be seen more as an embedding of the search
space explored by a simulation test to the one explored when the reachability
issue is considered. This is an approach that can not so far be generalized because
the best upper bound provided for vector addition systems reachability is
nonprimitive recursive; in fact even the existence of a primitive upper-bound is still
open [
          <xref ref-type="bibr" rid="ref14">14</xref>
          ].
6
        </p>
      </sec>
    </sec>
    <sec id="sec-6">
      <title>Conclusion</title>
      <p>
        In this paper we have considered two parameters that are source of
complexity of the web services composition problem. We have shown that among the
considered problems, several instances remain Exptime-complete when a
parameter is bounded. It remains an open question to identify the complexity of
U CHS(M; R; k) for any k 2 N; [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] proves in the context of Z-Reachability that
the problem is k-Exptime. This complexity is quite far from the known lower
bound (2-Exptime). It is also interesting to improve the polynomial
complexity given for k=2 in [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] (polynomial of the 17th degree) and/or give a simpler
algorithm that can eventually be extended to the general case.
      </p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>Milton</given-names>
            <surname>Abramowitz</surname>
          </string-name>
          and
          <string-name>
            <given-names>Irene A.</given-names>
            <surname>Stegun</surname>
          </string-name>
          .
          <article-title>Handbook of Mathematical Functions with Formulas, Graphs,</article-title>
          and Mathematical Tables. Dover, New York, ninth dover printing,
          <source>tenth gpo printing edition</source>
          ,
          <year>1964</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>Gustavo</given-names>
            <surname>Alonso</surname>
          </string-name>
          , Fabio Casati, Harumi Kuno, and
          <string-name>
            <given-names>Vijay</given-names>
            <surname>Machiraju</surname>
          </string-name>
          .
          <source>Web Services: Concepts</source>
          ,
          <source>Architectures and Applications</source>
          . Springer,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>B.</given-names>
            <surname>Benatallah</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            <surname>Casati</surname>
          </string-name>
          , and
          <string-name>
            <given-names>F.</given-names>
            <surname>Toumani</surname>
          </string-name>
          .
          <article-title>Web Service Conversation Modeling: A Cornerstone for E-Business Automation</article-title>
          .
          <source>IEEE Internet Computing</source>
          ,
          <volume>08</volume>
          (
          <issue>1</issue>
          ):
          <fpage>46</fpage>
          -
          <lpage>54</lpage>
          ,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <given-names>D.</given-names>
            <surname>Berardi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>D.</given-names>
            <surname>Calvanese</surname>
          </string-name>
          , G. De Giacomo,
          <string-name>
            <given-names>R.</given-names>
            <surname>Hull</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Mecella</surname>
          </string-name>
          .
          <article-title>Automatic composition of transition-based semantic web services with messaging</article-title>
          .
          <source>In VLDB</source>
          , pages
          <fpage>613</fpage>
          -
          <lpage>624</lpage>
          ,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <given-names>Tomáš</given-names>
            <surname>Brázdil</surname>
          </string-name>
          , Petr Jančar, and
          <string-name>
            <given-names>Antonín</given-names>
            <surname>Kučera</surname>
          </string-name>
          .
          <article-title>Reachability games on extended vector addition systems with states</article-title>
          .
          <source>In Automata, Languages and Programming</source>
          , pages
          <fpage>478</fpage>
          -
          <lpage>489</lpage>
          . Springer,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <given-names>T.</given-names>
            <surname>Bultan</surname>
          </string-name>
          ,
          <string-name>
            <given-names>X.</given-names>
            <surname>Fu</surname>
          </string-name>
          ,
          <string-name>
            <given-names>R.</given-names>
            <surname>Hull</surname>
          </string-name>
          , and
          <string-name>
            <given-names>J.</given-names>
            <surname>Su</surname>
          </string-name>
          .
          <article-title>Conversation specification: a new approach to design and analysis of e-service composition</article-title>
          .
          <source>In WWW'03. ACM</source>
          ,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <given-names>Jakub</given-names>
            <surname>Chaloupka</surname>
          </string-name>
          .
          <article-title>Z-reachability problem for games on 2-dimensional vector addition systems with states is in p</article-title>
          .
          <source>In Reachability Problems</source>
          , pages
          <fpage>104</fpage>
          -
          <lpage>119</lpage>
          . Springer,
          <year>2010</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Jean-Baptiste Courtois</surname>
            and
            <given-names>Sylvain</given-names>
          </string-name>
          <string-name>
            <surname>Schmitz</surname>
          </string-name>
          .
          <article-title>Alternating vector addition systems with states</article-title>
          .
          <source>In Mathematical Foundations of Computer Science</source>
          <year>2014</year>
          , pages
          <fpage>220</fpage>
          -
          <lpage>231</lpage>
          . Springer,
          <year>2014</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <given-names>Ramy</given-names>
            <surname>Ragab</surname>
          </string-name>
          <string-name>
            <surname>Hassen</surname>
          </string-name>
          , Lhouari Nourine, and
          <string-name>
            <given-names>Farouk</given-names>
            <surname>Toumani</surname>
          </string-name>
          .
          <article-title>Protocol-based web service composition</article-title>
          .
          <source>In ICSOC</source>
          , pages
          <fpage>38</fpage>
          -
          <lpage>53</lpage>
          ,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10. Monika Rauch Henzinger, Thomas A Henzinger, and
          <string-name>
            <surname>Peter W Kopke</surname>
          </string-name>
          .
          <article-title>Computing simulations on finite and infinite graphs</article-title>
          .
          <source>In Foundations of Computer Science</source>
          ,
          <year>1995</year>
          . Proceedings.,
          <source>36th Annual Symposium on</source>
          , pages
          <fpage>453</fpage>
          -
          <lpage>462</lpage>
          . IEEE,
          <year>1995</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11. John Hopcroft and
          <string-name>
            <surname>Jean-Jacques Pansiot</surname>
          </string-name>
          .
          <article-title>On the reachability problem for 5- dimensional vector addition systems</article-title>
          .
          <source>TCS</source>
          ,
          <volume>8</volume>
          (
          <issue>2</issue>
          ):
          <fpage>135</fpage>
          -
          <lpage>159</lpage>
          ,
          <year>1979</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Rodney R Howell</surname>
          </string-name>
          , Louis E Rosier,
          <string-name>
            <surname>Dung T Huynh</surname>
          </string-name>
          , and
          <string-name>
            <surname>Hsu-Chun Yen</surname>
          </string-name>
          .
          <article-title>Some complexity bounds for problems concerning finite and 2-dimensional vector addition systems with states</article-title>
          .
          <source>TCS</source>
          ,
          <volume>46</volume>
          :
          <fpage>107</fpage>
          -
          <lpage>140</lpage>
          ,
          <year>1986</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13.
          <string-name>
            <given-names>Joana</given-names>
            <surname>Jedrzejowicz</surname>
          </string-name>
          and
          <string-name>
            <given-names>Andrzej</given-names>
            <surname>Szepietowski</surname>
          </string-name>
          . Shuffle languages are in p.
          <source>Theoretical Computer Science</source>
          ,
          <volume>250</volume>
          (
          <issue>1-2</issue>
          ):
          <fpage>31</fpage>
          -
          <lpage>53</lpage>
          ,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <given-names>S</given-names>
            <surname>Rao</surname>
          </string-name>
          <article-title>Kosaraju</article-title>
          .
          <article-title>Decidability of reachability in vector addition systems</article-title>
          .
          <source>In Proceedings of the fourteenth annual ACM symposium on Theory of computing</source>
          , pages
          <fpage>267</fpage>
          -
          <lpage>281</lpage>
          . ACM,
          <year>1982</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <given-names>Slawomir</given-names>
            <surname>Lasota</surname>
          </string-name>
          .
          <article-title>Expspace lower bounds for the simulation preorder between a communication-free petri net and a finite-state system</article-title>
          .
          <source>Inf</source>
          . Process. Lett.,
          <volume>109</volume>
          (
          <issue>15</issue>
          ):
          <fpage>850</fpage>
          -
          <lpage>855</lpage>
          ,
          <year>2009</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <given-names>Anca</given-names>
            <surname>Muscholl</surname>
          </string-name>
          and
          <string-name>
            <given-names>Igor</given-names>
            <surname>Walukiewicz</surname>
          </string-name>
          .
          <article-title>A lower bound on web services composition</article-title>
          .
          <source>Logical Methods in Computer Science</source>
          ,
          <volume>4</volume>
          (
          <issue>2</issue>
          ),
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>