2017-03-23 26 views
0

我正在嘗試注意與其他原子的原子關係的變化。使用下面的簽名:合金 - 其他原子使用的計數原子

sig Word, Definition{} 

    sig Dictionary { 
     def: Word -> lone Definition 
    } 

然後我用一個謂語,顯示當您有另一個Dictionary這是相同的,但多一個關係添加新關係到Dictionary會發生什麼。

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

要查看是否由第一字典增加使用Word原子的數目,其中發生這種情況使用我可以只顯示實例:

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

然而,有一種方法,以查看是否在數Definition原子使用的原子第二個Dictionary增加了嗎?我一直在使用合金評估器中的試驗和錯誤來嘗試找到一個值,但總結得不多。

謝謝!

回答

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 
+0

完美的作品,謝謝! – LEJ