“有一个值的值为8”的ltl表达是什么?
-
28-09-2020 - |
题
基本上我有一个程序,它在每次迭代中将变量增加1,并且一旦Y变为8(即MOD 8),就会将其重置为0。
是一个非常简单的例子,但它仍然是错误的,因为我无法澄清我的ltl-arefice对属性的ltl-arefice是正确的,所以有一个值为y的值,其下一个值为8“。为此,我想出了:
$$ fx(y \ doteq 8)$$
这意味着“未来的某个地方下一个值为8”。
是我的问题的正确的ltl公式(即使我的应用程序当然是无效的)?
解决方案
您的问题中缺少的重要事项是您绘制您的程序的方式,具体而言,您允许的原子命令是什么。
如果您的原子命题是“y= 0”,...,“y= 8”,并且相应地建模过渡系统,则公式 $ fx y= 8$ 意味着最终,下一个位置会有“y= 8”。请注意,这相当于公式 $ xf y= 8 $ ,它基本上表示y= 8在第一位置后的某个时间。
但是,您将您的要求扣除为“有一个值的值,其下一个值为8”,并不清楚这意味着什么。什么是“y的下一个值”?LTL不识别为实体,只有上述命题。因此,您无法真正讨论LTL中变量的值,而无需首先将所有可能的值添加为命题。不隶属于 cs.stackexchange