Abstract
By considering the multi-valued bisimulation quotients, smaller multi-valued models are obtained. This minimization can be exploited for efficient multi-valued model checking. In this paper, we illustrate an application of the multi-valued bisimulation quotients. Further, we present some definitions of partitions of multi-valued Kripke structures. Finally, as the main contribution, in order to generate the multi-valued bisimulation quotient, we provide a series of algorithms and analysis the time complexity of it.
Introduction
Under certain conditions, Bisimulation [1] provides a replacement strategy to deal with the state space explosion problem in model checking. Classical bisimulation requires any truth value of label functions and transition relation must be certainly and accurately, i.e., the truth values of label functions and transition relation limited by “true” or “false”.
However, A majority of realistic systems are more or less having uncertainty. In order to realize bisimulation of uncertain systems, Baier and Katoen combined with Markov chains provided the probabilistic bisimulation [15, 16]. Despite probabilistic model can describe randomized uncertainty, it still can not resolve the issues which are not regulated by probabilistic computing characteristics. Different from probabilistic bisimulation, Pan et al. combined with lattice-valued transition systems proposed a-bisimulation [2] and lattice-valued bisimulation [3]. The non-contradiction law (i.e., a ∧ ¬ a = 0) and excluded middle law(i.e., a ∨ ¬ a = 1) are unrestricted because of lattice-valued transition systems allow more than two truth values like “uninitialized”, “unknown”, “don’t care”, and more. Recently, Cao et al. investigated bisimulation for fuzzy transition systems [4]. And Wu et al. did a deeply study about logical characterizations of bisimulation for fuzzy transition systems [5]. But besides bisimulation, model checking also has great development in uncertain systems [10–14].
Recently bisimulation studies using complete residuated lattices as truth values. Some well-known algebraic structures such as Heyting algebras [6], Boolean algebras [7] and Lukasiewicz algebras [9] are all particular cases of complete residuated lattices [8]. And being once proved in complete residuated lattice, the result will be valid in any of its special cases. Thus, a lot of authors think the lattices-valued bisimulation covers the bisimulation of above special cases. In spite of complete residuated lattices are general algebraic structures and generalize many algebras with very important application. De Morgen algebra [17], however, are of a special one. Any finite De Morgen algebra with operators ⊗ and → defined as x ⊗ y = x ∧ y, x → y = ⋁ {z : x ∧ z ≤ y}, is a complete residuated lattice. A finite De Morgen algebra with operators → defined as x → y = ¬ x ∨ y, which has been chosen as truth values of multi-valued Kripke structures, is not necessarily a complete residuated lattices. Thus, make a precise distinction between multi-value bisimulation and lattices-value bisimulation is very essential. Unless otherwise explicitly stated,
Preliminaries
In this section, we start with a short introduction to the definitions of De Morgen algebras, multi-valued Kripke structures, multi-valued bisimulation and partition. For more details, please refer to [15, 18–21].
law of de Morgan: ¬ (x ∨ y) = ¬ x ∧ ¬ y, ¬ (x ∧ y) = ¬ x ∨ ¬ y. law of involution: ¬¬ x = x. law of anti-monotonic: (x ≤ y) ⇔ ¬ x ⩾ ¬ y.
Any finite Boolean algebra regard as a de Morgan algebra with the conditions holds: x ∧ ¬ x = 0, x ∨ ¬ x = 1, where x ∈ L. As the general structure, the result will be valid in any finite Boolean algebra.
Any finite De Morgen algebra is a complete residuated lattice with operators ⊗ and → defined as x ⊗ y = x ∧ y, x → y = ⋁ {z : x ∧ z ≤ y}. But if operators → defined as x → y = ¬ x ∨ y, is not necessarily a complete residuated lattices. That is the reason that the bisimulation in multi-value Kripke structures is different from the bisimulation in lattice-value Kripke structures.
mv-intersection: (f ∩ g) (s) ≜ f (s) ∧ g (s). mv-union: (f ∪ g) (s) ≜ f (s) ∨ g (s). mv set inclusion: f ⊆ g ≜ ∀ (s) . (f (s) ≤ g (s)). mv-equality: f = g ≜ ∀ (s) . (f (s) = g (s)). mv-complement:¬f (s) ≜ ¬ (f (s)).
S is a set of states. I is an R is the multi-valued transition relation that maps (s, t) ∈ S × S to some V is a label function that maps a pair (s, p) ∈ S × AP to some AP is a finite set of atomic propositions.
A multi-valued Kripke structure is called finite if S and AP are finite, we always assume that multi-valued Kripke structures are finite in this paper. For s
i
∈ S, 0 ≤ i ≤ n, p ∈ AP,
V (s1, p) = V (s2, p) ⩾ a, p ∈ AP, a ∈ L. If If C is a splitter for Π if there exists a block B ∈ Π with B∩ Pre (c) ≠ ∅ and B∖ Pre (C) ≠ ∅. Block B is stable with respect to C if B∩ Pre (c) = ∅ or B∖ Pre (C) = ∅. Π is stable with respect to C if each block B ∈ Π is stable with respect to C.
Two states s1 and s2 are multi-valued bisimular, written s1 ∼
a
s2, if there exists a multi-valued bisimulation
Multi-valued bisimulation quotient
Follow the properties of bisimulation, some Kripke structures can construct a composition, if they fulfill some bisimulation relations. On the contrary, a Kripke structure also can be refined to a simplifying form(i.e., bisimulation quotient), if some states fulfill bisimulation. This section presents the definition of multi-valued bisimulation quotient and a specific application of it.
S/ ∼
a
= {[s] ∼
a
|s ∈ S} denotes the multi-valued quotient space. I' = {[s] ∼
a
|s ∈ I} is the equivalent multi-valued initial states. R' as the equivalent multi-valued relation. V'([s]~
a
, p)=V (s, p), as the equivalent labeling function.
According to multi-valued bisimulation quotient, multi-valued state space can be the greatest reduced.
As shown as Fig. 1. s0 is the current location of an ambulance, s1, s2, s3 and s4 are four patients in need of treatment, s5 and s9 are two gas stations, s6, s7, s8, s10, s11 and s12 are the hospitals distribution in current region. Red(dark) road represents the traffic flows are large. The car “may be” drive in the red roads and “must” drive in the normal roads. The car “may be” or “must” need to refuel, when driving in the red roads or long distance. Below are the options of the ambulance bring patients to hospitals.→1/2 represent current road jammed, maybe pass through it,→1 represent current road unimpeded, must pass through it. {s0} →1/2 {s1} →1/2 {s5} →1/2 {s11}. {s0} →1/2 {s1} →1/2 {s6}. {s0} →1/2 {s2} →1/2 {s7}. {s0} →1 {s3} →1 {s8}. {s0} →1 {s4} →1 {s9} →1 {s12}. {s0} →1 {s4} →1 {s10}.

Real-time traffic network of Los Angeles.
In Fig 2. (A) is a multi-valued Kripke structure(3-valued) of the original insight. S = {s0, s1,. . . , s12}, AP = {p1, p2, p3, p4}, where p1 labels states whether are ambulance, p2 labels states whether are patients, p3 labels states whether are gas stations, p3 labels states whether are hospitals. Because s11 is being constructed, V (s11, p4) ⩾1/2 represent s11 “maybe” is a hospitals.

Multi-valued bisimulation quotient of insight.
(B) is the multi-valued bisimulation quotient of (A), it simplified the decision and provide an optimal insight as below. {s0} →1/2 {s1, s2} →1/2 {s5} →1/2 {s11}. {s0} →1/2 {s1, s2} →1/2 {s6, s7}. {s0} →1 {s3, s4} →1 {s9} →1 {s12}. {s0} →1 {s4} →1 {s8, s10}.
There are several algorithms for computing the multi-valued bisimulation quotient. Below sections will respectively explain the details of multi-valued AP partition algorithm, multi-valued pioneer refinement algorithm and multi-valued successor refinement algorithm.
Multi-valued AP partition algorithm
In the multi-valued AP partition algorithm, the states regroup to follow whether the label function values are equally. It determines the equivalent multi-valued initial states.
Follow the definition, the procedure of multi-valued AP partition Π AP is the procedure to generate a multi-valued decision tree.
As Fig. 3. The different branches of the multi-valued decision tree represent different label function memberships. The AP decides the height of the multi-valued decision tree, for AP = {p1, p2}, the height of the multi-valued decision tree is 2. The vertices at depth 1 represent the decision “V (s i , p1) ⩾ a”, the vertices at depth 2 represent the decision “V (s i , p2) ⩾ a”, s i ∈ S, a ∈ L. Ultimately, according to different memberships, the states space will divide into some leafs, and the leafs represent the result of AP partition.

Multi-valued decision tree Π AP .
Block B0 = {s0}, because of V (s0, p1) =1 and V (s0, p2) =0. Block B1 = {s1}, because of V (s1, p1) =1 and V (s1, p2) ⩾1/2. Block B2 = {s2}, because of V (s2, p1) ⩾1/2 and V (s2, p2) =0. Block B3 = {s3, s4, s5}, because of V (s3, p1) =0, V (s4, p1) =0, V (s5, p1) =0 and V (s3, p2) =0, V (s4, p2) =0, V (s5, p2) =0. Block B4 = {s6}, because of V (s6, p1) ⩾1/2 and V (s6, p2) ⩾1/2.

A 3-valued AP partition.
After the 3-valued AP partition:
Π AP = {(s0) , (s1) , (s2) , (s3, s4, s5) , (s6)}.
The essential steps are outlined in Algorithm 1.
Computing the multi-valued AP partition
For each states s ∈ S, the multi-valued decision tree has to be traversed from root to leaf will take the time Θ (|AP| · |L|). So the time complexity of computing the multi-valued AP partition Θ (|S| · |AP| · |L|). When a = 1, the multi-valued decision tree comes down to the binary tree, and it is a binary tree traversal of classical bisimulation quotient with the time complexity Θ (|S| · |AP|).
Π AP is guaranteed the states with the equal label function memberships. However, there are still existing some multi-valued partitions Π i (i ≠ 0) finer than multi-valued AP partition Π AP . This is taken care of in the successive multi-valued refinement steps. The multi-valued refinement procedure will be terminated till Π i can not was further refined. This successive refinement partition steps called as multi-valued refinement partitions.
The multi-valued refinement partitions include multi-valued pioneer refinement and Multi-valued successor refinement.
Multi-valued pioneer refinement
Refine pre (Π, C) = ⋃ B∈ΠRefine pre (B, C) = ⋃ B∈Π (⋃ a∈L (B ∩ Pre a (C))).

3-value pioneer refinement.
After AP partition, Π0 = Π AP = {B1, B2, B3, B4}. Where B1 = {s0, s1, s2}, B2 = {s3, s4, s5, s6}, B3 = {s7, s8}, B4 = {s9, s10, s11, s12}.
For multi-valued pioneer refinement, start from Π0. In the first iteration, consider C1 = B2 as the first multi-valued pioneer splitter.
⋃a∈L (B1 ∩Pre a (C1))= (B1 ∩ Pre0 (C1)) ∪ (B1 ∩ Pre1/2(C1)) ∪ (B1 ∩Pre1 (C1)) = {s0} ∪{s1,s2} ∪ {s1, s2}={{s0},{s1,s2}}.
B1 divides into B11 = {s0}, B12 = {s1, s2}. Then Π1 = {B11, B12, B2, B3, B4}
No further multi-valued pioneer refinements are possible in Π1, thus Π pre = Π1 agrees with multi-valued pioneer stable, Π pre is the multi-valued pioneer quotient.

3-value successor refinement.
For multi-valued successor refinement, start from Π0 = Π AP .
In the first iteration, consider C1 = B1 as the first multi-valued successor splitter.
⋃a∈L (B2 ∩ Post a (C1)) = (B2 ∩ Post0 (C1)) ∪ (B2 ∩ Post1/2 (C1)) ∪ (B2 ∩ Post1 (C1)) = ∅ ∪ {s3, s5} ∪ {s4, s6} = {{s3, s5}, {s4, s6}}.
B2 divides into B21 = {s3, s5}, B22 = {s4, s6}. Then Π1 = {B1, B21, B22, B3, B4}.
In the second iteration, consider C2 = B3 as the second multi-valued successor splitter.
B4 divides into B41 = {s9, s12}, B42 = {s10, s11}. Then Π2 = {B1, B21, B22, B3, B41, B42}.
No further multi-valued successor refinements in Π2, thus Π post = Π2 agrees with multi-valued successor stable. And Π post is the multi-valued successor quotient.

3-value successor refinement.
Π refinement = Π pre ∩ Π post = {{s0} , {s1, s2} , {s3, s5} , {s4, s6} , {s7, s8} , {s9, s12} , {s10, s11}} is multi-valued stable.
After multi-valued AP partition, multi-valued pioneer refining partition and multi-valued successor refining partition, Π refinement is the multi-valued bisimulation quotient.
Algorithm 2 outlines the main steps of multi-valued refinement partition. Both multi-valued pioneer refinement and multi-valued successor refinement start form multi-valued AP partition Π
AP
. When Π
i
is multi-valued pioneer stable and multi-valued successor stable, the iteratively multi-valued pioneer refinement and multi-valued successor refinement will be stop and Π
i
is multi-valued stable. By means of above, every state s ∈ C for multi-valued pioneer refinement, the time costs
Computing the multi-valued refinement partition
Bisimulation has been effectively applied to the analyses of systems, protocols and algorithms. Quotient has very important role in bisimulation and it provides a method to obtain the minimization of many systems. Multi-valued bisimulation extend truth values into De Morgen algebras, and it realises different multi-valued systems comparison. Thus, the definitions and algorithms of how to generate a quotient in multi-valued systems are also significant andessential.
In this paper, we have investigated quotient of multi-valued Kripke structures. Firstly of all, we have used an application of traffic to illustrate that how quotients to help to make decisions and insights in multi-value environments. Secondly, we have introduced some important definitions of the multi-value AP partition and the Multi-valued refinement partition. Finally, we have illustrated the processes of how to generate multi-value quotient by a series of examples and algorithms. And we also analysis every algorithm’s time complexity. Because of the properties between De Morgen algebras and Boolean algebras, all the algorithms and method can be used for classical model checking are obviously.
In future research, if using complete residuated lattices as truth values, it would be very interesting to discuss relevant quotient algorithms. And we also need to consider some improved algorithms to reduce the time complexity.
