Veriﬁcation of Current-State Opacity in Discrete Event Systems by Using Basis Coverability Graphs

: A new approach to the veriﬁcation of current-state opacity for discrete event systems is proposed in this paper, which is modeled with unbounded Petri nets. The concept of opacity veriﬁcation is ﬁrst extended from bounded Petri nets to unbounded Petri nets. In this model, all transitions and partial places are assumed to be unobservable, i


Introduction
In recent decades, with the rapid development of information technology and computer science, the security of cyber-physical systems has become a hot research direction in interdisciplinary areas, which include many human-built infrastructures.Discrete event systems (DESs) serve as the technical generalization of such human-made systems that are usually computer-integrated and evolve with the predefined regulations.Typically, almost all the production systems fall into this category.In discrete event systems, similar to controllability, observability, diagnosability, and detectability, opacity is one of the basic attributes of DESs [1], which reflects the confidentiality of a system.To be specific, when unauthorized external observers (or intruders) observe the evolution of the system, they cannot infer that the predicate representing secret information is true.
In the context of DESs, a secret predicate can be either a subset of the state space or a subset of the language generated by a system [2,3].Opacity can be accordingly divided into two categories: state-based opacity and language-based opacity.Furthermore, state-based opacity can be categorized into current-state opacity (CSO) [4,5], initial-state opacity [6,7], kstep, and infinite-step opacity [8][9][10][11].Opacity verification can be conducted in a centralized or decentralized framework [12], under different formalisms such as fuzzy or stochastic DESs [13,14].
In this work, the concept of current-state opacity is verified by using an unbounded system, i.e., the number of times a transition is triggered is no longer set with an upper limit.A basis coverability graph (BCG) is constructed to address the CSO verification of a DES modelled with unbounded Petri nets (UPNs); such a system cannot be modelled with a finite state automaton.A condition in [6] is extended, i.e., some unobservable transitions can be detected in a partially observed DES.Moreover, an external observer (or intruder) is assumed to know the overall structure and initial state of the unbounded net model, but only part of places can be observable, i.e., the number of tokens in such a place can be explicitly measured or counted.Under such a setting, it becomes much more challenging to estimate the current state of an unbounded system.This paper constructs a BCG for an unbounded Petri net to determine the possible current state of the system according to the derived quasi-observable transitions and partial observable places.
Compared with finite-state automata (FSA), Petri nets are a more popular tool for modelling and controlling DESs [15].By changing the number of tokens in places, the system behaviors are observed for further investigations [16] of interesting system properties or behavior.Petri nets have been extensively used to study the diagnosability analysis [17,18], state estimation [19], and supervisory control of DESs.In [17], a programming problem is formulated to perform fault diagnosis in a bounded Petri net, while the work in [18] reports a verifier net to derive a fault diagnosis method for DESs.
However, the existing results in the framework of bounded Petri nets usually need to construct reachability graphs [17][18][19], which suffer from the notorious state explosion problem.In other words, it is difficult to enumerate all the states for real-world systems due to their large sizes [20].To mitigate this issue, a new type of reachability graph is proposed by Cabasino et al. [21], called a basis reachability graph (BRG).The authors, as well as the followers in the DES domain, apply BRG to many DES problems such as fault diagnosis, diagnosability analysis, supervisory control, and critical observability, opacity verification and enforcement.
In the research on DESs based on Petri nets, there are few studies on unbounded net systems.Ushio et al. [22] reported a method of fault diagnosis by using a partially observed UPN, where all transitions are unobservable and partial places are observable.In [22], two diagnosers, a simple diagnoser and an ω-diagnoser, were constructed to analyze the diagnosability of an underlying system by monitoring the token counts and their changes in observable places.Moreover, the work in [23] improved the results in [18] by extending the diagnosability analysis in bounded net systems to unbounded net systems using a verifier net.In addition, when analyzing the state space of an unbounded net system, its coverability graph [24][25][26] has to be considered.In [27], Lefaucheux et al. extended the concept of BRGs to unbounded net systems.The authors analyzed the relationship between coverability sets and reachability sets.After the definition of BCGs was proposed, the relationship between BCGs and BRGs was further analyzed.Based on the proposed BCGs, the diagnosability analysis for unbounded net systems was significantly improved by the team who originally developed the notion of BRG with a deluge of results.For example, it was shown that an unbounded net system is diagnosable iff there does not exist any cycle in the BCG with the relevant set of fault transitions.However, the investigation of further applications of the BCGs is still open.
Opacity verification and enforcement have been extensively studied and applied to real applications [5][6][7]28,29], i.e., no matter what information is observed by a malicious intruder from outside, some non-secret information and secret information cannot be identified.In this case, the intruder cannot decide whether the possible current system states reasoned from the current observation so far belong to the pre-defined secret of the system.
In [30], the concept of opacity in finite transition systems was proposed for the first time, which was then extended to Petri nets [31].For the verification of CSO, Tong et al. [4] used a BRG to verify the CSO of a bounded labeled Petri net, which was extended in [6] by representing a secret as generalized mutual exclusion constraints.In addition, a secret with no weakly exposed markings and uncertainty of the initial marking were also considered.The work in [5] verified the CSO in a partially observed bounded Petri net, where the unobservable transitions were divided into quasi-observable transitions and truly unobservable transitions, which were used to analyze the behavior of the system such that more information regarding the system evolution can be precisely captured.However, as far as we know, no work has been reported on the opacity verification of DESs modeled by UPNs.
In this paper, we touch upon the verification of opacity of a DES modeled with unbounded Petri nets by borrowing the methods in [5,6].The major contributions of this work are stated as follows.

