扩展签名时出现两次实例

  • 本文关键字:两次 实例 扩展 alloy
  • 更新时间 :
  • 英文 :


使用Alloy(V4.2或V5)执行以下示例时,我会在解决方案空间中获得两次出现的实例。

sig A {}
sig B extends A { }
pred P { }
run P for 2

生成的实例:

1:A={}, B={}
2:A={A$0}, B={}
3:A={B$0}, B={B$0}
4:A={A$0, B$0}, B={B$0}
5:A={A$0, A$1}, B={}
6:A={A$0, B$0}, B={B$0} // same as instance 4
7:A={B$0, B$1}, B={B$0, B$1}

有什么建议?

尝试为每个签名指定不同的范围例如:

运行2 a,4 b

最新更新