在这个promela模型中,从未声明过的是什么

时间:2013-12-28 12:51:04

标签: promela

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保持。为什么?谢谢!

1 个答案:

答案 0 :(得分:0)

永不索赔对模型的每一步都迈出了一步。因此,如果!p下一步将是接受状态(从不声明失败)。但是如果p那么永不声明将需要两个添加步骤才能再次检查p

虽然声明不是“寻找p”,但您可以'隐藏'p的其他一些值。