0

我试图注意到原子与其他原子的关系发生了变化。使用以下签名:

    sig Word, Definition{}

    sig Dictionary {
        def: Word -> lone Definition
    }

然后,我使用谓词来展示当您Dictionary通过拥有另一个Dictionary相同但具有更多关系的新关系向 a 添加新关系时会发生什么。

    pred addRelation [d,d':Dictionary,w:Word,f:Definition] { 
        d'.word = d.word + w -> f 
    }

要查看Word第一个 Dictionary 使用的原子数是否增加,我只能使用以下方法显示发生这种情况的实例:

    #d'.def.Definition > #d.def.Definition

但是,有没有办法查看Definition第二个原子使用的Dictionary原子数是否增加了?我一直在 Alloy Evaluator 中使用反复试验来尝试为此找到一个值,但结果不足。

谢谢!

4

1 回答 1

1

像这样?

sig Word, Definition{}

sig Dictionary {
    def: Word -> lone Definition
}

pred addRelation [d,d':Dictionary,w:Word,f:Definition] { 
    d'.def = d.def + w -> f 
    #d'.def[Word] > #d.def[Word]
}
run addRelation
于 2017-03-24T14:48:12.353 回答