nuXmv LTL公式的空初始状态集

时间:2018-07-28 13:51:27

标签: model-checking nusmv nuxmv

我正在使用nuXmv 1.1.1对以下有限状态机进行模型检查。

MODULE main
VAR
    node :  {_0_0,_1_0,_1_1,_1_2,_1_3,_2_0};
DEFINE
setParentThis_r_ := case 
     TRUE : FALSE; 
 esac; 

setParent_r_ := case 
    node=_1_3 :TRUE;
     TRUE : FALSE; 
 esac; 

ASSIGN
     init(node) := _2_0 ;
     next(node) :=  case 
    node =_0_0:{_0_0}; 
    node =_1_0:{_1_1}; 
    node =_1_1:{_1_2}; 
    node =_1_2:{_1_3}; 
    node =_1_3:{_0_0}; 
    node =_2_0:{_1_0}; 

 esac;

具有以下CTL规范

SPEC
A[(!(setParent_r_)) U (setParentThis_r_ -> AX(AG(!(setParent_r_))))]

nuXmv得出的说明是正确的。

具有以下LTL规范

LTLSPEC
(!(setParent_r_)) U (setParentThis_r_ -> X(G(!(setParent_r_))))

nuXmv产生以下警告

  

********警告********有限状态机的初始状态集为空。这可能会使模型检查的结果不正确   可信赖的。   ********结束警告********

我了解该警告,但不明白为什么会出现。 我认为,它应该同时显示在两个规格中,或者根本不显示。

有人有解释吗?

0 个答案:

没有答案