Next Article in Journal
Adaptive Speech Separation Based on Beamforming and Frequency Domain-Independent Component Analysis
Next Article in Special Issue
Mitigating Insider Threats Using Bio-Inspired Models
Previous Article in Journal
Bioactive Glass as a Nanoporous Drug Delivery System for Teicoplanin
Previous Article in Special Issue
Detection of Sensitive Data to Counter Global Terrorism
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

The μ-Calculus Model-Checking Algorithm for Generalized Possibilistic Decision Process

1
School of Computer Science and Engineering, North Minzu University, Yinchuan 750021, China
2
Ningxia Key Laboratory of Intelligent Information and Big Data Processing, Yinchuan 750021, China
*
Author to whom correspondence should be addressed.
Submission received: 23 February 2020 / Revised: 29 March 2020 / Accepted: 7 April 2020 / Published: 9 April 2020

Abstract

:
Model checking is a formal automatic verification technology for complex concurrent systems. It is used widely in the verification and analysis of computer software and hardware systems, communication protocols, security protocols, etc. The generalized possibilistic μ-calculus model-checking algorithm for decision processes is studied to solve the formal verification problem of concurrent systems with nondeterministic information and incomplete information on the basis of possibility theory. Firstly, the generalized possibilistic decision process is introduced as the system model. Then, the classical proposition μ-calculus is improved and extended, and the concept of generalized possibilistic μ-calculus (GPoμ) is given to describe the attribute characteristics of nondeterministic systems. Then, the GPoμ model-checking algorithm is proposed, and the model-checking problem is simplified to fuzzy matrix operations. Finally, a specific example and a case study are analyzed and verified. Compared with the classical μ-calculus, the generalized possibilistic μ-calculus has a stronger expressive power and can better characterize the attributes of nondeterministic systems. The model-checking algorithm can give the possibility that the system satisfies the attributes. The research work provides a new idea and method for model checking nondeterministic systems.

1. Introduction

The continuous enhancement of computer functions makes systems increasingly complex; for the purpose of the correctness of the systems, it usually spends more time on verification than on construction [1]. Formal methods are important methods to ensure the correctness and security of computer systems. They can integrate verification early in the design process and ensure the credibility of the system through strict logical reasoning and mathematical calculations.
Model checking is a formal automatic verification technology that can provide a complete formal verification framework of system attributes [2]. The classical model-checking technology is mainly used for qualitative research on the system—that is, to verify if the system satisfies the system attributes described by temporal logic formulas, such as Computation Tree Logic (CTL), Linear Temporal Logic (LTL), and μ-calculus [3,4]. If it is satisfied, the model checker returns “True”; otherwise, it returns “False” with specific counterexamples. However, in the design of actual systems, nondeterministic systems containing uncertain or inconsistent information are often encountered, so the qualitative research on the systems cannot meet the actual needs. In recent years, some scholars have proposed quantitative extensions to classical model checking, such as models that embed features into probability [5,6], possibility [7,8,9], and multi-valued [10,11,12], etc.
Different model-checking approaches are applicable to different model types. Narasimha et al. [13] proposed a model-checking algorithm based on the probabilistic labeled transition systems and μ-calculus to check whether the states in the finite probabilistic labeled transition systems satisfiy the logical formulas; Chechik et al. [14] extended the classical CTL and Kripke structure and proposed a multi-valued model checking algorithm. Gurfinkel et al. [15] studied the multi-valued μ-calculus model checking problem based on multi-valued Kripke structures and reduced it into several classical model-checking problems. The advantage of the reduction method is that the verification can be done automatically using existing model-checking tools. Mallya et al. [16] defined a multi-valued μ-calculus and proposed a new model-checking logic framework to verify arbitrary properties of multi-valued μ-calculus, which is more widely used.
Recently, Pan et al. [17] combined fuzzy logic with CTL, proposed Fuzzy Computation Tree Logic (FCTL), which is a fuzzy extension of classical CTL, and discussed model-checking problems. Li et al. [18,19,20,21] extended the classical LTL and CTL model-checking technology; they defined a quantitative model-checking verification method on the basis of possibility measures. Compared to probabilistic model checking, the possibilistic model checking does not need to satisfy countable additivity, and it is mainly used for the model checking of non-additive systems. Probabilistic model checking already has mature model-checking tools, such as PRISM PRISM is a probabilistic model checker, a tool for formal modelling and analysis of systems that exhibit random or probabilistic behaviour. It has been used to analyse systems from many different application domains, including communication and multimedia protocols, randomised distributed algorithms, security protocols, biological systems and many others [22], etc., while possibilistic model checking is still in the theoretical research. Possibilistic model checking uses the theory of possibility measure as the theoretical basis for system modeling, which is suitable for systems with uncertain information in possibility theory [7].
There is some research on quantitative model-checking verification methods on the basis of possibility measures. Li et al. proposed Generalized Possibilistic LTL (GPoLTL), which is an extension of LTL, and gave quantitative model checking methods of linear-time properties based on generalized possibility measures in [18]. They also extended CTL to Generalized Possibilistic CTL (GPoCTL) and proposed a model-checking algorithm under the generalized possibilistic decision process in [21]. Our paper is the first to extend classical μ-calculus in possibility measure theory, and it studies the possibilistic model checking. The μ-calculus is very expressive and it can capture many other temporal (such as CTL) and program logics [12]. We extend classical μ-calculus by adding a possibility value, which is denoted as Generalized Possibilistic μ-calculus (GPoμ); the semantics interpret the GPoμ formulas as mappings from the set of states of Generalized Possibilistic Decision Process (GPDP) to the domain of (0,1). The conjunction, disjunction, and negation logical operators are interpreted as the meet, join, and complementation operators in (0,1), respectively, so we use the fuzzy logic and possibility measure theory for reasoning and calculus attribute values of the systems. The GPoμ can express some properties that GPoCTL and GPoLTL cannot describe. Finally, we solve the model-checking problems by fuzzy matrices.
This paper is organized as follows. Section 2 gives basic knowledge of fuzzy theory and possibility measure theory. In Section 3, the notion of the generalized possibilistic decision process is introduced as the model of nondeterministic systems. Section 4 introduces the generalized possibilistic μ-calculus (GPoμ) to characterize the attributes for uncertain systems and gives a model-checking algorithm to verify the possibilities that the system states satisfy the attributes. A specific example and case study are explained in Section 5. We give a conclusion at the end of the paper.

2. Fuzzy Theory and Possibility Measure Theory

2.1. Fuzzy Theory

The fuzzy set [23] on domain U is defined by a function A : U [ 0 , 1 ] ; then, A is called a fuzzy subset on U. If the element in the domain U is represented by x , and A ( x ) [ 0 , 1 ] , then A ( x ) is the membership degree that x belongs to A .
Let A and B be two fuzzy subsets on U. For any x U , the membership functions of union A B , intersection A B complement A c , and implication A B , are defined as follows:
( A B ) ( x ) = A ( x ) B ( x ) = m a x { A ( x ) , B ( x ) }
( A B ) ( x ) = A ( x ) B ( x ) = m i n { A ( x ) , B ( x ) }
A c ( x ) = 1 A ( x )
( A B ) = A ( x ) B ( x ) = A c ( x ) B ( x )
Let Q = ( q i j ) m × n be a matrix; if ( q i j ) [ 0 , 1 ] , then Q is a fuzzy matrix. For arbitrary fuzzy matrice Q, R, Q = ( q i j ) m × n , R = ( r i j ) m × n , the union of the fuzzy matrix Q R , intersection Q R , and the complement operation Q c are defined as follows:
Q R = ( q i j r i j ) m × n
Q R = ( q i j r i j ) m × n
Q c = ( 1 q i j ) m × n .
Given fuzzy matrices Q = ( q i k ) m × p , r = ( r k j ) p × n , their composite operation, denoted by Q R , which is defined by Q R = k = 1 p ( q i k r k j ) .

2.2. Possibility Measure Theory

Let I be the index set, the possibility measure on nonempty set U is a mapping POS: 2 U [ 0 , 1 ] , satisfying the following formulae [21]:
P O S ( ) = 0 ,   ( 2 )   P O S ( U ) = 1 ,   ( 3 )   If   E i U ,   and i I ,   then P O S ( i I E i ) = i I P O S ( E i ) .
If POS only satisfies the Formulae (1) and (3), then POS is called a generalized possibility measure. If POS is a generalized possibility measure on nonempty set U, for any EU, satisfy P O S ( E ) = x E P O S ( { x } ) .

3. Generalized Possibilistic Decision Process

In the design of practical systems, there are systems that have both nondeterministic choices of actions and possibility distributions of states. We give the notion of the generalized possibilistic decision process as the models for uncertainty systems.
Definition 1.
A generalized possibilistic decision process (GPDP) [24] is a tuple M = ( S , I , A c t , R , A P , L ) , where S is a finite, nonempty set of states; I : S [ 0 , 1 ] is the possibilistic initial distribution function; Act is a set of actions; R : S × A c t × S [ 0 , 1 ] is the possibilistic transition distribution function, and for every state s S and every action α A c t , there is a state s such that R ( s , α , s ) > 0 ; AP is a set of atomic propositions; L : S × A P [ 0 , 1 ] is a labeling function, L ( s , a ) denotes the possibility that the atomic proposition a holds on state s.
If S and AP are both finite, we call M a finite GPDP. R ( s , α , t ) represents the possibility that the system evolves from state s into state t by action α. If R ( s , α , t ) > 0 , state t is called the successor of state s, and state s is the predecessor of state t. The set of direct α-successors of s is defined as: P o s t ( s , α ) = { t S | R ( s , α , t ) > 0 } . The set of predecessors of t is defined by: P r e ( t ) = { s S | R ( s , α , t ) > 0 } . The set of actions that state s can trigger is defined as: A c t ( s ) = { α A c t | s S , R ( s , α , s ) > 0 } .
The paths in the GPDP M is denoted as π , and π = s 0 α 0 s 1 α 1 s 2 . P a t h s ( s ) and P a t h s f i n ( s ) denote the set of infinite paths and the set of finite paths starting from state s, respectively. P a t h s ( M ) and P a t h s f i n ( M ) represent the set of all infinite paths and the set of all finite paths in M, respectively.
In M = ( S , I , A c t , R , A P , L ) , for any α A c t , we can use the fuzzy matrix to express the possibilistic transition distribution function R : S × α × S [ 0 , 1 ] , which is denoted as R α , R α = ( R ( s , α , s ) ) s , s S , in which R α is the fuzzy transition matrix corresponding to action α in M. The maximum possibilistic transition matrix is expressed as R m a x = i = 0 n R α i , which is also expressed by
( R m a x ( s , t ) ) s , t S = ( α A c t ( s ) R ( s , α , t ) ) s , t S .  
The minimum possibilistic transition matrix is expressed as R m i n = i = 0 n R α i , that is,
( R m i n ( s , t ) ) s , t S = ( α A c t ( s ) R ( s , α , t ) ) s , t S .
The transition matrix closure of a fuzzy matrix R is denoted as R+, R + = R R 2 R 3 R | S | , where R k + 1 = R k R . The reflexive transition closure of the fuzzy matrix R is denoted as R*, R = R 0 R + , where R0 denotes the identity matrix.
Let us take the generalized possibilistic decision process (GPDP) in Figure 1 as an example. The set of system states is denoted as S = { s 0 , s 1 , s 2 , s 3 } ; I = { s 0 } represents the initial state of the system; A c t = { α , β } denotes the set of actions; R ( s 0 , β , s 1 ) = 0.72 denotes that the possibility of the system changing from state s 0 to s 1 by action β is 0.72; the set of atomic propositions is A P = { a , b , c } .   L ( s 0 , b ) = 0.4 denotes that the possibility that atomic proposition b holds in the state s 0 is 0.4.
The corresponding fuzzy matrices of the generalized possibilistic decision process in Figure 1 is given in the order s 0 s 1 s 2 s 3 :
R α = ( 0.8 0.3 0.8 0.1 0.2 0.1 0.3 0.3 0.1 ) R β = ( 0.5 0.5 0.5 0.2 0.4 0.8 0.5 0.7 0.8 ) R γ = ( 0.2 0.7 0.2 0.6 0.5 0.9 0.8 0.5 0.9 )
R m a x = ( 0.8 0.7 0.8 0.6 0.5 0.9 0.8 0.7 0.9 ) R m i n = ( 0.2 0.3 0.2 0.1 0.2 0.1 0.3 0.3 0.1 )
Definition 2.
For a generalized possibilistic decision process M = ( S , I , A c t , R , A P , L ) , a function GPoM:Paths(M) [0,1] is defined as follows:
G P o M ( π ) = I ( s 0 ) i 0 R ( s i , α i , s i + 1 ) ,
where π = s 0 α 0 s 1 α 1 s 2 P a t h s ( M ) . Furthermore, for any E p a t h s ( M ) , we define
G P o ( E ) = { G P o ( π ) | π E } .
Hence, the function GPo: 2Paths(M) [0,1] is a generalized possibility measure on Ω = 2 P a t h s ( M ) .
For a GPDP M = ( S , I , A c t , R , A P , L ) , the function r : S [ 0 , 1 ] is defines as:
r ( s ) = { i 0 R ( s i , α i , s i + 1 ) | s 1 = s , s i S , α i A c t } ,
then r ( s ) denotes the maximum possibility measure of a path starting from state s.
Furthermore, any finite Generalized Possibilistic Kripke Structure (GPKS) [18] can be regarded as a finite GPDP with only one action available in any state.
In the generalized possibilistic decision process, once the possibility distribution is selected by actions indeterminately, the selection of the next state is also performed by possibility selection. The uncertainty process describes the alternation of concurrent processes in a distributed system with incomplete information. Therefore, the generalized possibilistic decision process is very suitable as a model for uncertain systems.

