mirror of
https://github.com/Z3Prover/z3
synced 2025-04-23 09:05:31 +00:00
improve parser error message over API, streamline names of statistics for arithmetic solver
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
c44dd01292
commit
2bd29548da
8 changed files with 54 additions and 25 deletions
|
@ -350,8 +350,10 @@ namespace opt {
|
|||
for (unsigned i = 0; i < m_soft_constraints.size(); ++i) {
|
||||
expr* e = m_soft_constraints[i];
|
||||
bool is_not = m.is_not(e, e);
|
||||
out << mk_pp(e, m)
|
||||
<< ((is_not != get_assignment(i))?" |-> true\n":" |-> false\n");
|
||||
out << m_weights[i] << ": " << mk_pp(e, m)
|
||||
<< ((is_not != get_assignment(i))?" |-> true ":" |-> false ")
|
||||
<< "\n";
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -792,10 +792,14 @@ namespace opt {
|
|||
arg = mk_not(m, arg);
|
||||
offset -= weight;
|
||||
}
|
||||
if (m.is_true(arg) || weight.is_zero()) {
|
||||
if (m.is_true(arg)) {
|
||||
IF_VERBOSE(1, verbose_stream() << weight << ": " << mk_pp(m_objectives[index].m_terms[i].get(), m) << " |-> true\n";);
|
||||
}
|
||||
else if (weight.is_zero()) {
|
||||
// skip
|
||||
}
|
||||
else if (m.is_false(arg)) {
|
||||
IF_VERBOSE(1, verbose_stream() << weight << ": " << mk_pp(m_objectives[index].m_terms[i].get(), m) << " |-> false\n";);
|
||||
offset += weight;
|
||||
}
|
||||
else {
|
||||
|
|
|
@ -47,6 +47,7 @@ namespace opt {
|
|||
m_first(true),
|
||||
m_was_unknown(false) {
|
||||
m_params.updt_params(p);
|
||||
std::cout << "Case split strategy " << m_params.m_case_split_strategy << "\n";
|
||||
if (m_params.m_case_split_strategy == CS_ACTIVITY_DELAY_NEW) {
|
||||
m_params.m_relevancy_lvl = 0;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue