Composition and Application of Extended Colored Logic Petri Nets to E-Commerce Systems

Extended colored logic Petri nets (ECLPNs) are extensions of logic Petri nets (LPNs) and colored logic Petri nets (CLPNs). They are equivalent to LPNs and CLPNs, which can describe the batch processing and indeterminacy functions of resources in cooperative systems. The advantage of ECLPNs is that their net structures are much simpler than their equivalent CLPNs, and therefore, ECLPNs can be easily used to model and analyze cooperative systems. For systems containing several subsystems with the same function and structure, we can describe them by a single ECLPN. Then we propose a composition method of ECLPNs. We define the robustness of a system based on ECLPN which reflects the validity of the collaboration of subsystems. We define a strict conservativeness that guarantees data security. The robustness and strict conservativeness of composed ECLPNs are analyzed. An E-commerce example is presented to illustrate the modeling capacity and the advantage of ECLPNs.


I. INTRODUCTION
E-commerce systems are becoming more and more complicated, and their compatibility analysis is a co-NP-hardness problem [1]. A good way is to decompose the E-commerce system into several subsystems, analyze properties of each subsystem, and find the inheriting conditions of the properties when the subsystems are composed. Then the properties of a complete system are obtained. Thus, an E-commerce system can be divided into three classes of subsystems: customers, sellers and a third-party. The subsystems exchange massages and perform batch processes at the same time. However, batch processing brings the problem of data indeterminacy [2].
The associate editor coordinating the review of this manuscript and approving it for publication was Shouguang Wang .
Petri Nets (PNs) [3] are a class of graphs that consists of places, transitions and directed arcs between places and transitions. A siphon is a structure and closely related to properties like liveness and deadlock-free of PNs. Methods of siphon computation and interactive deadlock prevention policies have been proposed in [4]- [6]. PNs can be applied in process mining [7]- [9]. However, PNs with inhibitor arcs [10] cannot describe batch processing functions and passing value indeterminacy as clearly and concisely as logic Petri nets (LPNs) [11] do.
An LPN can describe passing value indeterminacy in cooperative systems. It is a high-level Petri net. Logic transitions in LPNs are attached with first-order predicate logic expressions. When logic expressions are attached to an input transition, they control whether the transition can fire or not. When they are attached to an output transition, they control which place tokens should flow into after the transition has fired. LPNs are applied to business process mining [12]- [14] and Web service discovery [15]. However, a logic output transition in LPNs cannot output tokens correctly according to just the attached logical output expression. LPNs cannot differentiate sources of tokens in the system, which may cause errors during the system running.
In colored Petri nets (CPNs) [16], tokens are differentiated by colors. Places of a CPN are combined with a color set, which represents the colors held in the place. Arcs have inscriptions (arc expressions), variables in an expression are assigned by a binding, and an arc expression indicates what type and how many colored tokens are needed when the corresponding transition fires. The state-of-the-art applications of CPNs are given in [17]- [20]. The extension of CPNs can help to solve the problems in daily-life systems [21]- [26]. In fact, CPNs can be simplified by logical expressions when describing passing value indeterminacy.
Like logical expressions can fold PNs with inhibitor arcs, logical expressions can fold CPNs as well. Colored logic Petri nets (CLPNs) proposed in [27] guarantee that output logic transitions can correctly output tokens by checking their colors and logical expressions. However, there are some defects in CLPNs. Many analysis methods and the firing rules of transitions in CLPNs are the same as those in LPNs. The scale of a CLPN model is nearly the same as that of an LPN model when a complicated system is modeled. Comparing with CLPN, the effectiveness of an ECLPN model can be illustrated.
ECLPNs [28] can describe multiple LPN models with the same structure by one model. Thus, the process can be further simplified by using ECLPNs. Customer subsystems share the same structure, so only one customer subsystem needs to be built, and all customers share the subsystem with distinct colored tokens. Therefore, ECLPNs can simplify net structures, and ensure the same modeling ability with CLPNs at the same time. Thus, we propose a composition method of ECLPNs to model E-commerce systems in this paper. Firstly, the basic design module is defined. The definition of the composition of ECLPNs is given. Then, the maintaining conditions of robustness and strict conservativeness of ECLPNs are analyzed.
The rest of the paper is organized as follows. Section II presents the basic concepts of LPNs, CPNs, CLPNs, and ECLPNs briefly. Section III gives the composition method of ECLPNs. Section IV describes an E-commerce system and makes a comparison between an ECLPN model and the corresponding LPN model. Section V concludes this paper and discusses the future work.

