Depth-First Net Unfoldings and Equivalent Reduction

: In Petri net unfolding, according to the strategies of breadth ﬁrst and depth ﬁrst, the biggest problem lies in the potential explosion of the state space. Unfolding generates either accessible trees or branch processes. Making marking reduction or branch cutting accessible proves to be an effective approach to mitigating the state space expansion. In this paper, we propose three reduction rules based on similarity equivalence, conduct state space reduction, present three theorems supported by a case study, and propose a new unfolding algorithm for the unfolding process. In both the new case and the experiments, the completeness, optimality, completeness, and memory and time consumption are reduced by about 60%


Introduction
Exploring the path of a concurrent system [1][2][3][4] may lead to a state space explosion.Partial order semantics [2,[5][6][7][8][9][10][11] and prime event structure have proven to be efficacious techniques in alleviating state space explosions during traversal.The concurrency of the Petri net is a valuable tool for concurrent system modeling.Petri net unfolding technology effectively combines partial sequence semantics and prime event structure.However, it can produce state space explosions during the unfolding process and reach a level of proximity at the factorial (n!) level when traversing paths, with n representing the number of changes.The tireless pursuit of scholars in this field is finding ways to reduce the state space, decrease the storage space, and simplify computational complexity.This paper analyzes the state space reduction and the similarity of change to induce a substantial reduction in the state space.Exploring all conceivable paths of a system that are not exhaustive, as well as executing equivalent path reduction, comprise a viable solution to the problem.Some scholars have made contributions in terms of state space reduction and similarity equivalence.For instance, Jensen [12] applied symmetry to reduce the state space of the CPN (color Petri net) using limited conditions, especially considering only fully symmetrical properties.Chiola [13] made a similar reduction, but also according to the symmetry factor of the emission.Schmidt [14] studied the symmetry reduction in the context of the Petri network.Junttila [15] studied the complexity of the question.However, how to reduce the state space during the unfolding process remains a persisting problem that remains to be solved.
Petri net unfolding [12][13][14][15][16][17][18][19][20] is a concurrency theory that is based on semantics proposed by McMillan.This theory has been extended to support nets with read arcs and applied in the context of both model checking and path traversal in concurrent systems.Prime event structures are utilized to analyze the partial ordering relationship between events, thereby facilitating efficient model checking or path analysis.The starting point of this work is in devising strategies to reduce state space expansion and conserve resources in the process.
events, thereby facilitating efficient model checking or path analysis.The starting point of this work is in devising strategies to reduce state space expansion and conserve resources in the process.
This study explores a transition system (in the context of a bounded net), which unfolds into a tree exhibiting the same behavior.The unfolding of the net can be equivalently conceptualized in terms of true concurrency.The deployment process involves non-deterministic selection or marking a cutout event when the same transition rule is encountered, until no further transitions are possible.The unfolding follows a partial order, and as each new transition may be added, the order of selection changes, leading to a different maximum expansion.
To determine whether a specific place p in the net N can be marked, the unfolding process can be extended.This involves adding a marker Mt to each new transition t as it unfolds.When triggering transition t, the process checks whether Mt has already occurred.If it has, Mt is considered a cut-off node and is not executed.The enabled transitions are repeatedly triggered in a cyclic manner until no further transitions are possible in the net, indicating successful and complete deployment.
Otherwise, the algorithm examines whether an earlier added transition t′ fulfils Mt′ = Mt; in such an instance, it designates t as a cut-off node, signifying that this search branch will no longer be explored.The search concludes without success when no additional transition can be incorporated.In the process of unfolding, it is crucial to implement effective measures for state space reduction.The similarity equivalence can effectively reduce the state space while lowering the computational complexity and memory consumption.
As has been widely acknowledged in the literature, the correctness of the searchi.e., the assurance that the search will always terminate with the correct result-is highly dependent on the strategy employed [6].Several papers [6,7,12] have proposed breadthfirst strategies that have been shown to be correct.
Various strategies can be used to conduct the search, with breadth-first and depthfirst strategies being the most commonly employed.Figure 1 depicts the paths of the deployment net using depth-first and breadth-first strategies, respectively.This paper employs the improved instance in [1] to showcase the correctness of a depth-first search in net unfolding, while conducting an equivalence reduction on the unfolding net.This article is structured as follows: In Section 2, the study defines the transition system and related concepts, alongside a presentation of classical algorithms for unfolding.Section 3 introduces the depth-first unfolding algorithm of the net, followed Symmetry 2023, 15, 1775 3 of 14 by a case study of the unfolding net, thereby establishing the correctness of the depth-first search algorithm.In Section 4, three reduction strategies are proposed and implemented to reduce the unfolded net, resulting in the final reduced equivalent net.Finally, Section 5 provides a detailed discussion on the results.
Among them, ∀x ∈ P ∪ T: Definition 2. (Reachability) ∑ = (P, T, F, M 0 ) as a Petri net: (1) If there is a transition t and the markings M and M satisfy M[t M , then the marking M from M is directly reachable; that is, M[σ M , then the marking M from M is reachable.All sets of identifiers reachable from the marking M are denoted as R(M).
In a net N, nodes x, y ∈ P ∪ T: (1) x and y belong to a causal relationship, denoted as x ≤ y, if and only if there is a path from x to y in N. If x = y, it is recorded as x < y; (2) x and y belong to a conflicting relationship, denoted as x # y, if and only if ∃t 1 , t 2 ∈ T: ) x and y belong to a concurrent relationship, denoted as x co y, if and only if they satisfy ¬(x < y ∧ y < x ∧ x # y), that is, x and y are neither causal nor conflicting.
Definition 9. (Cut-off event) Let β be a prefix for network expansion, with e 1 and e 2 being two of the events, and satisfy Marking ( , then e 2 is called a cut-off event.

Net Unfolding
In this section, we provide an informal but precise definition of unfolding.For formal definitions, readers may refer to [7].

Depth-First Unfolding
Upon net expansion, the process commences with a place for each element of MI, originating from a state.For the Petri net N depicted in Figure 2, MI = {a, b, c, d}.
We proceed to generalize the concept of potential extension: if the current labeled net

Depth-First Unfolding
Upon net expansion, the process commences with a place for each element of MI, originating from a state.For the Petri net N depicted in Figure 2, MI = {a, b, c, d}.
We proceed to generalize the concept of potential extension: if the current labeled net permits reaching a marking m, labeled by a marking M of the original net, and M enables a transition t culminating in a marking M , then the unfolding is augmented with a new event labeled by t, and for each output place p of t in N, a new place labeled by p is added.
{If similarity (new instances) does not exist in π, new instances of places Superscript j++; 12.
else, the superscript j is 0 (0 means there is no superscript) // Counting of newly generated library superscripts starting from 0)} 13.
if !C (e, π, cut_o f f ) then cut_o f f := cut_o f f ∪ {e} // Become a new node and cut it the next time it appears 14. else pe := pe+PoTEXT(π, cut_o f f ) // Become a cutting event (if it already exists, it is a cutting node);

End while
In this unfolding algorithm, π represents the complete prefix of expansion.When line 2 is a place with a token, line 5 calculates the possible changes.When line 6 is not empty, one of the changes occurs, using the stack data structure.Line 9 triggers the enabled event, line 10 adds a new marking, and line 11 determines whether a new marking is added.Meanwhile, markings that are deemed equivalent in terms of similarity are considered identical, otherwise line 12 becomes a cut-off node.Line 13 adds a new cut-off node, and line 14 continues to judge the change events that can be started under the new marking until line 15 has no event to be enabled.When unfolding, it is necessary to realize the state space reduction, and this can be accomplished through the state similarity equivalence method.We perform the state similarity equivalence method to reduce the number of traversed paths.To illustrate the concept of similarity equivalence, as shown in Figure 3, we treat the two identifications, M1 and M2, as equivalent in the algorithm.
The complexity analysis for Algorithm 2 (the depth-first unfolding algorithm) achieves a polynomial complexity with N nodes and m places; at most, the complexity is at the level of n × m.Using the depth-first unfolding algorithm to unfold the Petri net in Figure 2 is detailed in Table 1.
Figure 4 demonstrates a graphical representation of the unfolding process of SecN.These unfolding prefixes are referred to as such.The initial marking bearing with label {a, b, c, d} enables transitions A and B, resulting in two feasible extensions.We opt to incorporate event e1 first, labeled by A. The prefix now possesses a novel reachable marking, corresponding to marking {c, d, i, k} in SecN, which paves the way for a new potential extension labeled C. Let us assume event e2, labeled by B, is added subsequently.line 14 continues to judge the change events that can be started under the new marking until line 15 has no event to be enabled.When unfolding, it is necessary to realize the state space reduction, and this can be accomplished through the state similarity equivalence method.We perform the state similarity equivalence method to reduce the number of traversed paths.To illustrate the concept of similarity equivalence, as shown in Figure 3, we treat the two identifications, M1 and M2, as equivalent in the algorithm.The complexity analysis for Algorithm 2 (the depth-first unfolding algorithm) achieves a polynomial complexity with N nodes and m places; at most, the complexity is at the level of n × m.Using the depth-first unfolding algorithm to unfold the Petri net in Figure 2 is detailed in Table 1.Table 1.Net unfolding process and results of Petri net in Figure 2. The prefix now comprises two additional reachable markings: {a, b, j, l} and {i, j, k, l}.These markings facilitate extensions labeled with D and T, respectively.After event e3, labeled by C, a new marking labeled by {e, h, i} emerges, enabling possible extensions with labels E and H, etc.

Marking
These algorithms construct progressively larger prefixes of the unfolding of SecN.Similar to transition systems, they examine one event at a time, with some events designated as cut-offs, beyond which successors are no longer explored.
The challenge lies in generalizing the definition of cut-off events for Petri nets.McMillan [12,13] proposed a solution.The crux is to associate each event e with an appropriate reachable marking Me of the original Petri net SecN, accomplished in three steps, exemplified by event e3 in Figure 4: -Determine the set [e n ] comprising all predecessors of e n , i.e., the set of all events e m such that the unfolding includes a path from e m to e.In this case, [e3] = {e1, e3}; -Select any occurrence sequence σ i containing each element of [e] exactly once (which is guaranteed to exist) and allow it to occur.Here, σ i = e1e3; -Let m denote the marking of the unfolding reached by firing σ i (which can be proven to be independent of the choice of σ i ) and define Me as the label of m.In this instance, m = {i, e, h} and Me3 = { i, e, h}.
Symmetry 2023, 15, 1775 7 of 14 For each novel event e xt , the algorithms compute and store the marking Mext.It is worth noting that these are the sole markings of SecN known to be reachable by the algorithms.
Conditions ( 1) and ( 2) can now be effortlessly generalized.An event e cut is designated as a cut-off if marking Me satisfies one of these conditions: (a) Me(pT) = 1; the algorithm concludes with the result "reachable"; (b) Me is already known to be reachable: either Me = MI or Me = Me for some other event e .In such a case, e is referred to as the corresponding event of e.
The unfolding prefix in Table 1 4 demonstrates a graphical representation of the unfolding process of Sec These unfolding prefixes are referred to as such.The initial marking bearing with label b, c, d} enables transitions A and B, resulting in two feasible extensions.We opt to inc porate event e1 first, labeled by A. The prefix now possesses a novel reachable marki corresponding to marking {c, d, i, k} in SecN, which paves the way for a new potent extension labeled C. Let us assume event e2, labeled by B, is added subsequently.The prefix now comprises two additional reachable markings: {a, b, j, l} and {i, j, k These markings facilitate extensions labeled with D and T, respectively.After event labeled by C, a new marking labeled by {e, h, i} emerges, enabling possible extensions w labels E and H, etc.
These algorithms construct progressively larger prefixes of the unfolding of Sec Similar to transition systems, they examine one event at a time, with some events des nated as cut-offs, beyond which successors are no longer explored.
The challenge lies in generalizing the definition of cut-off events for Petri nets.McM lan [12,13] proposed a solution.The crux is to associate each event e with an appropri reachable marking Me of the original Petri net SecN, accomplished in three steps, exe plified by event e3 in Figure 4: -Determine the set [en] comprising all predecessors of en, i.e., the set of all events such that the unfolding includes a path from em to e.In this case, [e3] = {e1, e3}; -Select any occurrence sequence σi containing each element of [e] exactly once (wh is guaranteed to exist) and allow it to occur.Here, σi = e1e3;

Equivalence Reduction of Unfolded Nets
Table 1, presented above, has not been reduced, and following unfolding, it remains excessively large.In Table 1, distinct colors represent different states, and this article employs various colors for differentiation.For instance, initial states a, b, c, and d are represented in black, while newly generated states c, d, i, and k are depicted in green.Reduction of a net utilizing equivalence [31][32][33] is explored.
For this unfolding net, research has determined that the unfolding net remains overly extensive.This paper employs equivalence-based reduction.The reduction process presents as follows: For the initial reduction, four rectangles of different colors are reduced based on the same transition (e.g., G, G ; H, H ; E, E ; F, F represent identical transitions) guarantee.
Reduction rule: If the same marking M undergoes the same transformation and yields the same marking M , it is considered a cut-off node.After one reduction, the results are shown in Figure 5.
extensive.This paper employs equivalence-based reduction.The reduction process presents as follows: For the initial reduction, four rectangles of different colors are reduced based on the same transition (e.g., G, G′; H, H′; E, E′; F, F′ represent identical transitions) guarantee.
Reduction rule: If the same marking M undergoes the same transformation and yields the same marking M′, it is considered a cut-off node.After one reduction, the results are shown in Figure 5.The reduced graph is as follows in Figure 6.
Symmetry 2023, 15, 1775 9 of 16 The reduced graph is as follows in Figure 6.Following the second reduction, when only a single transition remains (i.e., no branching path), we implement the reduction.After two alterations have transpired, the subsequent changes that can occur are all tj.For instance, enabling transitions ti and tj, regardless of whether ti occurs first or tj occurs first, the transition that can be triggered after occurrence is tk.In lines 9 and 10 in Table 2, both of which are transitions T that occur, the resulting states are the same; hence, reduction can be performed.Following the second reduction, when only a single transition remains (i.e., no branching path), we implement the reduction.After two alterations have transpired, the subsequent changes that can occur are all t j .For instance, enabling transitions t i and t j , regardless of whether ti occurs first or t j occurs first, the transition that can be triggered after occurrence is t k .In lines 9 and 10 in Table 2, both of which are transitions T that occur, the resulting states are the same; hence, reduction can be performed.Upon the completion of the two transitions t i and t j , the subsequent transition that can occur is t k , that is, enabling transitions t i and t j , irrespective of whether t i occurs first or t j occurs first, the transition that can be triggered.
The third step of the reduction rule: if the same marking M undergoes corresponding transformations and produces an equivalent M , is considered a cut-off node.As illustrated in Figure 7, distinct transitions yield different identifiers, but analogous identifiers are generated.The unfolding paragraph after the final reduction is displayed in Figure 8.  ), and then t 1

Case Study and Experiments Result
This paper employs a case study to scrutinize the process of net reduction through unfolding, predicated on the three reduction rules posited herein.Figure 9a illustrates a Petri net, while Figure 9b portrays the unfolded net.Subsequently, this article puts forth a case study to delineate three reduction rules applicable to the unfolding net reduction procedure.Table 3 shows the result of net reduced unfolding.

Case Study and Experiments Result
This paper employs a case study to scrutinize the process of net reduction through unfolding, predicated on the three reduction rules posited herein.Figure 9a illustrates a Petri net, while Figure 9b portrays the unfolded net.Subsequently, this article puts forth a case study to delineate three reduction rules applicable to the unfolding net reduction procedure.Table 3 shows the result of net reduced unfolding.The first step of reduction is premised on (1) identical marking M, following the same transition, yielding the same marking M , regarded as the cut node or, more precisely, the cut-off node.
The second step of reduction is based on (2) the similar transition of marking M, engendering a marking M with an identical structure and functioning as a cut-off node, as demonstrated in Figure 10a.The first step of reduction is premised on (1) identical marking M, following the same transition, yielding the same marking M′, regarded as the cut node or, more precisely, the cut-off node.
The second step of reduction is based on (2) the similar transition of marking M, engendering a marking M′ with an identical structure and functioning as a cut-off node, as demonstrated in Figure 10a.The third step of reduction adheres to the subsequent criterion: (3) identical marking M, upon corresponding alterations, generates an equivalent marking M′, deemed as a cutoff node.The final equivalent unfolding net is exhibited in Figure 11.The third step of reduction adheres to the subsequent criterion: (3) identical marking M, upon corresponding alterations, generates an equivalent marking M , deemed as a cut-off node.The final equivalent unfolding net is exhibited in Figure 11.

Definition 4 .
(Branch process) Let Petri net ∑ = (P, T, F, M 0 ).(O, h) is a branching process of ∑; occurrence net O = (B, E, G) and the homomorphic function h: B ∪ E → P ∪ T simultaneously satisfy: (1) h(B) ⊆ P ∧ h(E) ⊆ T; (2) For any event e ∈ E, the h function acting on • e (resp., e • ) satisfies the bijection of • e to • h(e) (resp., e • and h(e) • ); (3) The h function acting on Min(O) is also limited to the bijection between Min(O) and M 0 ; (4) For any event e 1 , e 2 ∈ E, if • e 1 = • e 2 and h(e 1 ) = h(e 2 ), then e 1 = e 2 .Definition 5. (Configuration) The configuration set C of a branch process can represent the possible set of events that a Petri net may run, which requires the following conditions to be met: (1) Causal closure: e ∈ C ⇒ ∀e ≤ e: e ∈ C; (2) No conflict: ∀e, e ∈ C: ¬(e # e ).Definition 6. (Possible extensions) For configuration C and event set E, C ⊕ E represents an extension of C, if and when C ∪ E is a configuration and C ∩ E = ∅.Definition 7. (Completeness) The branching process β of a Petri net is complete, and there exists a configuration C ∪ {e} for any reachable identifier M and its enabling transition t (i.e., M [t ), and event e satisfies Marking(C) = M ∧ e / ∈ C ∧ t = h(e).
a, b, c, d A, B A/e 1(a, b->i, k) c, d, i, k new a, b, c, d B B/e 2(c, d->l, j) a, b, l, j new c, d, i, k C, B C/e 3(k, c, d->e, h) i, e, h new c, d, i, k B B /e 4(c, d->l, j) i, k, l , j new a, b, l, j A, D A /e 5(a, b->i, k) i , k , l, j new a, b, l, j D D/e 6(a, b, l->f, g) f, g, j new i, e, h E, H E/e 7(e, i->a, c) h, a , c new i, e, h H H/e 8(h->b, d) i, e, b , d new l, k, l , j T T/e 9(i, k, l, j->p) P end i , k , l, j T T /e 10(i, k, l, j->p) P end f, g, j F, G F/e 11(j->a, c) a , c , g, j new f, g, j G G/e 12(g->b, d) f, b , d new h, a , c H H /e 13(h->b, d) a, b , c, d Cut-off i, e, b , d E E /e 14(e, i->a, c) a , b , c , d Cut-off a , c , g, j G G /e 15(g->b, d) a , b , c , d Cut-off f, b , d F F /e 16(j->a, c) a , b , c , d Cut-off

Figure 4 .
Figure 4.A prefix of the unfolding of the net in Figure 2.

Figure 4 .
Figure 4.A prefix of the unfolding of the net in Figure 2.

Figure 5 .
Figure 5.The same transition reduction guarantee.Figure 5.The same transition reduction guarantee.

Figure 5 .
Figure 5.The same transition reduction guarantee.Figure 5.The same transition reduction guarantee.

Figure 6 .
Figure 6.Reduction result of the same transition and next guarantee.

Figure 6 .
Figure 6.Reduction result of the same transition and next guarantee.

Figure 7 .Figure 7 .
Figure 7. Second reduction result and the third Reduction Rule.

2 .
If marking A reaches marking C after transition t1, and marking B reaches marking D after transition t2, and marking C is equivalent to marking D, then t1 is equivalent to t2.

Figure 8 .
Figure 8. Unfolding paragraph after the final reduction.

Figure 10 .
Figure 10.(a) First step of reduction and reduction rule 2. (b) Second step of reduction and reduction rule 3.

Figure 10 .
Figure 10.(a) First step of reduction and reduction rule 2. (b) Second step of reduction and reduction rule 3.

Table 1 .
Net unfolding process and results of Petri net in Figure2.
exhibits a reachable marking, corresponding to {a, c, b, d}.As this is equivalent to Me1, such an extension would constitute a cut-off.

Table 2 .
Results of the first reduction in the expansion of the net in Figure2.
b->i, k) c, d, i, k new

Table 2 .
Results of the first reduction in the expansion of the net in Figure2.
If marking A reaches marking C after transition t 1 , and marking B reaches marking D after transition t 2 , and marking C is equivalent to marking D, then t 1 is equivalent to t 2 .• ), namely h(t 1 ) • = h(t 2 ) • .Marking C is approximately equivalent to marking D, that is, the transitions that can occur under marking C are equal to the transitions that can occur under marking D.

Table 3 .
Results of Net unfolding and Reduction in Figure 2.

Table 3 .
Results of Net unfolding and Reduction in Figure2.