【发布时间】:2014-03-16 15:12:17
【问题描述】:
我有一个看起来像这样的合金模型:
open util/ordering[Time] as timeOrder
sig Time {
database: one Database
}
sig Database {}
{
#Database>1
some database.this
}
pred show {}
run show
我想使用合金分析仪来查看每次系统的状态。我假设如果我在“时间”上进行投影,那么我将能够看到这一点。但是,如果我随着时间的推移进行投影,当我查看 Time0 时,它会显示与其他时间关联的数据库。
具体来说,我有一个看起来像这样的跟踪:
如果我随着时间的推移进行投影,我会假设 Time0 只会显示 Database1,而 Time1 只会显示 Database0。但是,当我对 Time 进行投影并查看 Time0 时,它同时显示了 Database0 和 Database1。它确实用 (database) 注释 Database1,但我真正想要的是它只在此视图中显示 Database1。
显然,投影并没有达到我的预期。为什么不?有什么方法可以查看与我正在投影的元素相关联的元素吗?
【问题讨论】:
标签: alloy