1.
A new type of basis coverability graph is proposed.The work by Lefaucheux et al. in [27] is extended to propose a new BCG based on the partially observable places only.
In short, based on the number change of tokens in all observable places, the system can determine whether the (unobservable) transitions in their pre/post-sets are fired.This approach releases the frequently adopted assumption that observable transitions necessarily exist in a plant.Furthermore, this newly constructed BCG is readily applicable to the formulation of control laws for large and complex systems.A method of state estimation based on this BCG is also presented; 2.
A verification approach for CSO based on BCG is proposed.A sufficient and necessary condition is developed for the verification of opacity based on the current-state estimation and proves that the CSO can be verified in unbounded net systems.
This paper is organized into five sections.Section 2 conceptualizes partial markings and basis coverability graphs.In Section 3, we introduce a method to estimate the current state by using the newly proposed BCG.Section 4 details the verification of CSO in partially observed UPNs.To show that our method is effective and feasible, an example of a real-world system is shown in Section 5. Finally, the paper is concluded in Section 6.

Construction of BCG
The concepts of partial markings and BCGs are reviewed in this section, and a new type of BCG is proposed.Due to the limited space, we suppose that readers are familiar with the preliminaries of the Petri net theory and the related concepts.To facilitate the reading and understanding of this research, the Petri net notations and notions used in this paper can be seen in [32].In addition, the system considered in this work is assumed to be self-loop free.

Partial Markings
A marking M ∈ R(N, M 0 ) restricted to P o is represented by a vector M with j entries, called the partially observable marking of the marking M [33].Then, a partially observable marking (partial marking for simplicity) can be readily calculated by where A is a j × h matrix, called the observability mapping matrix with A(i, i) = 1 for i = 1, 2, . . ., j, and the other entries are 0. Similarly, the matrix A is used to project a marking M of a Petri net onto a partial marking based on the set of observable places P o .
In order to construct the BCG for a UPN with partially observable markings, a coverability set of partial markings is defined as Although all the transitions are assumed to be unobservable in a UPN in this paper, the transitions whose firing can be detected and inferred by the token changes in observable places are called quasi-observable transitions.Given an unbounded net system N, M 0 , the set of quasi-observable transitions is defined as Similarly, the transitions that are not in Tq are called truly unobservable transitions.Given an unbounded net system N, M 0 , the set of truly unobservable transitions is Tu = T \ Tq .
Given a transition sequence σ ∈ T * , we use P to denote the natural projection with respect to quasi-observable transitions, i.e., P : T * → T * q , which is defined as The inverse projection P −1 : T * q → 2 T * is defined as P −1 (w) = {σ ∈ L(N, M 0 )|σ = P (w)}, i.e., P −1 (w) consists of all transition sequences in L(N, M 0 ) whose observations are w.

Example 2.
A partially observed unbounded Petri net is considered as shown in Figure 1, where p uo is an unobservable place.Its coverability graph is shown in Figure 2, where a marking is denoted by M = (p o1 , p o2 , p uo ) T .Note that p o2 is unbounded and that the set of quasi-observable transitions is Tq = {t 1 , t 2 }.Note that, in this investigation, the number of tokens in unbounded places is denoted by ω.Therefore, if there are some unbounded places that are observable, the system's administrators or intruders can detect the change in the number of tokens in these places.In simpler terms, for some unbounded places, which are denoted by ω, if they are observable, their pre-sets and post-sets are detectable and quasi-observable.
Algorithm 1 is used to identify the quasi-observable and the truly unobservable transitions in an unbounded Petri net.Moreover, given a quasi-observable string w and a partial marking M, let us define the set of states that are possibly reachable by detecting and observing w and M as which is a collection of markings consistent with w and M.

Algorithm 1: Classification of transitions.
Input: A UPN (N, M 0 ), and a set of observable places P o .
Output: Set of quasi-observable transitions Tq , and that of truly unobservable transitions Tu .Tu = Tu ∪ {t};

Basis Coverability Graph in Partially Observed UPNs
Different from the work in [27], where an approach based on the labeled Petri nets and their markings is proposed, the concepts of quasi-observable transitions, truly unobservable transitions, and partial markings are used to construct our novel BCGs.In addition, the definition of an unobservable transition subnet [6,20] is extended to truly unobservable transitions.Therefore, based on the above definition, we assume that the truly unobservable subnet is acyclic.
As shown in Figure 3, a partially observed UPN is considered.Table 1 and Figure 4 show the list of markings and its coverability graph, respectively, where a regular marking is denoted as M = (p o1 , p o2 , p o3 , p uo1 , p uo2 , p uo3 , p uo4 ) T .Definition 2. Given a partially observed UPN (N, M 0 ) with its truly unobservable subnet being acyclic, a partial markings M, and a transition t q ∈ Tq , is defined as a set of explanations of quasi-observable transition t q at partial marking M, and Y( M,  3.  Definition 3. Given a partially observed UPN (N, M 0 ) with the acyclic truly unobservable subnet, a partial marking M ∈ CS o (N, M 0 ), and a transition t q ∈ Tq , is defined as a set of minimum explanations of quasi-observable transition t q at partial marking M and Y min ( M, t q ) = {y σ ∈ N | Tu | |∃σ ∈ Γ min ( M, t q ) : y σ = π(σ)} is defined as the corresponding set of minimum explanation vectors.
Therefore, there necessarily exists a set of basis markings in a BRG regardless of whether the transition set of a labeled Petri net is partitioned [6].However, in a partially observed UPN, the markings are no longer applicable to constructing the BCG.Instead, the partial markings are only used for this graph.In the following, the definition of a set of basis partial markings is proposed.Definition 4. For an unbounded net system N, M 0 and an initial partial marking M0 , a set of basis partial markings M b is defined as follows: In other words, the set of basis partial markings includes the initial partial marking and a set of all of the partial markings reachable by firing quasi-observable transitions and minimum explanations of truly unobservable transitions.
Based on the above definitions, an algorithm is proposed to construct a BCG for partially observed UPNs.We follow the work in [6] by using an NFA C = (M b , Tq , ∆, M0 ) to represent the novel BCG, where M b is the set of basis partial markings, Tq is a set of quasi-observable transitions, and ∆ is a transition function defined as Algorithm 2 can be briefly explained.In the first step, the set of basis partial markings M b is initialized at M b = { M0 }.For all non-visited basis partial markings M and all quasi-observable transitions Tq , we need to determine whether its minimum explanation vector Y min ( M, t) is a nonempty set.If it is not empty, a new basis partial marking can be calculated.The algorithm runs repeatedly until all basis partial markings are calculated.
11 Assign a label "done" to M; 12 Remove all labels.
Example 3. The partially observed unbounded Petri net is considered again as shown in Figure 3. Table 1 is the marking list of the net system, where a marking is denoted as M = [p o1 , p o2 , p o3 , p uo1 , p uo2 , p uo3 , p uo4 ] T ; Figure 4 is the coverability graph of the net system.The places p uo1 , , p uo2 , p uo3 , and p uo4 are assumed to be unobservable.Therefore, the set of quasi-observable transitions is Tq = {t 2 , t 3 , t 5 , t 6 , t 7 }, and the others are truly unobservable transitions.Moreover, a new mapping matrix A 2 is assumed as The novel BCG is shown in Figure 5. Since t 1 and t 4 are truly unobservable transitions, if an intruder observes a new partial marking M2 from M0 , the set of explanations with respect to Mo may be {t n 1 }, where n ∈ N. Therefore, there is one minimum explanation, i.e., Γ min = {t 1 }.A special situation should be noted in this work: Given two quasi-observable transitions t 1 , t 2 ∈ Tq , they are said to be confused if Pre(p, t 1 ) = Pre(p, t 2 ), or Post(p, t 1 ) = Post(p, t 2 ), where p is an arbitrary observable place, with p ∈ In other words, there may be multiple quasi-observable transitions in the net system that can lead to the same change in the observable places.This change makes the intruders unable to determine which transition is fired.Therefore, in the novel BCG, there may exist two or even more quasi-observable transitions that are tagged on an arc from one node to another node.In simpler terms, the system administrators do not need to determine which quasi-observable transition is fired.They only need to determine that one of them has been fired.

Example 4.
As shown in Figures 3 and 5, the partially observed UPN and its BCG are considered again.From the initial partial marking M0 = (1, 1, 0) T , if a new partial marking M1 = (1, 0, 0) T is observed, there are two situations: M0 × t 3 → M1 and M0 × t 7 → M1 , i.e., transitions t 3 and t 7 are confused.Therefore, for the set of quasi-observable transitions {t 3 , t 7 }, we conclude that one of the transitions t 3 and t 7 must have been fired.

Current-State Estimation
Based on the new BCG, the concept of current-state estimation is discussed in this section.Let us now introduce the following statements that are useful to formalize the main result.
Given a marking M, A • M = M, which is reached by firing a quasi-observable transition t q ∈ Tq , i.e., M 0 [σt q M, where σ ∈ T * , a new set of markings is defined as Given a partial marking M and a quasi-observable transition t q , we assume that the firing of an enabled quasi-observable transition t q at partial marking M yields a partial marking M = M + C(•, t q ) + C û • π(σ u ), where σ u ∈ Γ min ( M, t q ), which is denoted by M[t q M .A quasi-observable string w = P (σ) = t q1 t q2 . . .t qn ∈ T * q , is enabled at partial marking M if there exist partial markings M1 , M2 , . . ., Mn such that M[t q1 M1 [t q2 . . .Mn−1 [t qn Mn , denoted as M[w Mn , where σ ∈ T * , and n ∈ N. Specifically, if a quasi-observable string w is an empty string, then M[w M holds.
Theorem 1.Consider a UPN (N, M 0 ) with N = (P, T, Pre, Post), whose truly unobservable subnet is acyclic, and a marking M that is reached by firing a quasi-observable transition.For arbitrary partial markings M ∈ CS o (N, M 0 ) and an explanation vector y σ ∈ Y( M, t), it holds that Proof.This proof is extended from [33].We prove this result by induction on the length of the string w, where there is a transition sequence σ, P (σ) = w.
In the case that w is an empty string, then the result is true.Assume that the result is valid for v.We prove that it is also true for w = vt q , where t q ∈ Tq .
In fact, there is a transition sequence σ ∈ T * such that M 0 [σ M with P (σ) = w, and y σ = π(σ).Then, there are two sequences σ , σ such that where P (σ ) = v and σ ∈ T * u .Therefore, one has where P (σ a ) = v, σ b ∈ T * u and there is a transition sequence σ u ∈ Tu such that π(σ u ) = y σ and π(σ a ) = π(v) + y σ .In addition, we have By definition of minimal explanations, there is a transition sequence σ c ∈ Γ( M, t q ) such that with We now claim that there is a transition sequence σ d with π(σ b ) = π(σ c ) + π(σ d ) enabled at M d .In fact, from Equation (1), it follows that while from Equation (2), it follows that The last two equations imply that and since the truly unobservable subnet is acyclic, it holds that Combining Equations ( 1)-( 4), we can write This completes the proof.
In simpler terms, for an unbounded net system, if there is a marking that is reached by firing a quasi-observable transition t q , we need to find some markings that still have the same measurement results after firing some truly unobservable transitions, i.e., these markings all have the same partial marking.
Example 5.As shown in Figure 3, we continue to consider the unbounded net system.Table 2 is a list of all potential markings for all partial markings.
Since the solution of y σ is a non-negative solution, given an initial marking M 0 with its partial marking being M0 , the potential markings are M 0 and M 1 due to M 0 [t 1 M 1 , where t 1 ∈ Tu , and A 2 • M 0 = A 2 • M 1 = M0 .On the other hand, given a marking M 3 , the partial marking of M 3 is M2 .The other potential marking with respect to M2 is {M 6 }, Based on Table 2 and the above examples, a BCG-based observer is constructed in Figure 6.

M
C(w, M) Based on Algorithm 2 and the above definitions of explanations and current-state estimation, the necessity of the truly unobservable subnet needs to be explained.For the partially observed unbounded net systems studied in this work, we can only infer the evolution process of the system state by observing the partial markings composed of partially observable places.In other words, the markings cannot be used to construct a complete coverability graph to obtain complete information about the system.Therefore, it is necessary for us to build novel BCGs to help us complete the acquisition of system information.However, if we do not require that the truly unobservable transition subnet should not constitute a circuit, then the construction of our BCGs may never be complete, i.e., the net system remains in a circuit without any quasi-observable transition being fired.This situation makes it impossible to obtain a complete result of the current-state estimation.Based on this situation, we insist that, for building a BCG, the unobservable transition subnet needs to be acyclic.In the next section, the above results are used to verify the opacity problem.

Current-State Opacity Verification
In this section, a method is proposed for verifying the CSO by using the BCG.

CSO on Unbounded Net Systems
In this part, the set of secret S is defined as a subset of the arbitrary markings.For this work, since all transitions are unobservable, we not only need to estimate the current state of the system but also predict the transitions in its pre-set or pro-set through a few observable places.In this regard, a new definition of CSO is proposed.Definition 5. Given a UPN (N, M 0 ) with the truly unobservable subnet being acyclic and a set of secret S ⊆ R(N, M 0 ), the unbounded net system N, M 0 is said to be current-state opaque with respect to S if for any transition sequence σ ∈ T * , P (σ) = w such that M0 [w M, and C(w, M) S holds.
In simpler terms, an unbounded net system is current-state opaque if, for an arbitrary partial marking that is reached by firing a quasi-observable string, there exists at least one marking that does not belong to the secret in the result of the current-state estimation.Example 6.The unbounded net system is considered again as shown in Figure 3. Let the secret be S = {M 3 , M 5 }.Suppose that an intruder detects a quasi-observable string w = t 2 t 3 , i.e., M0 [t 2 M2 [t 3 M3 .Then, the system is current-state opaque since C(w 0 , M0 ) S, C(w 1 , M2 ) S, and C(w 2 , M3 ) S, where w 0 is an empty string, w 1 = t 2 , and w 2 = t 2 t 3 .
Moreover, given a UPN (N, M 0 ) with the truly unobservable subnet being acyclic, and secret S, a marking M is said to be exposed if M ∈ CS(N, M 0 ) \ S. Furthermore, the set of exposed markings is defined as E(S) = CS(N, M 0 ) \ S.
Example 7. The unbounded net system is considered again as shown in Figure 3. Let the secret states be S 1 = {M 0 , M 2 , M 3 , M 5 , M 7 }.Then, the set of exposed markings is E(S 1 ) = {M 1 , M 4 , M 8 − M 11 }.
The above example intuitively explains what markings do not belong to the secret.However, this would be inadequate.More details should be considered.Given a UPN (N, M 0 ) with the truly unobservable subnet being acyclic, and secret S, a marking M with A • M = M is said to be weakly exposed if M is an exposed marking, and M ∈ U ( M).Furthermore, the set of weakly exposed markings consistent with partial marking M is defined as WE(S, M) = E(S) ∩ U ( M).
Example 8.The above example is extended here.For a partial marking M3 , the marking M 8 is a weakly exposed marking, since M 8 ∈ E(S 1 ), M 5 [t 4 M 8 , and Note that some markings, such as M 11 , are reached by firing one of the quasiobservable transitions in {t 3 , t 5 , t 7 }.At the same time, there exists a truly unobservable transition that can be fired, e.g., M 11 [t 1 M 11 , so these markings also belong to WE(S, M).
Based on the above definitions and theorem, the following necessary and sufficient condition is proposed for CSO.Theorem 2. Given a UPN N, M 0 with N = (P, T, Pre, Post), whose truly unobservable subnet is acyclic, and a secret S ⊆ R(N, M 0 ), the system is current-state opaque with respect to S if and only if for all σ ∈ T * with P (σ) = w and M0 [w M, C(w, M) ∩ WE(S, M) = ∅ holds.
Proof.(⇒) Given an arbitrary sequence σ ∈ T * such that P (σ) = w and M0 [w M, if the set of weakly exposed markings consistent with M is not an empty set, then there is a marking M ∈ U ( M), M ∈ E(S), i.e., M ∈ U ( M) ∩ E(S) = WE(S, M), and hence, M ∈ C(w, M).This indicates that C(w, M) ∩ WE(S, M) = ∅.By the definition of the set of exposed markings, the system is current-state opaque with respect to S.
(⇐) On the contrary, given an unbounded net system that is current-state opaque, we assume that an intruder detects a quasi-observable string w such that M0 [w M, and none of the markings consistent with M are weakly exposed.Based on Theorem 1 and the definition of exposed markings, all markings consistent with partial marking M belong to the secret, i.e., C(w, M) ∩ WE(S, M) = ∅, i.e., the system is not opaque.This indicates that this assumption contradicts the definition of opacity, which completes the proof.
As stated in the above theorem, if the system administrators need to verify whether an unbounded net system is current-state opaque, they just need to find out whether there exists at least one weakly exposed marking in partial markings, instead of exhausting all the states.

CSO Verification on BCG
This subsection deals with the CSO verification based on the BCG.Since the purpose of this work is to extend the existing opacity verification methods to UPNs, some existing methods [5,6] can be referred to and used.Given a UPN (N, M 0 ) with the truly unobservable subnet being acyclic, and a secret S, a binary scalar a( M) is defined as follows: The BCG is combined with binary scalar a( M) to construct a new non-deterministic automaton (NFA), i.e., a new observer Ĉ = ( Mb , Tq , ∆, M0 ), where Mb ⊆ M b × {0, 1}.Compared with the observer in [6], their spatial complexity is approximate.The spatial complexity of the new non-deterministic automaton observer Ĉ is O(2 | M| ).In general, the number of partial markings is less than or equal to that of markings, i.e., |CS o (N, M 0 )| ≤ |CS(N, M 0 )|.Moreover, if the secret S is changed to S , we only need to change the scalar a( M) of all partial markings.In the following, a proposition for the CSO verification problem is proposed by using the BCG.Proposition 1.Given a UPN (N, M 0 ) with the truly unobservable subnet being acyclic, and a secret S ⊆ R(N, M 0 ), for all nodes in the new non-deterministic automaton observer, if the binary scalar is always a( M) = 1, then the unbounded net system N, M 0 is current-state opaque with respect to secret S.
Proof.Based on the contrapositive, assume that the system is not current-state opaque.If the binary scalars of all nodes in an unbounded net system are equal to 1, i.e., for all partial markings M, a( M) = 1, we can find that there is at least one weakly exposed marking in the result of any state estimation.According to Theorem 2, the unbounded net system is current-state opaque with respect to S. However, this contradicts the original hypothesis, which completes the proof.
In simpler terms, according to Theorem 2 and Proposition 1, if all the binary scalars are 1, i.e., a(•) = 1, the net system is current-state opaque; otherwise, we require further analysis.According to the above proposition, an example is present to illustrate the novel method.
Example 9.As shown in Figure 3, the unbounded net system is considered again.The secret set of Example 7 is considered again.Figure 7 is the new BCG-based observer of the unbounded net system using the non-deterministic automaton.Since the binary scalar of all nodes in this automaton is a( M) = 1.It represents that the unbounded net system N, M 0 is current-state opaque.

M0
1  In other words, for any quasi-observable string, if there exists at least one weakly exposed marking associated with the arbitrary partial marking, then it means that the unbounded net system is current-state opaque.

An Example of Real Systems
In this section, the novel methodology will be applied to a real system that can be of help to illustrate the idea underlying this research.We hope that the explanation of this example can show that our method has a certain engineering guiding significance such that a practitioner may be interested in this study.
A small but comprehensive flexible manufacturing cell [34] is considered as shown in Figure 8.The reason that we choose a manufacturing cell as an example lies in the fact that such an example is easy to understand and captures the methods developed in this paper.The system is composed of one robot, one input buffer, one output buffer, and two machines.The robot and the machines can only deal with one part when the system is working.Specifically, the buffer can be regarded as an infinite bin, i.e., its space capacity is unlimited, which is different from the traditional modeling methods that assume such a buffer is bounded.The workflow of this system is as follows: When a sensor detects that the goods to be processed enter the input buffer if the robot and Machine 1 are available, the robot will put the goods into Machine 1 for processing.When the work of Machine 1 is completed, the robot puts the goods into the buffer for storage.Machine 2 will regularly use the robot to process goods.The robot will put the goods into Machine 2 from the buffer.If the buffer is empty, the robot will directly put the goods into Machine 2 from Machine 1.When Machine 2 finishes the processing, the robot transfers the goods to the output.
Based on this example, we can find that for a manufacturing system, because goods are constantly transported, loaded, and unloaded, a real system is in general not bounded, as it is reasonable to assume that the production is continuous without any interruption.In other words, unbounded systems are more common than bounded systems.Furthermore, the method reported in this particular research not only is successfully applied to the proposed example but also shows that this method can be closer to the conditions of unbounded systems in the real world.Therefore, this method is more effective in solving the problem of confidentiality of confidential information in the real world.

Conclusions
This paper deals with the verification of CSO in partially observed unbounded Petri nets, where the truly unobservable subnet is acyclic.The coverability problem and complete state estimation problem are explored by using the novel basis coverability graph.This research proves that the BCG can verify the CSO problems by constructing a BCG-based observer.This approach is characterized by the fact that the CSO problem can be accomplished based on only a few observations.Specific examples are presented and illustrate that this approach is effective.However, based on the real-world example, one deficiency in this research is also recognized.From the viewpoint of graph theory, Petri nets are a topological structure of a real system, and their nodes correspond to the components of the system.This phenomenon leads to the necessity of reusing Petri nets for modeling if the structure of the system or topology is changed.To help system administrators analyze system performance, adaptive modeling methods developed for system structure changes will become a new research topic.
In future work, unbounded Petri nets and their basis coverability graphs are still our research interest.All the typical problems arising in the domain of discrete event systems modeled with unbounded Petri nets will be continuously explored, such as the verification of initial-state opacity and language-based opacity, the analysis of detectability [35,36], the enforcement of opacity based on supervisory control [37], and fault diagnosis and diagnosability analysis [38].It is also interesting to address various scheduling problems of automated production systems [39] with the opacity property being guaranteed.

Definition 1 .
Let (N, M 0 ) be a UPN.Additionally, Tu is a set of truly unobservable transitions.The truly unobservable subnet N = (P, T , Pre , Post ) of N is obtained by removing T \ Tu , where Pre and Post are the restrictions of Pre and Post to Tu , respectively.The incidence matrix of this subnet is denoted by C û = Post − Pre .

Figure 4 .
Figure 4.A coverability graph of the unbounded net system.

Algorithm 2 :
Construction of BCG for a partially observed UPN.Input: A UPN (N, M 0 ), a set of partial markings CS o (N, M 0 ), and a set of quasi-observable transitions Tq .Output: A BCG C = (M b , Tq , ∆, M0 ). 1 M = { M0 } and assign no label to M0 ; 2 while states with no label exist do 3 select a partial marking M ∈ M b with no label; 4 for all t q ∈ Tq do 5

Figure 5 .
Figure 5.A BCG of the unbounded net system.

Figure 7 .
Figure 7.A BCG-based new observer of the unbounded net system.

Figure 8 .
Figure 8.A small flexible manufacturing cell.

Table 1 .
Markings list of Figure as the corresponding set of explanation vectors.

Figure 6 .
An observer of the unbounded net system.

Table 2 .
Set of markings with respect to M.

Table 3 .
Meaning of transitions and places.