问题描述
和 SMTLIB 中的 define
一样吗?或者是我自己定义函数的唯一方法?如果 z3 有办法通过它的 python 绑定来做到这一点,这也适用于我。
解决方法
在 SMTLib 中,iff
只是布尔值上的 =
:
(declare-fun a () Bool)
(declare-fun b () Bool)
(assert (= a b))
在 z3py 中,您可以使用常规的相等比较:
from z3 import *
a,b = Bools('a b')
s = Solver()
s.add(a == b)