0
我正在写一个简单的合金代码,但我不明白我怎么能说大多数一个A与p.D(所以大多数将是一个或零)关联。所以我写了下面的代码,但断言呈现没有反例与P1没有D的实例。你能帮我怎么定义我的事实在AT MOST一个实例,我可以看到一个计数器例如是p具有用于其D.合金 - 孤立实例
abstract sig A {}
sig A1,A2,A3 extends A{}
abstract sig P {}
sig P1 extends P {D: A}
fact
{
all p: P1 | lone (p.D & A)
}
assert asr
{no p: P1 | no (p.D & A)}
check asr for 5
是的,你是对的我忘记了默认的多重性是“一”,我同意你关于代码中的冗余,但它不会影响结果。 – user1021110