【发布时间】:2013-01-25 14:55:16
【问题描述】:
这个问题与this one 几乎相同,但该解决方案对我不起作用。抱歉,我想对该答案发表评论,而不是提出新问题,但我没有足够的声誉......
我正在建模a simple state machine for an elevator。有两层楼和两个按钮Up和Down。我已经将转换建模为谓词 Action x Elevator x Elevator(Elevator = State),这样 T(a,s,s') 成立,如果动作 a 可能会导致从 s 到 s' 的转换,其中一个动作正在推动 Up 或 向下按钮。问题的可满足性并不取决于按下按钮的人,但我希望 Z3 对函数 subject : Action -> Person 进行一些解释。
我们的目标是找到状态机的k-trace,这可能有助于理解电梯的行为。
我尝试了不同的选项组合,包括auto-config=false 和model-completion=true,但没有成功。我也尝试强制完成模型,询问 (subject Action0) 的值,但 Z3 仍然没有为 subject 分配解释。
我的 Z3 版本是 4.3.1,在 Linux amd64 上运行。
【问题讨论】:
标签: z3