3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-15 13:28:47 +00:00

Merge pull request #244 from NikolajBjorner/master

fix for fixed size rational difference logic
This commit is contained in:
Nikolaj Bjorner 2015-10-13 09:46:01 -07:00
commit 0a75ba0322

View file

@ -399,7 +399,6 @@ namespace smt {
}; };
struct sidl_ext { struct sidl_ext {
// TODO: It doesn't need to be a rational, but a bignum integer.
static const bool m_int_theory = true; static const bool m_int_theory = true;
typedef s_integer numeral; typedef s_integer numeral;
typedef s_integer fin_numeral; typedef s_integer fin_numeral;
@ -415,13 +414,11 @@ namespace smt {
rdl_ext() : m_epsilon(rational(), true) {} rdl_ext() : m_epsilon(rational(), true) {}
}; };
struct srdl_ext { //
static const bool m_int_theory = false; // there is no s_rational class, so
typedef inf_s_integer numeral; // instead we use multi-precision rationals.
typedef s_integer fin_numeral; //
numeral m_epsilon; struct srdl_ext : public rdl_ext {};
srdl_ext() : m_epsilon(s_integer(0),true) {}
};
typedef theory_diff_logic<idl_ext> theory_idl; typedef theory_diff_logic<idl_ext> theory_idl;
typedef theory_diff_logic<sidl_ext> theory_fidl; typedef theory_diff_logic<sidl_ext> theory_fidl;