在我的程序中,当我调用z3 :: solver.push()时会引发此异常,当我在该语句之前std :: cout求解器时,我得到:
(declare-fun lv_f_0 () (_ FloatingPoint 8 24))
(assert true)
(assert (fp.eq (fp.mul roundNearestTiesToEven
lv_f_0
(fp #b0 #x69 #b00000000000000000000000))
(fp #b0 #x01 #b00000000000000000000000)))
但是,如果我使用二进制文件进行检查,它将不会抛出任何异常,如果我编写一个将产生上述公式的测试程序,则也不会发生异常。我怎么能调试这个问题的真正原因,因为我的原始程序很复杂。
更新 如果将MODEL设置为true并将PROOF设置为true
,则会触发该错误