II. PRELIMINARIES
In this section, concepts of PN [29]- [38], LPN [11] and CPN [16] are reviewed briefly, and the formal definition of ECLPN is presented. More information about these models can be referred to the corresponding references.
In the rest of this paper, we use B ∈ {false, true} to denote the Boolean type, N + = {1, 2, . . .} to denote the set of all positive integers, and N + n = {1, 2, . . . , n} to denote the first n elements in N + . Definition 1 [3]: A Petri Net is described as a three-tuple PN = (P, T , F), where P is a finite set of places; T is a finite set of transitions; and F is a set of directed arcs.
Definition 2 [2]: Given a Petri net PN = (P, T , F). If x ∈ P ∪ T is a node in PN, then • x = {y|(y, x) ∈ F} and x • = {y|(x, y) ∈ F} are defined as its pre-set and post-set, respectively.
Definition 3 [11]: A Logic Petri Net is described as a sixtuple LPN = (P, T , F, I , O, M ), where P is a finite set of places; T = T D ∪ T I ∪ T O is a finite set of transitions; F is a set of directed arcs; I is a mapping function such that ∀t ∈ T I , I (t) is a logical input expression denoted by f I ; O is a mapping function such that ∀t ∈ T O , O(t) is a logical output expression denoted by f O ; and M is a marking function, which defines the number of tokens in each place.
Definition 4 [16]: A coloured Petri net is described as a nine-tuple CPN = ( , P, T , A, N , C, G, E, Init), where is a finite set of colors; P is a finite set of places; T is a finite set of transitions; A is a finite set of directed arcs; N is a node function; C is a color function; G is a guard function; E is an arc expression; and Init is an initialization function.
Definition 5 [27]: A coloured logic Petri net is described as an eight-tuple CLPN = (C, P, T , F, I , O, M , IC), where C is a finite set of consecutive prime numbers, where each prime represents a token color; P is a finite set of places, and each place can store a token; T is a finite set of transitions; F is a finite set of directed arcs; I is a mapping from a logic input transition to a logic input expression; O is a mapping from a logic output transition to a logic output expression; M is a marking function that maps P to the set {0, 1}; and IC is a color marking function.
The formal definition of ECLPNs is presented as follows. Definition 6 [28]: An ECLPN is described as an eleven-tuple ECLPN = ( , P, T , A, C, G, E, Init, is a finite set of non-empty types, called a color set; 2) P is a finite set of places, including one initial place p 0 , and one end place p E ; 3) T = T D ∪ T L is a finite set of transitions, where a) T D is the set of ordinary transitions. T D is the same with the set of transitions in Colored Petri Nets; and b) T L is called a set of logic transitions, where ∀t ∈ T L , tokens in input places for t to be enabled are restricted by a logic input expression f I (t), and tokens in output places after t fires are restricted by a logic output expression f O (t);

