在调试 UNSAT 查询时,我注意到查询状态有一个有趣的差异。查询结构为:
assert(...)
(push) ; commenting any of these two calls
(check-sat) ; makes the whole query UNSAT, otherwise it is SAT
assert(...)
(check-sat) ; SAT or UNSAT depending on existence of previous call
(exit)
查询中没有pop
调用。触发此行为的查询在此处。
想法为什么?
注意:我实际上并不需要增量,它仅用于调试目的。Z3版本是3.2。