簡體   English   中英

在合金中顯示反例

[英]show counterexample in Alloy

也許這是一個愚蠢的問題,但我正在嘗試使用 Allow 來測試 FOL 公式的等價性。 在反模型的情況下,有什么方法可以展示它們嗎? 例如

sig Value {}

pred p [x: Value] {
    // ...
}

assert bla {
  (all x: Value | p [x]) iff (some x: Value | p [x]) 
}

// run p for 2 Value
check bla for 5 Value

它說

Executing "Check bla for 5 Value"
   Solver=minisat(jni) Bitwidth=0 MaxSeq=0 SkolemDepth=1 Symmetry=20
   16 vars. 5 primary vars. 15 clauses. 1ms.
   Counterexample found. Assertion is invalid. 2ms.

但是當我點擊Counterexample時,它會打開一個沒有實例的 window。

我為您運行了您的 model。 有一個例子。 請注意,它顯示“由於您的主題設置,每個原子都被隱藏。請單擊主題並調整您的設置”。 這意味着正在顯示一個實例,並且如果它包含任何原子,則由於自定義可視化的主題,它們不會顯示。 在這種情況下,這是因為未連接的整數未顯示在默認主題中。 您可以通過以不同方式查看實例(任何其他選項 - Txt、Table、Tree)或更改主題來查看實例。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM