我想知道如何在NuSMV模型检查器中计算CTL / LTL属性检查的执行时间。
... 谢谢
Blockquote
....
....
答案 0 :(得分:1)
一种选择是使用命令print_usage
。但是,如果您的目的是出于某些科学目的而收集计时统计信息,则可能不够精确。
示例:
NuSMV > reset
NuSMV > read_model -i some_model.smv
NuSMV > go
NuSMV > print_usage
...
User time 0.268 seconds
System time 0.043 seconds
...
NuSMV > check_property
-- specification AG (AF state = MOVE) is false
-- as demonstrated by the following execution sequence
...
NuSMV > print_usage
...
User time 0.494 seconds
System time 0.051 seconds
...
NuSMV > quit
最终时间与开始时间之间的差额可以粗略地衡量检查属性所需的时间。
在实践中,此答案中描述的方法对于要求一定精度的自动化任务可能并不十分有效。幸运的是,NuSMV
的源代码是公开可用的,因此您实际上可以对其进行修改,以便它计算出每个被检查属性所花费的确切时间。这可能需要一些c++
开发技能。