mirror of
https://github.com/Z3Prover/z3
synced 2025-04-28 11:25:51 +00:00
na
Signed-off-by: Nikolaj Bjorner <nbjorner@microsoft.com>
This commit is contained in:
parent
4fad0385de
commit
19099244c4
5 changed files with 49 additions and 14 deletions
|
@ -927,7 +927,7 @@ namespace dd {
|
|||
SASSERT(a.size() == b.size());
|
||||
bdd lt = mk_false();
|
||||
bdd eq = mk_true();
|
||||
for (unsigned i = a.size(); i-- > 0; ) {
|
||||
for (unsigned i = a.size(); i-- > 0 && !eq.is_false(); ) {
|
||||
lt |= eq && (!a[i] && b[i]);
|
||||
eq &= !(a[i] ^ b[i]);
|
||||
}
|
||||
|
@ -1179,4 +1179,19 @@ namespace dd {
|
|||
m_bits[size() - 1] = m->mk_false();
|
||||
}
|
||||
|
||||
bdd bddv::all0() const {
|
||||
bdd r = m->mk_true();
|
||||
for (unsigned i = size(); i-- > 0; )
|
||||
r &= !m_bits[i];
|
||||
return r;
|
||||
}
|
||||
|
||||
bdd bddv::all1() const {
|
||||
bdd r = m->mk_true();
|
||||
for (unsigned i = size(); i-- > 0; )
|
||||
r &= m_bits[i];
|
||||
return r;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -338,6 +338,9 @@ namespace dd {
|
|||
bdd slt(bddv const& other) const { return m->mk_slt(*this, other); }
|
||||
bdd sgt(bddv const& other) const { return m->mk_sgt(*this, other); }
|
||||
|
||||
bdd all0() const;
|
||||
bdd all1() const;
|
||||
|
||||
bdd operator==(bddv const& other) const { return m->mk_eq(*this, other); }
|
||||
bdd operator==(rational const& other) const { return m->mk_eq(*this, other); }
|
||||
bdd operator!=(bddv const& other) const { return !m->mk_eq(*this, other); }
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue