Uppaal 验证未按预期工作
Uppaal Verification not working as intended
所以我正在尝试 运行 对我的模型进行非常简单的验证,但是我收到一条消息说 属性 不满意。
我正在尝试验证在我的模型中,如果 Person(0) 出现 In
,Person(0) 最终会出现 Out
。
人(0).进 --> 人(0).出
虽然我在模拟器中手动遍历了所有的可能性,但我无法得到任何验证的反例(理论上应该满足这个条件)。
我使用的语法是否有问题,或者 UPPAAL 是否存在此类验证的已知问题?
您可以通过选中选项 -> 诊断跟踪 -> 某些来将反例加载到模拟器中。
对于这个特定的查询(导致 属性),一个常见的问题是系统可能永远停留在某个位置(或循环多次转换),这基本上会阻止达到目标。
计数器示例跟踪的循环部分以红色突出显示。
如果循环中只有一个位置,则 observe/understand 可能很难。模拟器仍然允许用户向跟踪添加转换,这是合法的,并且可能会给人留下系统最终会达到目标的印象,但跟踪的要点是系统有一种方法无法达到,那就是停止(如果没有不变量,也允许停止。
您可以在这些位置添加时间不变量,以避免无限循环和永远等待。
所以我正在尝试 运行 对我的模型进行非常简单的验证,但是我收到一条消息说 属性 不满意。
我正在尝试验证在我的模型中,如果 Person(0) 出现 In
,Person(0) 最终会出现 Out
。
人(0).进 --> 人(0).出
虽然我在模拟器中手动遍历了所有的可能性,但我无法得到任何验证的反例(理论上应该满足这个条件)。
我使用的语法是否有问题,或者 UPPAAL 是否存在此类验证的已知问题?
您可以通过选中选项 -> 诊断跟踪 -> 某些来将反例加载到模拟器中。 对于这个特定的查询(导致 属性),一个常见的问题是系统可能永远停留在某个位置(或循环多次转换),这基本上会阻止达到目标。 计数器示例跟踪的循环部分以红色突出显示。 如果循环中只有一个位置,则 observe/understand 可能很难。模拟器仍然允许用户向跟踪添加转换,这是合法的,并且可能会给人留下系统最终会达到目标的印象,但跟踪的要点是系统有一种方法无法达到,那就是停止(如果没有不变量,也允许停止。
您可以在这些位置添加时间不变量,以避免无限循环和永远等待。