据我了解,Z3在遇到量化的线性实数/有理算术时,应用了Bjørner,IJCAR 2010中描述的量词消除形式以及Bjørner和Monniaux最近的工作(qe_sat_tactic.cpp
所说的是,至少)。
我想知道
如果公式是多线性的,它是否仍然有效,在某种意义上“常量”是象征性的。例如。 ∀x,ax≤b⇒ax≤0可以通过分离情况a< 0,a = 0和a> 0来处理。这可以使用Weispfenning的虚拟替换方法,但我不知道最终在Z3中实现了什么(即,它是实现了一般方法还是限制为常量系数的方法)。
在Z3中是否可以输出消除结果而不是仅仅求解一个模型。可能有Z3策略这样做,但我不知道应该如何请求。
在Z3中是否可以执行如上所述的消除,然后使用新的非线性求解器来获得模型。同样,一连串的策略可能会成功,但我不知道应该如何请求它。
感谢。
答案 0 :(得分:0)
经过长途旅行(包括我在会议上遇到大卫的旅行),这里有一个简短的摘要来回答他们提出的问题。