mirror of
https://github.com/Z3Prover/z3
synced 2025-06-22 22:03:39 +00:00
Sketch a skeleton of Difference Logic optimizer
This commit is contained in:
parent
36d7948399
commit
6919f335a1
4 changed files with 89 additions and 6 deletions
|
@ -2,6 +2,7 @@
|
|||
#include"opt_solver.h"
|
||||
#include"smt_context.h"
|
||||
#include"theory_arith.h"
|
||||
#include"theory_diff_logic.h"
|
||||
|
||||
namespace opt {
|
||||
|
||||
|
@ -55,6 +56,12 @@ namespace opt {
|
|||
else if (typeid(smt::theory_i_arith) == typeid(*arith_theory)) {
|
||||
return dynamic_cast<smt::theory_i_arith&>(*arith_theory);
|
||||
}
|
||||
else if (typeid(smt::theory_rdl&) == typeid(*arith_theory)) {
|
||||
return dynamic_cast<smt::theory_rdl&>(*arith_theory);
|
||||
}
|
||||
else if (typeid(smt::theory_idl&) == typeid(*arith_theory)) {
|
||||
return dynamic_cast<smt::theory_idl&>(*arith_theory);
|
||||
}
|
||||
else {
|
||||
UNREACHABLE();
|
||||
return dynamic_cast<smt::theory_mi_arith&>(*arith_theory);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue