2つのSMT問題インスタンスがあります。最初はここにあります:
http://gist.github.com/1232766
Z3は、私のそれほど優れていないマシンで約2分でこの問題のモデルを返します。これは素晴らしいです。私もこれを持っています:
http://gist.github.com/1232769
Z3を完了せずに、この問題でz3を一晩実行しました。これらのファイルの内容を確認すると、最初のインスタンスによって返されたモデルを「拒否」する追加のアサーションがあることを除いて、2番目のファイルが最初のファイルと同じであることがわかります。(私が何を意味するかを確認するために、それらの間で「差分」を行うことができます。)この問題には複数の満足のいくモデルがあることを偶然知っており、z3を使用してすべての満足のいくモデルを見つけようとしています。
これは完全に予想されることかもしれませんが、2番目の問題が最初の問題と比較してZ3にとってはるかに難しい問題である理由を知りたいと思いました。Z3がより簡単な時間を持てるように、2番目の問題を定式化するためのより良い方法はありますか?
ありがとう..