bool p = true;
active proctype q() {
do
:: p=false; p=true; p=false
od
}
never {
do
:: !p -> goto acceptRun
:: else -> skip; skip
od;
acceptRun : skip
}
在这个promela模型中,永不索赔验证最初,然后每隔一个步骤p保持。为什么?谢谢!
答案 0 :(得分:0)
永不索赔对模型的每一步都迈出了一步。因此,如果!p
下一步将是接受状态(从不声明失败)。但是如果p
那么永不声明将需要两个添加步骤才能再次检查p
。
虽然声明不是“寻找p
”,但您可以'隐藏'p
的其他一些值。