mirror of
https://github.com/Z3Prover/z3
synced 2025-06-23 14:23:40 +00:00
fix fix
This commit is contained in:
parent
f09d37f93f
commit
50eb43500e
1 changed files with 4 additions and 5 deletions
|
@ -916,17 +916,16 @@ namespace polysat {
|
||||||
// exactly one node has a value
|
// exactly one node has a value
|
||||||
rational const val = get_value(v);
|
rational const val = get_value(v);
|
||||||
for (enode* n : euf::enode_class(other)) {
|
for (enode* n : euf::enode_class(other)) {
|
||||||
pvar const var = slice2var(n);
|
|
||||||
if (var != null_var && m_solver.is_assigned(var))
|
|
||||||
continue; // TODO: could try to detect possible conflicts by checking value
|
|
||||||
|
|
||||||
enode* const vn = get_value_node(n);
|
enode* const vn = get_value_node(n);
|
||||||
if (!vn)
|
if (!vn)
|
||||||
set_value_node(n, v);
|
set_value_node(n, v);
|
||||||
|
|
||||||
|
pvar const var = slice2var(n);
|
||||||
if (var == null_var)
|
if (var == null_var)
|
||||||
continue;
|
continue;
|
||||||
LOG("on_merge: v" << v << " := " << val);
|
if (m_solver.is_assigned(var))
|
||||||
|
continue;
|
||||||
|
LOG("on_merge: v" << var << " := " << val);
|
||||||
m_solver.assign_propagate_by_slicing(var, val);
|
m_solver.assign_propagate_by_slicing(var, val);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue