2014-03-29 51 views
2

我最近與合金工作。 我可以這樣說:合金:事實等等關於詮釋

fact{ 
all i: Int | i >= 0 
} 

我想說:所有整數合金的用途應該是積極的。 合金不失敗,但也不給我實例。

問候

回答

2

你目前不能說這個。你可以指定整數的唯一範圍(告訴Alloy整數是「使用」)是位寬(例如4 Int);合金總是使用該位寬內的所有整數(例如,對於4的位寬,使用的整數是-8, ..., 7)。

如果你在你的模型int類型的字段,可以使用一個事實(像你上面說的)來限制它的值:

sig S { i: Int } 
fact { all s: S | s.i >= 0 } 
+0

好的,謝謝您詳細的解答。 –

+0

但我有一個小問題: 我想說:一個int介於0和有點。 例如我有這樣的簽名: SIG A { ID:整數 } 我用這個事實: 其實{ 全部:A | a.id> 0 } 其實全部a:A | a.id <20 } 我沒有得到任何實例。我究竟做錯了什麼? –

+0

發佈整個模型 –