При отладке запроса UNSAT я заметил интересную разницу в состоянии запроса. Структура запроса:Почему результат запроса изменяется, если комментарий является промежуточным вызовом `(check-sat)`?
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
вызовов в запросе. Запрос, вызывающий это поведение, - here.
Идеи почему?
Примечание: мне не нужна инкрементность, она предназначена только для отладки. Версия Z3 - 3.2.