3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-23 09:05:31 +00:00

adding options to maxres for experiments, include option to pretty print module parameters in smt2 style

Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
Nikolaj Bjorner 2014-08-30 11:46:29 -07:00
parent b45b2872d8
commit 83a7d1a658
14 changed files with 249 additions and 131 deletions

View file

@ -31,6 +31,7 @@ namespace sat {
void mus::reset() {
m_core.reset();
m_mus.reset();
m_model.reset();
}
void mus::set_core() {
@ -88,6 +89,9 @@ namespace sat {
if (!core.empty()) {
// mr(); // TBD: measure
}
if (m_model.empty()) {
m_model.append(s.m_model);
}
break;
}
case l_false:

View file

@ -24,6 +24,8 @@ namespace sat {
literal_vector m_core;
literal_vector m_mus;
bool m_is_active;
model m_model; // model obtained during minimal unsat core
solver& s;
public:
@ -31,6 +33,7 @@ namespace sat {
~mus();
lbool operator()();
bool is_active() const { return m_is_active; }
model const& get_model() const { return m_model; }
private:
lbool mus2();
void mr();

View file

@ -1736,6 +1736,8 @@ namespace sat {
// initial experiment suggests it has no effect.
m_mus(); // ignore return value on cancelation.
m_model.reset();
m_model.append(m_mus.get_model());
}
}