4. GPoμ Model-Checking Algorithm

4.1. Generalized Possibilistic μ-Calculus

The classical μ-calculus [2] is used to represent the properties of the transition systems. It is mainly used for qualitative research on the Boolean systems, but it has certain limitations; it can not describe the properties of nondeterministic systems with possibility information. In this section, we extend the classical μ-calculus by adding the possibility value, and propose the concept of generalized possibilistic μ-calculus (GPoμ); the semantics interpret the GPoμ formulas as mappings from the set of states of GPDP to the domain of [0,1]. The conjunction, disjunction, and negation logical operators are interpreted by fuzzy theory and possibility measure theory, so as to analyze the safety and reliability of uncertain systems.
Definition 3. (Syntax of GPoμ)
Let AP be the set of atomic propositions, Φ , Ψ be GPoμ formulae, and V a r = { X 1 , X 2 , X 3 } be a set of relational variables; the generalized possibilistic μ-calculus is defined recursively by the grammar:
Φ : = p | X | j | ¬ Φ | Φ Ψ | Φ Ψ | Φ | Φ | μ X . Φ ( X ) | ν X . Φ ( X )
where p A P , X V a r ,   j [ 0 , 1 ] .
Here, to ensure the fixpoint formulas is monotonic, the variable X should be under an even number of negations. The following are the formulas of negativity and duality under the generalized possibilistic μ-calculus:
¬ ¬ Φ Φ
¬ ( Φ Ψ ) ¬ Φ ¬ Ψ
¬ μ X . Φ ( X ) ν X . ¬ Φ ( ¬ X )
¬ ν X . Φ ( X ) μ X . ¬ Φ ( ¬ X ) .
Definition 4. (Semantics of GPoμ)
Given a generalized possibilistic decision process (GPDP) and GPoμ formulas, Var denotes a set of relational variables, s S is a state. The environment is defined as ε : V a r j S , in which j S denotes the mapping from state to possibility value. For GPoμ formula, its semantic is a fuzzy set Φ ε : S [ 0 , 1 ] , which is defined as follows:
p ε ( s ) = L ( s , p )
X ε ( s ) = ε ( X )
j ε ( s ) = j
¬ Φ ε ( s ) = 1 Φ ε ( s )
Φ Ψ ε ( s ) = Φ ε ( s ) Ψ ε ( s )
Φ Ψ ε ( s ) = Φ ε ( s ) Ψ ε ( s )
Φ ε ( s ) = t S , α A c t ( R ( s , α , t ) Φ ε ( t ) )
Φ ε ( s ) = t S , α A c t ( R ( s , α , t ) Φ ε ( t ) )
μ X . Φ ( X ) ε ( s ) = { Z j S | Φ ε [ X Z ] Z } ( s )
ν X . Φ ( X ) ε ( s ) = { Z j S | Z Φ ε [ X Z ] } ( s )
Furthermore,   ε [ X Z ] indicates a new environment, except that for ε [ X Z ] ( X ) = Z , this environment is exactly the same as that of ε .
Theorem 1.
Let Φ be a GPoμ formula; for any s S , it satisfies the following equations.
¬ Φ ε ( s ) = ¬ Φ ε ( s )
¬ Φ ε ( s ) = ¬ Φ ε ( s )
Proof. 
¬ Φ ε ( s )
= ¬ ( t S , α A c t ( R ( s , α , t ) Φ ε ( t ) ) )
= ¬ ( R ( s , α , t ) Φ ε ( t ) )
= ( ¬ ¬ R ( s , α , t ) ¬ Φ ε ( t ) )
= ( R ( s , α , t ) ¬ Φ ε ( t ) )
= ¬ Φ ε ( s )
 □
