mirror of
https://github.com/Z3Prover/z3
synced 2025-04-23 17:15:31 +00:00
Adjusted rlimit increments in theory_arith to avoid non-termination issues
This commit is contained in:
parent
ffbf19d944
commit
c395516058
4 changed files with 8 additions and 4 deletions
|
@ -176,7 +176,7 @@ public:
|
|||
|
||||
static bool is_small(mpz const & a) { return mpz_manager<SYNCH>::is_small(a); }
|
||||
|
||||
static bool is_small(mpq const & a) { return is_small(a.m_num) && is_small(a.m_den); }
|
||||
static bool is_small(mpq const & a) { return is_small(a.m_num) && is_small(a.m_den); }
|
||||
|
||||
static mpq mk_q(int v) { return mpq(v); }
|
||||
|
||||
|
@ -786,6 +786,8 @@ public:
|
|||
|
||||
unsigned bitsize(mpz const & a) { return mpz_manager<SYNCH>::bitsize(a); }
|
||||
unsigned bitsize(mpq const & a) { return is_int(a) ? bitsize(a.m_num) : bitsize(a.m_num) + bitsize(a.m_den); }
|
||||
unsigned storage_size(mpz const & a) { return mpz_manager<SYNCH>::size_info(a); }
|
||||
unsigned storage_size(mpq const & a) { return mpz_manager<SYNCH>::size_info(a.m_num) + mpz_manager<SYNCH>::size_info(a.m_den); }
|
||||
|
||||
/**
|
||||
\brief Return true if the number is a perfect square, and
|
||||
|
|
|
@ -316,11 +316,11 @@ class mpz_manager {
|
|||
void big_rem(mpz const & a, mpz const & b, mpz & c);
|
||||
|
||||
int big_compare(mpz const & a, mpz const & b);
|
||||
|
||||
|
||||
public:
|
||||
unsigned size_info(mpz const & a);
|
||||
struct sz_lt;
|
||||
|
||||
public:
|
||||
static bool precise() { return true; }
|
||||
static bool field() { return false; }
|
||||
|
||||
|
|
|
@ -68,6 +68,8 @@ public:
|
|||
mpq const & to_mpq() const { return m_val; }
|
||||
|
||||
unsigned bitsize() const { return m().bitsize(m_val); }
|
||||
|
||||
unsigned storage_size() const { return m().storage_size(m_val); }
|
||||
|
||||
void reset() { m().reset(m_val); }
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue