Alloy - 计算其他原子使用的原子数
Alloy - Count atoms used by other atoms
我正在尝试注意原子与其他原子之间关系的变化。使用以下签名:
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
但是,有没有办法查看第二个Dictionary
原子使用的Definition
原子数是否增加了?我一直在 Alloy Evaluator 中使用反复试验来尝试为此找到一个值,但结果很短。
谢谢!
像这样?
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
我正在尝试注意原子与其他原子之间关系的变化。使用以下签名:
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
但是,有没有办法查看第二个Dictionary
原子使用的Definition
原子数是否增加了?我一直在 Alloy Evaluator 中使用反复试验来尝试为此找到一个值,但结果很短。
谢谢!
像这样?
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