mirror of
https://github.com/Z3Prover/z3
synced 2025-04-12 12:08:18 +00:00
This commit is contained in:
parent
18d1b368d1
commit
d174f87c5e
|
@ -19,9 +19,10 @@ Notes:
|
||||||
--*/
|
--*/
|
||||||
#include "math/subpaving/tactic/expr2subpaving.h"
|
#include "math/subpaving/tactic/expr2subpaving.h"
|
||||||
#include "ast/expr2var.h"
|
#include "ast/expr2var.h"
|
||||||
|
#include "ast/arith_decl_plugin.h"
|
||||||
|
#include "ast/ast_pp.h"
|
||||||
#include "util/ref_util.h"
|
#include "util/ref_util.h"
|
||||||
#include "util/z3_exception.h"
|
#include "util/z3_exception.h"
|
||||||
#include "ast/arith_decl_plugin.h"
|
|
||||||
#include "util/scoped_numeral_buffer.h"
|
#include "util/scoped_numeral_buffer.h"
|
||||||
#include "util/common_msgs.h"
|
#include "util/common_msgs.h"
|
||||||
|
|
||||||
|
@ -309,6 +310,10 @@ struct expr2subpaving::imp {
|
||||||
case OP_MOD:
|
case OP_MOD:
|
||||||
case OP_REM:
|
case OP_REM:
|
||||||
case OP_IRRATIONAL_ALGEBRAIC_NUM:
|
case OP_IRRATIONAL_ALGEBRAIC_NUM:
|
||||||
|
case OP_DIV0:
|
||||||
|
case OP_REM0:
|
||||||
|
case OP_MOD0:
|
||||||
|
case OP_IDIV0:
|
||||||
throw default_exception("you must apply arithmetic purifier before internalizing expressions into the subpaving module.");
|
throw default_exception("you must apply arithmetic purifier before internalizing expressions into the subpaving module.");
|
||||||
case OP_SIN:
|
case OP_SIN:
|
||||||
case OP_COS:
|
case OP_COS:
|
||||||
|
@ -325,6 +330,7 @@ struct expr2subpaving::imp {
|
||||||
// TODO
|
// TODO
|
||||||
throw default_exception("transcendental and hyperbolic functions are not supported yet.");
|
throw default_exception("transcendental and hyperbolic functions are not supported yet.");
|
||||||
default:
|
default:
|
||||||
|
throw default_exception("unhandled arithmetic operator in subpaving");
|
||||||
UNREACHABLE();
|
UNREACHABLE();
|
||||||
}
|
}
|
||||||
return subpaving::null_var;
|
return subpaving::null_var;
|
||||||
|
|
Loading…
Reference in a new issue