4)
A is a finite set of arcs such that P ∩ A = T ∩ A = ∅; 5) C: P → is a color function, which specifies the set of token colors on a place. ∀p ∈ P, C(p) = by default; 6) G is a guard function. It is defined from T into expressions such that: where Type [16] means the type of an expression or a variable, Var [16] means the set of variables in an expression, and G(t) = true by default; 7) E is an arc expression function. It is defined from A into expressions with the binding b [16] such that a) ∀(p, t) ∈ A, if t ∈ T L , then E(p, t)<b> is the set of all multisets of the token type. Otherwise, E(p, t)<b> is the same as those in CPNs; and b) ∀(t, p) ∈ A, if t ∈ T L , then E(t, p)<b> is the set of all multisets of the token type. Otherwise, E(t, p)<b> is the same as those in CPNs; 8) Init is an initialization function. It is defined from P into closed expressions, such that: ∀p ∈ P : Type(Init(p)) = C(p) MS ; 9) I is a mapping from T L to a logic input expression, such that ∀t ∈ T L , I (t) = f I (t); 10) O is a mapping from T L to a logic output expression, such that ∀t ∈ T L , O(t) = f O (t); and 11) M : P → MS is a marking function. ∀p ∈ P, M (p) denotes the multiset of colored tokens in p. At a time point in the net, the set of multisets {M (p)|p ∈ P} is called a marking, denoted by M . The initial marking is denoted by M 0 , and the end marking is denoted by M E . Here is a detailed explanation about E(p, t)<b>. For t ∈ T and p ∈ • t, b is a binding, assigning colors to the tokens. The expression set on a directed arc (p, t) is E(p, t)<b>. Because of the passing value indeterminacy, there is more than one expression that can be accepted by the logic expression, which is attached to a logic transition. For instance, given a binding b =<v 1 = s, v 2 To derive the firing rules of a transition in ECLPNs, some calculation methods of multisets are defined as follows.
Definition 7 [28]: MS is a multiset that has n types of element. The type set Elem = {e 1 , e 2 , . . . , e n } is formed by n types above. Function S maps a multiset to its type set.
is called the product form of MS.
Here we define the subset of a multiset. Definition 8: MS 1 and MS 2 are two multisets. Elem i is the type set of The firing rule of ECLPNs relies on colored tokens in pre-sets of a transition.

III. THE COMPOSITION OF ECLPNS
In this section, the input matrix and output matrix are defined. Basic CPN modules are given based on the matrix. The formal definition of composed ECLPNs is presented. Robustness and strict conservativeness of composed ECLPNs are analyzed. Finally, the procedure of ECLPN composition is given.

A. BASIC DESIGN MODULES
Definition 10: CPN = { , P, T , A, N , C, G, E, I }, ∀p j ∈ P, t i ∈ T , and binding b. Its input matrix is defined as   The output matrix is defined as A system is composed of several subsystems, and the subsystems are composed of basic design modules. Two kinds of modules are introduced in this section: sequential CPN module ( Fig. 1) and choice CPN module (Fig. 2). and the legend is presented in Fig. 3.
The sequential CPN module is defined below.
is a finite color set; 2) P = {p 1 , p 2 , . . . , p n } with n ∈ N + ; 3) T = {t 1 , t 2 , . . . , t n−1 }; 4) A is a set of directed arcs; 5) E is an arc expression function; and other elements are one. 1 n−1 is an (n − 1)-dimension vector with each element being one; and and other elements are one. The sequential CPN module is applied in describing a series of successive operations.
For the parallel PN module in [29], ∃P para ⊆ P, if ∀p i ∈ P para , p j ∈ P para : and i = j, then all places in P para can be represented by a place p c in a sequential CPN module, and ∀p i ∈ P para , i ∈ N + n , is represented by a unique colored token in p c . For example, when n = 3, the input matrix IM − S and the output matrix OM + S are respectively given below. For The choice CPN module is defined below.
where 1 n×n is an n × n matrix with each element being one. Int n is an n-dimension square matrix, elements on the principal diagonal are f int (E(p i , t i+n ) <b>), i ∈ N + n , and other elements are one. VInt n is an n-dimension with elements being f int (E(p 1+n , t i )<b>), i ∈ N + n , and 1 n is an n-dimension with elements being one; and where Int n is an n-dimension square matrix, elements on the principal diagonal are f int (E(t i , p i )<b>), i ∈ N + n , and other elements are one. VInt n is an n-dimension with elements being f int (E(t i+n , p n+2 ) <b>), i ∈ N + n . A choice CPN module represents multiple competing choices for a successive operation.
For example, when n = 3, the input matrix IM − C and the output matrix OM + C are respectively given below.
In IM − C and OM + C , the row label is [p 1 , p 2 , p 3 , p 4 ,

B. THE COMPOSITION OF ECLPN S
In this section, a complicated system S is modeled by the composition of ECLPNs. The subsystem ss of S is modeled by an ECLPN, and CPN modules form ss.
A complicated system is composed of multiple subsystems. There is no guarantee that different subsystems can run at exactly the same pace, and one subsystem process cannot be delayed by another slow subsystem. To solve this problem, we use an ECLPN to describe the composition in this work. A subsystem S in Fig. 4 is an example.
S is formed by one sequential CPN module C and two CPN modules S 1 and S 2 . S 1 and S 2 have different structures and are connected with C via places In 1 , In 2 , Out 1 , and Out 2 . If t 1 fires by the CPN firing rules, it requires tokens in all its pre-sets. Therefore, it is necessary to attach a logic expression to t 1 , for the sake of guaranteeing the independence of S 1 and S 2 . Similarly, if t 2 fires by the CPN firing rule, it outputs tokens to all its post-sets, without checking whether C has imported a token from a certain subsystem or not. Thus, it is necessary to attach a logic expression to t 2 , to ensure that t 2 outputs tokens to correct places.
The binding for By the firing rule in Definition 9, the ECLPN model can describe the system soundly.
The composition of ECLPNs is defined below. = ∪ l l ; 2) P = (∪ l P l )∪P C , where P C is the set of channel places.
Different ECLPNs are connected with channel places; 3) T = ∪ l T l ; 4) A = (∪ l A l ) ∪ A C , A C is a set of arcs. Arcs in A C are related to channel places; 5) C: P → , where i and j are color sets of ECLPN i and ECLPN j ; 6) G is a guard function, and G(t) = G l (t), t ∈ T l ; 7) E is an arc expression function, the binding b = ∪ l b l , where E c (a)<b> is the expression on arcs A ∈ A c , which is set by the actual situation. ∀p c ∈ P c : E c ( • p c , p c )<b>= E c (p c , p • c )<b>, because channel places change no token; 8) Init is an initialization function, where 9) I is a mapping from T L to a logic input expression, such that ∀t ∈ ∪ l T Ll , I (t) = I l (t); 10) O is a mapping from T L to a logic output expression, such that ∀t ∈ ∪ l T Ll , O(t) = f O (t); and 11) M : P → MS is the marking function. M 0 denotes the initial marking, whereas M E denotes the end marking.

C. THE PROPERTY ANALYSIS OF ECLPN C
In this section, we discuss the conditions for maintaining robustness and strict conservativeness of ECLPNs.
The robustness of an ECLPN shows that all the tokens in the initial place at the initial marking can flow to the end place at the end marking. It reveals that every subsystem can complete the task and there is no remaining token in the process. Let M 0 denote the initial marking, and M E denote the end marking. The definition of robustness for an ECLPN is presented below.
3) ∀t ∈ T , t is live. The composition of ECLPNs is an ECLPN. Conditions for the inheritance of robustness are discussed below.
If a component ECLPN is not robust, then, the composition is not robust. Provided that each system is robust before composition, the robustness of the composition depends on arc expressions which are connected to channel places. we have the following result.
In an ECLPN, colored tokens represent data packages. Data are processed in different subsystems. The color indicates the source of a token. After the data processing, tokens return to the source according to their colors. The strict conservativeness of an ECLPN C reveals that types and quantities of tokens remain static from the initial marking to any reachable marking.
The strict conservativeness for an ECLPN is defined as follows.
Definition 15: . Similar to the robustness, given that each system is strictly conservative, the inheritance of strict conservativeness also depends on arc expressions which are connected to channel places. Then we have the following theorem.
Theorem 2: Let ECLPN C be composed by ECLPN l = ( l , P l , T l , A l , C l , G l , E l , Init l , I l , O l , M l ), l ∈ {1, 2}. ECLPN C is strictly conservative if 1) ECLPN 1 and ECLPN 2 are robust and strictly conservative; and 2) For the binding b of ECLPN C , there is a set of channel places P cI ⊆ P c , P cI = {p cIj | • p cIj ∈ ECLPN 1 }, j ∈ N + |PcI | and a Ij = ( • p cIj , p cIj ). Similarly, there is a channel place set P cO ⊆ P c , P cO = {p cOk |p • cOk ∈ ECLPN 1 }, k ∈ N + |PcO| and a Ok = (p cOk , p • cOk ), and then, , M l0 is the initial marking, and ∀M l ∈ R(M l0 ). M lE is the end marking. p l1 is the initial place, and p lE is the end place. Elem l is the type set for M l0 (p l1 ). H (Elem l ) = {h(e)|e ∈ Elem l } is the coefficient set for Elem l .
Given that ECLPN 1 is strictly conservative, we have 1) When Condition a) fails, ∃e 1 ∈ Elem 1 , such that h 1 (e 1 )> h 2 (e 1 ). Let r = h 1 (e 1 )-h 2 (e 1 ). There is no transition in ECLPN 2 consuming the remaining r tokens colored as e 1 , and then r · e 1 ∈ M E ( •• p cOk ), k = N + |PcO| , where •• p cOk ∈ P 2 and •• p cOk = p E2 . Colored tokens in an ECLPN flow independently by the firing rule. Then in the marking M 2E , the sum of tokens is e∈Elem2 h(e) · e + e∈Elem1 h r (e) · e, where e∈Elem1 h r (e) · e is the sum of tokens in place •• p cOk , and h r (e) is the coefficient of the type which is remaining in place •• p cOk . We have that e∈Elem1 h r (e) · e ⊇ r · e 1 . Therefore, e∈Elem2 h(e) · e + e∈Elem1 h r (e) · e ⊇ e∈Elem2 h(e) · e. Thus, ECLPN 2 is not strictly conservative. Therefore, situations a) -c) cannot ensure that ECLPN C is strictly conservative; 2) The situation d) does not exist, and the reason is the same with 2) in the proof for Theorem 1; 3) In situation e), if Elem 1 ⊆ Elem 2 and Condition a) holds, then Sum 1 ⊆ Sum 2 . Given that ECLPN 1 and ECLPN 2 are strictly conservative, we have the sum of tokens stay constant in ECLPN 1 and ECLPN 2 .
. It shows that the sum of tokens does not change when tokens transferring between ECLPNs. Besides, Sum 1 ⊆ Sum 2 ensures that there is no redundant token in ECLPN 2 . Therefore, ECLPN C is strictly conservative; and 4) If ∃e 1 ∈ Elem 1 : e 1 / ∈ Elem 2 , ∃e 2 ∈ Elem 2 : e 2 / ∈ Elem 1 , and D 1 = {d 1 |d 1 ∈ Elem 1 \Elem 2 }, then the type set of M E ( •• p cOk ) is D 1 , k = N + |PcO| . There is no transition in ECLPN 2 consuming the remaining tokens in M E ( •• p cOk ), k = N + |PcO| . In the marking M 2E , the sum of tokens is e∈Elem2 h(e) · e + e∈D1 h r (e) · e, where e∈D1 h r (e) · e is the sum of tokens in place •• p cOk , and h r (e) is the coefficient of the element which is remaining in place •• p cOk . Then we have e∈D1 h r (e) · e = ∅, and therefore, e∈Elem2 h(e) · e + e∈D1 h r (e) · e ⊇ e∈Elem2 h(e) · e. Thus, ECLPN 2 is not strictly conservative. As a result, situation f) cannot ensure that ECLPN C is strictly conservative.

D. COMPOSITION PROCEDURE OF ECLPN S
Suppose that a complicated system is composed of multiple subsystems, and information transfer between subsystems. Then the composing procedure of an ECLPN C model is presented below.
Step 1: Build a CPN subnet sn 1 for a subsystem by sequential and choice CPN modules, and use colored token c 1 to simulate the running process of the subsystem; Step 2: For another subsystem, if it shares the same structure with sn 1 , then it uses a colored token c 2 in sn 1 to simulate its running process. We then transform ordinary transitions into logical transitions by attaching logical expressions. Arc expressions also make changes accordingly, and sn 1 becomes an ECLPN. If the subsystem has a different structure from sn 1 , then we construct another CPN subnet sn i , i = {2, 3, . . .}, and use colored token c i to simulate its running process. Repeat Step 2 until all subsystems are simulated in subnets; Step 3: For a subnet sn i , i ∈ N + n , if it receives tokens from sn j , j = {1, 2, . . . , i − 1, i + 1, . . .}, then we attach logic expressions to the transition in sn j . The expression includes all types in sn j . Arc expressions also make changes accordingly, and sn j becomes an ECLPN; and Step 4: Connect all sn i , i = {1, 2, . . .}, by channel places and set arc expressions. The Composition of ECLPNs is complete.
Remark 1: In Step 1, building a CPN subnet begins with a simple, bounded, live, reversible CPN. It is elaborated by sequential and choice modules in a Top-down manner [30].
Remark 2: In Step 2, the purpose of attaching logic expressions is to keep c 1 and c 2 independent.
Remark 3: In Step 3, if there is a CPN subnet, it has only one type of token, and receives no token from any other subnets, and then, it can be regarded as an ECLPN, whose logic expression of all transitions is the Boolean constant true.

IV. ECLPN MODEL OF AN E-COMMERCE SYSTEM
In this section, An ECLPN model ECLPN EC is presented to describe an E-commerce system [29] and make a comparison with the LPN model LPN EC in [29].
A CLPN [27] model is similar to LPN in scale. Therefore, we compare ECLPN EC with LPN EC instead of a CLPN model.

A. INTRODUCTION OF AN E-COMMERCE SYSTEM
The E-commerce system is composed of 3 subsystems, i.e., customers, a merchant and a third-party. Customers accomplish the following operations: placing an order, making the payment or being refused, confirming the receipt of the commodity, and waiting for the confirmation of the receipt of payment from the merchant. The merchant sequentially receives an order, checks the inventory to decide whether to accept the order or not, checks the payment, delivers the product and confirms the receipt of payment. The third-party keeps the payment until the customer has confirmed the receipt of the commodity.

B. ECLPN EC MODEL
The composing procedure of ECLPN EC according to Section III is given below.
Step 1: Construct the customer subnet sn c by sequential and choice CPN modules. For all the customer subsystems that share the same structure, their operation processes are all described in sn c by different colored tokens; Step 2: Construct the merchant subnet sn m and the thirdparty subnet sn tp by sequential CPN modules. sn c , sn m and sn tp are shown in Fig. 6(a), (b), and (c), respectively; In sn c , the binding is b 1 =<con 1 = c, v 1 = c 1 , v 2 = c 2 , . . . v n = c n >. {v 1 , v 2 , . . . , v n } denotes the set of tokens that are carrying data in customer subsystems. {c 1 , c 2 , . . . , c n } denotes the color of tokens, and colors implicate customers in sn c . {con 1 } denotes the control token, which is colored as {c}. The control token controls and records the operation process of other tokens. p in_j is the initial place and p out_j is the end place.
Let set c be the set of MS c , where MS c makes the logic expression ∪ n i=1 c i be true. There are 2 n elements in set c . In sn c , all arc expressions are {c} ∪ set c .
In sn m , the binding is b 2 =<con 2 = m>, and {con 2 } denotes the control token in sn m , which is colored as {m}. All arc expressions are m. p in is the initial place, and p out is the end place.
In sn tp , the binding is b 3 =<con 3 = tp>, and {con 3 } denotes the control token in sn tp , which is colored as {tp}. All arc expressions are tp. p in_TP is the initial place, and p out_TP is the end place. Step 3: Connect the three subnets by channel places {p c1 , p c2 , . . . , p c9 }, and the composition of ECLPNs is built as Fig. 7.
In sn m , transition t decision checks whether the product is in stock or not. If it is in stock, related tokens flow to p c2 , otherwise they flow to p c3 . Tokens flowing into sn m via p c1 are the same with tokens flowing out of sn m through p c2 and p c3 .
The binding of ECLPN EC is b M =<con 1 = c, con 2 = m, con 3 = tp, v 1 = c 1 , . . . v n = c n >, con 1con 3 are control tokens for sn c , sn m , and sn tp , respectively. {v 1 , v 2 , . . . , v n } is the set of tokens carrying data in customer subsystems. They are produced in sn c , flow into sn m and sn tp , and return to sn c in the end.
Arc expressions in ECLPN EC are updated as follows. All tokens in the set {v 1 , v 2 , . . . , v n } transmit between subsystems. Therefore, all arc expressions which are related with channel places {p c1 , p c2 , . . . , p c9 } are set c .
In sn m , expressions on these arcs are {m} ∪ set c , and they are (t order , p order ), (p order , t decision ), (t payment , p payment ), and (p payment , t product ). Expressions on arcs (p in , t order ), (t decision , p decision ), (p decision , t payment ), (t product , p product ), (p product , t get_payment ), (t get_payment , p out ), (p out , t * ), and (t * , p in ) remain {m}.
Logic transitions and logical expressions are set below.
In sn c , all transitions are logic transitions, and input and output expressions are f I = f O = {c} ∪ set c ; VOLUME 8, 2020 For sn m , it is robust and strictly conservative before the composition, and its input channel places are {p c1 , p c4 , p c6 } and output channel places are {p c2 , p c3 , p c5 , p c9 } in the composed net, where conclusions 4) to 6) hold. 4) Tokens flowing in sn m via p c1 is the same with tokens flowing out from sn m through p c2 and p c3 ; 5) Tokens flowing in sn m via p c4 is the same with tokens flowing out from sn m through p c5 ; and 6) Tokens flowing in sn m via p c6 is the same with tokens flowing out from sn m through p c9 ; For sn tp , it is robust and strictly conservative before the composition, and its input channel places are {p c7 , p c5 } and output channel places are {p c4 , p c6 } in the composed net, where conclusions 7) and 8) hold. 7) Tokens flowing in sn tp via p c7 is the same with tokens flowing out from sn tp through p c4 ; and 8) Tokens flowing in sn tp via p c5 is the same with tokens flowing out from sn tp through p c6 . As a result, ECLPN EC is robust and strictly conservative by 1) to 8), according to Theorems 1 and 2.

