3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-07-19 19:02:02 +00:00

Merge branch 'cade24' into unstable

This commit is contained in:
Leonardo de Moura 2013-01-21 08:27:32 -08:00
commit a3eb6d121f

View file

@ -4236,7 +4236,14 @@ namespace realclosure {
bool refine_algebraic_interval(algebraic * a, unsigned prec) { bool refine_algebraic_interval(algebraic * a, unsigned prec) {
save_interval_if_too_small(a, prec); save_interval_if_too_small(a, prec);
if (a->sdt() != 0) { if (a->sdt() != 0) {
// we can't bisect the interval, since it contains more than one root. // We don't bisect the interval, since it contains more than one root.
// To bisect this kind of interval we would have to use Tarski queries.
return false;
}
else {
mpbqi & a_i = a->interval();
if (a_i.lower_is_inf() || a_i.upper_is_inf()) {
// we can't bisect the infinite intervals
return false; return false;
} }
else { else {
@ -4277,6 +4284,7 @@ namespace realclosure {
return true; return true;
} }
} }
}
bool refine_algebraic_interval(rational_function_value * v, unsigned prec) { bool refine_algebraic_interval(rational_function_value * v, unsigned prec) {
SASSERT(v->ext()->is_algebraic()); SASSERT(v->ext()->is_algebraic());
@ -5797,7 +5805,7 @@ namespace realclosure {
struct display_free_var_proc { struct display_free_var_proc {
void operator()(std::ostream & out, bool compact) const { void operator()(std::ostream & out, bool compact) const {
out << "#"; out << "x";
} }
}; };