3
我剛剛將z3從4.1升級到4.3.1,並且似乎smtlib2輸入已更改: 現在,函數/常量聲明不會被pop語句刪除。z3與SMTlib2輸入
以下是可以在z3 4.1(和其他SMT求解器...)下正常工作的SMTlib2輸入,但是返回的錯誤是z3 4.3.1:(錯誤「第19行第25列:無效聲明,常量'bs_2 「(蒙山給定的簽名)已聲明」)
(set-option :produce-models true)
(set-option :produce-unsat-cores true)
(set-option :interactive-mode true)
(set-option :print-success false)
(push 1)
(declare-fun bs_1() Bool)
(push 1)
(declare-fun bs_2() Bool)
(assert (and bs_1 (not bs_2)))
(check-sat)
(pop 1)
(push 1)
(declare-fun bs_2() Bool)
(assert (and bs_1 (not bs_2)))
(check-sat)
(pop 1)
(pop 1)
(exit)
刪除最後BS_2宣言正常工作與Z3 4.3.1,而不是Z3 4.1。 我使用push/pop錯誤嗎?