C. COMPARISON BETWEEN ECLPN EC AND LPN EC
Suppose that the complicated E-commerce system is composed of n customers, n ∈ N + , a seller and a third-party participant. The comparison between ECLPN EC in this work and LPN EC in [29] are presented in Table 1.
The reduction rate in Tables 1-2 is defined as: From Table 1, we can see that the number of places, transitions and directed arcs are constant in ECLPN EC , whereas LPN EC needs to build a subnet for each subsystem. With the increase in the number of subsystems, the scale of LPN EC continues to expand.
In the offseason, for instance, suppose that there are 3 customers participating the E-commerce system at the same time, and the comparison on the scale is shown in Table 2. In the peak season, suppose that there are 15 customers participating the E-commerce system at the same time, and the comparison on the scale is shown in Table 3.
According to Tables 2 and 3, with the increase of n, the reduction rate of ECLPN EC is increasing, and thus ECLPN EC is kept in a small scale.
If there are more sellers and third-party participants, ECLPN EC can describe the process in those subsystems by using more colored tokens, without any change in the system structure and scale. The size of model can be further reduced.

V. CONCLUSION
In this paper, we give the method of the composition of ECLPNs and analyze its properties. The formal definition of the composition of ECLPNs is given. Conditions for the inheritance of robustness and strict conservativeness are discussed. We give the procedure of building a composition of ECLPNs from basic design modules. Besides, we apply ECLPN C in modeling and analyzing an E-commerce system, and make a comparison with an LPN model. The result shows that the ECLPN model has a simpler structure and lower complexity. Future work will study the maintenance of other properties, and apply ECLPNs in other fields, such as manufacturing systems [39], [40], knowledge-based systems [41], and transportation systems [42].
YUYUE DU received the B.S. degree from Shandong University, Jinan, China, in 1982, the M.S. degree from the Nanjing University of Aeronautics and Astronautics, Nanjing, China, in 1991, and the Ph.D. degree in computer application from Tongji University, Shanghai, China, in 2003. He is currently a Professor with the College of Computer Science and Engineering, Shandong University of Science and Technology, Qingdao, China. He has taken in over 20 projects supported by the National Nature Science Foundation, the National Key Basic Research Developing Program, and other important and key projects at provincial levels. He has published over 200 articles in domestic and international academic publications, and they are embodied over 150 times by SCI and EI. His research interests are in formal engineering, process mining, Petri nets, real-time systems, web services, and workflows.
LIANG QI (Member, IEEE) received the B.S. degree in information and computing science and the M.S. degree in computer software and theory from the Shandong University of Science and Technology, Qingdao, China, in 2009 and 2012, respectively, and the Ph.D. degree in computer software and theory from Tongji University, Shanghai, China, in 2017. From 2015 to 2017, he was a Visiting Student with the Department of Electrical and Computer Engineering, New Jersey Institute of Technology, Newark, NJ, USA. He is currently with the Shandong University of Science and Technology. He has published more than 50 articles in journals and conference proceedings. His research interests include Petri nets, machine learning, optimization, and intelligent transportation systems. VOLUME 8, 2020