Similarly, Equation (2) can be proved.
Theorem 2.
Given GPoμ formula Φ , Φ 1 , and Φ 2 , functions f 1 , f 2 : j S j S are defined as follows:
f 1 ( X ) ( s ) = Φ 2 ε ( s ) ( Φ 1 ε ( s ) s S , α A c t ( R ( s , α , s ) X ( s ) ) ) ,
f 2 ( X ) ( s ) = Φ ε ( s ) s S , α A c t ( R ( s , α , s ) X ( s ) ) .
where X j S , s S . If X , Y j S and X Y , then f 1 ( X ) f 1 ( Y ) , f 2 ( X ) f 2 ( Y ) .
Proof. 
For a linear lattice [0,1], the , operations are monotonic. If X Y , then for all s S , satisfy:
f 1 ( X ) ( s ) = Φ 2 ε ( s ) ( Φ 1 ε ( s ) s S , α A c t ( R ( s , α , s ) X ( s ) ) ) ,
Φ 2 ε ( s ) ( Φ 1 ε ( s ) s S , α A c t ( R ( s , α , s ) Y ( s ) ) ) = f 1 ( Y ) ( s ) .
Hence, f 1 is monotonic, and f 2 is also monotonic, since f 1 , f 2 is monotonic, and the possibility value (0,1) is a finite complete lattice. According to Knaster-Tarski’s theorem [11], f 1 , f 2 have a least fixpoint and greatest fixpoint, respectively. Similiar to the classical μ-calculus, the CTL formulae for the generalized possibilistic decision process can also be expressed by the GPoμ formulae. □
Therefore, we obtain Theorem 3.
Theorem 3.
The fixpoint semantics of CTL formulae for the generalized possibilistic decision process are expressed by GPoμ formulae, as shown in the following:
E ( Φ 1 Φ 2 ) = μ X . ( Φ 2 ( Φ 1 X ) )
E G Φ = ν X . Φ X .
Take Equation (12) as an example, we prove the correctness of Theorem 3.
Proof. 
According to Theorem 2, the fixpoint semantics of CTL formulae for generalized possibilistic decision process are expressed by GPoμ formulae, as shown in the following:
E ( Φ 1 Φ 2 ) = μ X . ( Φ 2 ( Φ 1 X ) )
E G Φ = ν X . Φ X
 □
Take Equation (12) as an example; we prove the correctness of Theorem 3.
Proof. 
According to Theorem 2, f 2 ( X ) ( s ) = Φ ε ( s ) s S , α A c t ( R ( s , α , s ) X ( s ) ) = ν X . ( Φ X ) is monotonic. Let A = E G   Φ , ( A ) ( s ) = π Π ( s ) i N ( Φ ( π ( i ) R ( π ( i ) , π ( i + 1 ) ) ) [24],
f 2 ( A ) ( s ) = Φ ( s ) t S ( R ( s , α , s 1 ) A ( s 1 ) )
= Φ ( s ) s 1 S ( R ( s , α , s 1 ) π Π ( s 1 ) i N ( Φ ( π ( i ) R ( π ( i ) , α , π ( i + 1 ) ) )
= ( Φ ( s ) s 1 S ( R ( s , α , s 1 ) ) π Π ( s 1 ) i N ( Φ ( π ( i ) R ( π ( i ) , α , π ( i + 1 ) ) )
= π Π ( s ) i N ( Φ ( π ( i ) R ( π ( i ) , π ( i + 1 ) ) )
= ( A ) ( s )
f 2 ( A ) ( s ) = ( A ) ( s ) , so the A is a fixpoint of f 2 .
Next, we prove that A is the greatest fixpoint of f 2 . Assume that Z is the fixpoint of
f 2 ,   Z = Φ Z = Φ R P Z .
Z ( s ) = Φ ( s ) s 1 S R ( s , α , s 1 ) Z ( s 1 ) Φ ( s ) s 1 , s 2 S R ( s , α , s 1 ) Φ ( s 1 ) Z ( s 1 ) R ( s 1 , α , s 2 ) Z ( s 2 )
π Π ( s ) i N ( Φ ( π ( i ) R ( π ( i ) , π ( i + 1 ) ) )
( A ) ( s )
Hence,
A = E G   Φ is   the   greatest   fixpoint   of   the   function f 2 ( X ) = Φ X .
 □

4.2. Model-Checking Algorithm

Given a GPDP M, a state s, and a GPoμ formula Φ , the purpose of GPoμ model checking is to calculate the value of Φ ε ( s ) . For GPoμ formula Φ , the value of Φ ε ( s ) can be calculated recursively in | Φ | steps; | Φ | represents the length of the formula Φ   [25], which are given as follows:
| p | = 1 | X | = 1
| j | = 1 | ¬ Φ | = | Φ | + 1
| Φ Ψ | = | Φ Ψ | = | Φ | + | Ψ | + 1
| Φ | = | Φ | = | Φ | + 1
| μ X . Φ | = | ν X . Φ | = | Φ | + 2 .
For formulas Φ = p , Φ = X , Φ = j , Φ = ¬ Φ , Φ = Φ Ψ , Φ = Φ Ψ , the value of Φ ε ( s ) can be calculated recursively according to Equations (1)–(6).
P Φ denotes the column vector that the possibility that formula Φ holds on s, i.e., we have,
  P Φ = ( Φ ε ( s ) ) s S .
To calculate the possibility about formula Φ = Φ , for any state and any α A c t , we convert the value of the formula into matrix operations,
Φ ε ( s ) = t S , α A c t ( R ( s , α , t ) Φ ε ( t ) ) = R α P Φ .
Therefore, the maximum and minimum values of Φ ε ( s ) denoted by fuzzy matrices are shown below:
( Φ ε ( s ) m a x ) s S = R m a x P Φ
( Φ ε ( s ) min ) s S = R min P Φ .
For Φ = Φ , according to Theorem 1, i.e., ¬ Φ ε ( s ) = ¬ Φ ε ( s ) , for any state and any α A c t , we have
Φ ε ( s ) = ¬ ¬ Φ ε ( s ) = ¬ ( R α P Φ c ) = ( R α P Φ c ) c
Thus, we use the fuzzy matrix to calculate the maximum and minimum values of Φ ε ( s ) as shown below:
( Φ ε ( s ) m a x ) s S = ( R m i n P Φ c ) c
( Φ ε ( s ) m i n ) s S = ( R m a x P Φ c ) c .
For Φ = μ X . Φ ( X ) and Φ = ν X . Φ ( X ) , we use the fixpoint algorithm [21]; the corresponding algorithm is presented in Algorithm 1.
Algorithm 1: Fixpoint algorithm
Input: A function f from the possibility distributions on the state set S into itself.
Output: The fixpoint of f.
  •   Function Fixpoint ( Q , f )
  •     Q = f ( Q )
  •     while   Q Q do
  •      Q = Q
  •      Q = f ( Q )
  •    end while
  •    return Q
  •   End Function
Furthermore, we respectively set Q = 0 or Q = 1 to calculate the least fixpoint or the greast fixpoint in the initial recursion, which is different with the classical fixpoint algorithm.
Hence, according to the GPoμ semantic, we give the GPoμ model-checking algorithm, it is presented in Algorithm 2:
Algorithm 2: GPoμ model checking algorithm
Input: A   GPDP   M and   a   GPo μ   formula   Φ .
Output: For   each   state     in   M   ,   the   possibility   s   | = Φ ,   i . e . , Φ ε ( s ) .
  • Function Check (Φ)
  • Case Φ
  • p   return   L ( s , p )
  • X   return   ε ( X )
  • j return   j
  • ¬ Φ   return   1 Φ ε ( s )
  • Φ Ψ   return   Φ ε ( s ) Ψ ε ( s )
  • Φ Ψ   return   Φ ε ( s ) Ψ ε ( s )
  • Φ   return   R α P Φ
  • Φ   return   ( R α P Φ c ) c
  • μ X . Φ ( X ) return   Fixpoint   ( 0 , f Φ )
  • ν X . Φ ( X ) return   Fixpoint   ( 1 , f Φ )
  • End Case
  • End Function
In the GPoμ model-checking algorithm, for the formulas Φ = p , Φ = X , Φ = j , Φ = ¬ Φ , Φ = Φ Ψ , Φ = Φ Ψ , the time complexity of the formulae is related to the length of Φ and the size of the system model M. For the formulae Φ = Φ , Φ = Φ , the time complexity of each formula is related to fuzzy matrix synthesis operation, i.e., O ( | S | 2 ) . For fixpoint formulas μ X . Φ ( X ) and ν X . Φ ( X ) , each fixpoint needs O(n) iterations, n = | S | , the time for each iteration through the fuzzy matrix synthesis operation is O ( | S | 2 ) , so the time complexity of the fixpoint formulae is O ( | S | 3 ) .

5. An Illustrative Example and Case Study

5.1. An Illustrative Example

In this section, let us give an example used in [24] to illustrate the GPoμ model-checking algorithm. Assume that a new type of disease occurs, and the doctors do not have enough knowledge to treat such diseases, they can only make treatment plans based on their own experience. Depending on the treatment options taken by the doctors, the patient’s physical health is also uncertain. So, GPDP is used to model the patient’s treatment process.
Assume that the doctors divide the patient’s status into three states, which are represented by s 0 , s 1 , and s 2 , respectively, that is, S = { s 0 , s 1 , s 2 } , and the initial state of the patient is s 0 . AP = { P , G , E } is the set of atomic propositions, where P , G , E respectively indicate that the patient’s health status is “poor”, “general”, and “excellent” in a certain state. For these three health conditions of patients, different doctors understand differently. Therefore, we give them a fuzzy value to indicate the degree of physical health. For example, L ( s 0 , P ) = 0.7 denotes that the degree that the patient’s health is “poor” on state s 0 is 0.7; let Act = { α , β , γ } , which means that the doctors treat the patient with   α , β , γ : three different treatment schemes.   R ( s 0 , β , s 2 ) = 0.5 denotes that the possibility that this patient’s health status changes from the state   s 0 to s 2 is 0.5 after the doctors adopt the treatment scheme β .
From Figure 2, we can get the corresponding truth matrices of P , G , E , P P = ( 0.7 0.3 0.1 ) T , P G = ( 0.15 0.24 0.65 ) T , and P E = ( 0.2 0.51 0.8 ) T . R α , R β , and R γ respectively denote the fuzzy matrices of three treatment schemes. The maximum possibilistic transition matrix is R m a x , and the minimum possibilistic transition matrix is R m i n .
R α = ( 0.8 0.3 0.8 0.1 0.2 0.1 0.3 0.3 0.1 ) R β = ( 0.5 0.5 0.5 0.2 0.4 0.8 0.5 0.7 0.8 ) R γ = ( 0.2 0.7 0.2 0.6 0.5 0.9 0.8 0.5 0.9 )
R m a x = ( 0.8 0.7 0.8 0.6 0.5 0.9 0.8 0.7 0.9 ) R m i n = ( 0.2 0.3 0.2 0.1 0.2 0.1 0.3 0.3 0.1 )
Some calculations are presented as follows in detail.
E ε ( s ) denotes the possibility that the patient’s health eventually changes to “excellent” after a treatment.
E ε ( s ) m a x , E ε ( s ) m i n respectively represent the maximum and minimum possibilities of E ε ( s ) in three states.
E ε ( s ) m a x = R m a x P E = ( 0.8 0.8 0.8 ) T ,
E ε ( s ) m i n = R m i n P E = ( 0.3 0.2 0.3 ) T .
Hence,
E ε ( s 0 ) m a x = 0.8 ,   E ε ( s 1 ) m a x = 0.8 ,   E ε ( s 2 ) m a x = 0.8 .
E ε ( s 0 ) m i n = 0.3 ,   E ε ( s 1 ) m i n = 0.2 ,   E ε ( s 2 ) m i n = 0.2 .
E ε ( s ) denotes the possibility that the patient’s health always changes to “excellent” after a treatment.
E ε ( s ) m a x and E ε ( s ) m i n respectively represent the maximum and minimum possibilities of E ε ( s ) in three states.
E ε ( s ) m a x = ( R m i n P E c ) c = ( 0.7 0.8 0.7 ) T ,
E ε ( s ) m i n = ( R m a x P E c ) c = ( 0.2 0.4 0.2 ) T .
Hence,
E ε ( s 0 ) m a x = 0.7 ,   E ε ( s 1 ) m a x = 0.8 ,   E ε ( s 2 ) m a x = 0.7 .
E ε ( s 0 ) m i n = 0.2 ,   E ε ( s 1 ) m i n = 0.4 ,   E ε ( s 2 ) m i n = 0.2 .
According to Formula (11), E ( Φ 1 Φ 2 ) ( s ) is the least fixpoint of τ ( X ) = Φ 2 ( Φ 1 X ) . Let P X = ( 0 0 0 ) T , E ( P E ) ( s ) means the possibility that the patient’s health eventually changes from “poor” to “excellent”.
The process of calculating the maximum and minimum possibilities with fuzzy matrices is as follows:
τ ( X 1 ) = P E ( P p ( R m a x P X ) = ( 0.2 0.51 0.8 ) T ,
τ ( X 2 ) = P E ( P p ( R m a x P X 1 ) = ( 0.7 0.51 0.8 ) T ,
τ ( X 3 ) = P E ( P p ( R m a x P X 2 ) = ( 0.7 0.51 0.8 ) T ,
τ ( X 2 ) = τ ( X 3 ) ,   E ( P E ) ( s ) m a x = ( 0.7 0.51 0.8 ) T .
Similarly,
E ( P E ) ( s ) m i n = ( 0.3 0.51 0.8 ) T .
Hence,
E ( P E ) ( s 0 ) m a x = 0.7 ,   E ( P E ) ( s 1 ) m a x = 0.51 ,   E ( P E ) ( s 2 ) m a x = 0.8 .
E ( P E ) ( s 0 ) m i n = 0.3 ,   E ( P E ) ( s 1 ) m i n = 0.51 ,   E ( P E ) ( s 2 ) m i n = 0.8 .
According to Formula (12), EG   Φ ( s ) is the greast fixpoint of τ ( X ) = Φ X . Let P X = ( 1 1 1 ) T , EG   E ( s ) means the possibility that the patient’s health is potentially always “excellent”.
The process of calculating the maximum and minimum possibilities by fuzzy matrices is as follows:
τ ( X 1 ) = P E ( R m a x P X ) = ( 0.2 0.51 0.8 ) T ,
τ ( X 2 ) = P E ( R m a x P X 1 ) = ( 0.2 0.51 0.8 ) T ,
τ ( X 1 ) = τ ( X 2 ) ,   EG   E ( s ) m a x = ( 0.2 0.51 0.8 ) T .
Similarly,
EG   E ( s ) m i n = ( 0.2 0.2 0.2 ) T .
Hence,
EG   E ( s 0 ) m a x = 0.2 ,   EG   E ( s 1 ) m a x = 0.51 ,   EG   E ( s 2 ) m a x = 0.8 ,
EG   E ( s 0 ) m i n = 0.2 ,   EG   E ( s 1 ) m i n = 0.2 ,   EG   E ( s 2 ) m i n = 0.2 .
As a result, the possibility values that each state satisfies the attributes are obtained. Through these data, doctors can compare the results of different treatment options and then make the practical treatment scheme. Our algorithm provides data support for doctors’ decision analysis.

5.2. Case Study

We use the intelligent washing machine studied in [18] as an example to better explain the application of the GPoμ model-checking method. As shown in Figure 3, it is the control system of the intelligent washing machine, where S0 to S10 are the states of the system, there is only one action in the system, and the possibility values are marked between states. The atomic propositions are dirty (di), detergent (de), and running (r), which denote the condition of the cloths, the state of the detergent, and the state of the system. The value of every atomic proposition is labeled at each state. For example, di = 1 means that the clothes are very dirty, di = 0.5 means that the clothes are moderately dirty, and di = 0 means that the clothes are clean. de = 1 means there is a lot of detergent, de = 0.5 means there is moderate detergent, and de = 0 means that there is no detergent. r =1 denotes that the machine is running, and r = 0 means that the washing machine is off. The initial state is S0, and the clothes are very dirty, there is a lot of detergent, and the system is off. From S1 to S2, it can be found that the dosage of the detergent is decreasing. At S3, the detergent is 0, but the clothes are still dirty, and the detergent should be added, so S3 may return to initial state S0 or return to S2. In addition, each state has a self-circulation, and the possibility is 1, which are omitted in the figure.
For the intellgent washing machine system, we convert some properties into GPoμ formulae:
Property1 
The possibility that the washing machine can be turned off at the next time, which is denoted as ¬ r u n n i n g .
Property2 
The possibility that the clothes can be cleaned when the washing machine is in the next state, which is denoted as ¬ d i r t y .
Property3 
The possibility that the washing machine may have detergent before the clothes are clean, which is denoted as μ X . ¬ d i r t y ( d e t e r g e t X ) .
Property4 
The possibility that detergent is always in the washing machine, which can be denoted as ν X . d e t e r g e t X .
Property5 
The possibility that only with detergent, the clothes can be cleaned in the washing machine, which is denoted as ν X . ( d e t e r g e t ¬ d i r t y ) X .
The results of verifying the properties of the intelligent washing machine system you can see in the following Table 1.
The table lists the possibility value that each state meets the properties. For example, for Property 1, ¬ r u n n i n g ( S 0 ) = ¬ r u n n i n g ( S 3 ) = ¬ r u n n i n g ( S 7 ) = 1 , the result indicates that only at states S0, S3,S7 can the washing machine be turned off at the next time. For Property 3, we know μ X . ¬ d i r t y ( d e t e r g e t X ) ( S 7 ) = 0 , which indicates the possibility that the washing machine may have detergent before the clothes only at S7 are clean is 0, because the clothes are clean and there is no detergent, so S7 does not need to sytisfy Property 3. For Property 5, ν X . d e t e r g e t X ( S 0 ) = ν X . d e t e r g e t X ( S 1 ) = ν X . d e t e r g e t X ( S 5 ) = ν X . d e t e r g e t X ( S 9 ) = 1, which indicates that detergent is potentially always in the washing machine at states S0, S1, S5, and S9.
In [18], they use the GPoLTL formulae to represent the properties of the systems and verified the fuzzy linear-time properties of systems. Diferent from them, we denoted the properties of the systems by GPoμ formulas, and we can express diferent properties of the systems that the GPoLTL formulae can not express.

6. Conclusions

This paper introduced the μ-calculus model-checking algorithm for the generalized possibilistic decision process, which is an extension of the Lμ model checking in [26]. We first give the generalized possibilistic decision process, and then extend the classical μ-calculus to describe the complex logical relationships and attribute the characteristics of nondeterministic systems. We simplify the model-checking problem into fuzzy matrix operations. It implements attribute verification for nondeterministic systems, and we have explained some examples to prove the effectiveness and practicability of the algorithm.
The classical μ-calculus model-checking algorithm simply searches the finite state space of Boolean transition systems to find the satisfaction set of system properties. The GPoμ model-checking algorithm is more powerful in terms of expressiveness for expressing possible information, because it can characterize uncertain information for dealing with the incompleteness of the information in the systems and specifications, and it can give the degree to which the systems satisfy the specifications. The satisfaction relation becomes the possibility values that expected properties hold, which is more in line with the characteristics of the actual systems.
In the actual system design, for a system containing possibility information, the system is uncertain (lack of basic information) or inconsistent (conflicts often occur when collecting information from multiple sources Information), and classical logic is unable to infer and calculate the relevant characteristics of uncertain systems. Our methods can verify the properties of nondeterministic systems, such as expert systems and intelligent control uncertain systems, etc. However, the research on the expression ability of extended μ-calculus is not enough, such as multilayer nesting between multiple fixpoint formulas, and research on the optimization of nesting algorithms is not enough. In the future, we will continue to study the expression ability of the algorithm and develop a practical model checker to implement automatic verification.

Author Contributions

Conceptualization, J.J.; methodology, J.J., P.Z., and Z.M.; software, P.Z. and Z.M.; validation, J.J., P.Z., and Z.M.; formal analysis, J.J., P.Z., and Z.M.; investigation, J.J.; resources, J.J., P.Z., and Z.M.; data curation, J.J., P.Z., and Z.M.; writing—original draft preparation, J.J. and Z.M.; writing—review and editing, J.J., P.Z., and Z.M.; visualization, P.Z.; supervision, J.J.; project administration, Z.M.; funding acquisition, J.J., P.Z., and Z.M. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported by the Natural Science Foundation of China (No. 61762002, No. 61962001) and the Ningxia Natural Science Foundation (No. 2018AAC03127).

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Baier, C.; Katoen, J.P. Principles of Model Checking; The MIT Press: Cambridge, MA, USA, 2008. [Google Scholar]
  2. Clarke, E.M.; Grumberg, O.; Peled, D. Model Checking; The MIT Press: Cambridge, MA, USA, 1999. [Google Scholar]
  3. Stephane, D.; Valentin, G.; Martin, L. Temporal Logics in Computer Science; Cambridge University Press: Cambridge, UK, 2016. [Google Scholar]
  4. Clarke, E.M.; Henzinger, T.A.; Veith, H.; Bloem, R. (Eds.) Handbook of Model Checking; Springer: Cham, Switzerland, 2018. [Google Scholar]
  5. de Alfaro, L. Quantitative Verification and Control via the Mu-Calculus. In International Conference on Concurrency Theory; Springer: Berlin/Heidelberg, Germany, 2003. [Google Scholar]
  6. McIver, A.; Carroll, M. Results on the quantitative μ-calculus qM μ; ACM Transactions on Computational Logic (TOCL): New York, NY, USA, 2007; Available online: https://0-dl-acm-org.brum.beds.ac.uk/citation.cfm?doid=1182613.1182616.
  7. Li, Y.; Li, Y.; Ma, Z. Computation tree logic model checking based on possibility measures. Fuzzy Sets Syst. 2015, 262, 44–59. [Google Scholar] [CrossRef] [Green Version]
  8. Yuan, S.; Wei, J.L.; Li, Y. Model checking of generalized possibilistic computation tree logic with multi-valued decision process. Comput. Eng. Sci. 2019, 41, 88–97. [Google Scholar]
  9. Lei, L.; Guo, Y.; Zhang, Y.B. Computation tree logic symbolic model checking under possibility measures. Comput. Eng. Sci. 2018, 40, 106–112. [Google Scholar]
  10. Fischer, D.; Gradel, E.; Kaiser, L. Model checking games for the quantitative mu-calculus. Theory Comput. Syst. 2010, 47, 696–719. [Google Scholar] [CrossRef]
  11. Li, Y.; Droste, M.; Lei, L. Model checking of linear-time properties in multi-valued systems. Inf. Sci. 2017, 377, 51–74. [Google Scholar] [CrossRef] [Green Version]
  12. Fainekos, G.E. An Introduction to Multi-Valued Model Checking: MS-CIS-05-16; University of Pennsylvania: Philadelphia, PA, USA, 2005. [Google Scholar]
  13. Narasimha, M.; Cleaveland, R.; Iyer, P. Probabilistic temporal logics via the modal mu-calculus. Theor. Comput. Sci. 1998, 342, 316–350. [Google Scholar]
  14. Chechik, M.; Devereux, B.; Easterbrook, S.; Gurfinkel, A. Multi-valued symbolic model checking. ACM Trans. Softw. Eng. Methodol. 2003, 12, 371–408. [Google Scholar] [CrossRef]
  15. Gurfinkel, A.; Chechik, M. Multi-Valued Model Checking via Classical Model Checking. In CONCUR 2003—Concurrency Theory, Proceedings of the 14th International Conference on Concurrency Theory, Marseille, France, 3–5 September 2003; Springer: Berlin/Heidelberg, Germany, 2003; pp. 263–277. [Google Scholar]
  16. Mallya, A. Deductive multi-valued model checking. In Proceedings of the International Conference on Logic Programming, Sitges, Spain, 2–5 October 2005. [Google Scholar]
  17. Pan, H.; Li, Y.; Cao, Y.; Ma, Z. Model checking computation tree logic over finite lattices. Theor. Comput. Sci. 2016, 612, 45–62. [Google Scholar] [CrossRef]
  18. Li, Y. Quantitative model checking of linear-time properties based on generalized possibility measures. Fuzzy Sets Syst. 2017, 320, 17–39. [Google Scholar] [CrossRef] [Green Version]
  19. Li, Y.; Lei, L.; Li, S. Computation tree logic model checking based on multi-valued possibility measures. Inf. Sci. 2019, 485, 87–113. [Google Scholar] [CrossRef]
  20. Li, Y.; Li, L. Model checking of linear-Time properties based on possibility measure. IEEE Trans. Fuzzy Syst. 2013, 21, 842–854. [Google Scholar] [CrossRef] [Green Version]
  21. Li, Y. Quantitative computation tree logic model checking based on generalized possibility measures. IEEE Trans. Fuzzy Syst. 2015, 23, 2034–2047. [Google Scholar] [CrossRef] [Green Version]
  22. Klein, J.; Baier, C.; Chrszon, P.; Daum, M.; Dubstlatt, C.; Klüppelholz, S.; Märcker, S.; Müller, D. Advances in Symbolic Probabilistic Model Checking with PRISM. In Proceedings of the 22nd International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS), Eindhoven, The Netherlands, 2–8 April 2016; Springer: Berlin/Heidelberg, Germany, 2016; pp. 349–366. [Google Scholar]
  23. Li, Y.; Li, P. Theory of Fuzzy Computation; Science Press: Beijing, China, 2016. [Google Scholar]
  24. Ma, Z.; Li, Y. Model checking of generalized possibilistic computing tree logic based on decision process. Chin. Sci. Inf. Sci. 2016, 46, 1591–1607. [Google Scholar]
  25. Jungteerapanich, N. A Tableau System for the Modal μ-Calculus. In Proceedins of the 18th International Conference on Automated reasoning with Analytic Tableaux and Related Methods (TABLEAUX), Oslo, Norway, 6–10 July 2009; Springer: Berlin/Heidelberg, Germany, 2009; pp. 220–234. [Google Scholar]
  26. Zhang, P.; Jiang, J.; Ma, Z.; Zhu, H. Quantitative µ-calculus model checking algorithm based on generalized possibility measures. In Proceedings of the 2019 IEEE International Conference on Dependable, Autonomic and Secure Computing, International Conference on Pervasive Intelligence and Computing, International Conference on Cloud and Big Data Computing, International Conference on Cyber Science and Technology Congress, Fukoka, Japan, 5–8 August 2019; IEEE: Piscataway, NJ, USA, 2019; pp. 449–453. [Google Scholar]
Figure 1. Generalized possibilistic decision process (GPDP).
Figure 1. Generalized possibilistic decision process (GPDP).
Applsci 10 02594 g001
Figure 2. The GPDP of the patient treatment process.
Figure 2. The GPDP of the patient treatment process.
Applsci 10 02594 g002
Figure 3. The GPDP of the intellgent washing machine system.
Figure 3. The GPDP of the intellgent washing machine system.
Applsci 10 02594 g003
Table 1. Results of verifying the properties of the intelligent washing machine system.
Table 1. Results of verifying the properties of the intelligent washing machine system.
PropertiesGPoμ FomulasVerifying Results
Property1 ¬ r u n n i n g (1,0,0,1,0,0,0,1,0,0)T
Property2 ¬ d i r t y (0,0,0,0,0.5,0.5,0.5,0,1,1)T
Property3 μ X . ¬ d i r t y ( d e t e r g e t X ) (0.5,0.5,0.5,0,0.5,0.9,0.5,1,1,1)T
Property4 ν X . d e t e r g e t X (1,1,0.5,0,0.5,1,0,0,0.5,1)T
Property5 ν X . ( d e t e r g e t ¬ d i r t y ) X (0,0,0.5,1,0.5,0.5,1,1,1,1)T

Share and Cite

MDPI and ACS Style

Jiang, J.; Zhang, P.; Ma, Z. The μ-Calculus Model-Checking Algorithm for Generalized Possibilistic Decision Process. Appl. Sci. 2020, 10, 2594. https://0-doi-org.brum.beds.ac.uk/10.3390/app10072594

AMA Style

Jiang J, Zhang P, Ma Z. The μ-Calculus Model-Checking Algorithm for Generalized Possibilistic Decision Process. Applied Sciences. 2020; 10(7):2594. https://0-doi-org.brum.beds.ac.uk/10.3390/app10072594

Chicago/Turabian Style

Jiang, Jiulei, Panqing Zhang, and Zhanyou Ma. 2020. "The μ-Calculus Model-Checking Algorithm for Generalized Possibilistic Decision Process" Applied Sciences 10, no. 7: 2594. https://0-doi-org.brum.beds.ac.uk/10.3390/app10072594

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop