mirror of
https://github.com/Z3Prover/z3
synced 2025-07-18 18:36:41 +00:00
add lemma.is_empty()
Signed-off-by: Lev Nachmanson <levnach@hotmail.com>
This commit is contained in:
parent
5bda42e104
commit
4e33b44d27
2 changed files with 8 additions and 4 deletions
|
@ -1067,10 +1067,12 @@ lemma_builder::~lemma_builder() {
|
||||||
TRACE(nla_solver, tout << name << " " << (++i) << "\n" << *this; );
|
TRACE(nla_solver, tout << name << " " << (++i) << "\n" << *this; );
|
||||||
}
|
}
|
||||||
|
|
||||||
lemma& lemma_builder::current() const {
|
lemma& lemma_builder::current() {
|
||||||
|
return c.m_lemmas.back();
|
||||||
|
}
|
||||||
|
const lemma& lemma_builder::current() const {
|
||||||
return c.m_lemmas.back();
|
return c.m_lemmas.back();
|
||||||
}
|
}
|
||||||
|
|
||||||
lemma_builder& lemma_builder::operator&=(lp::explanation const& e) {
|
lemma_builder& lemma_builder::operator&=(lp::explanation const& e) {
|
||||||
expl().add_expl(e);
|
expl().add_expl(e);
|
||||||
return *this;
|
return *this;
|
||||||
|
|
|
@ -60,6 +60,7 @@ namespace nla {
|
||||||
lp::explanation& expl() { return m_expl; }
|
lp::explanation& expl() { return m_expl; }
|
||||||
const lp::explanation& expl() const { return m_expl; }
|
const lp::explanation& expl() const { return m_expl; }
|
||||||
bool is_conflict() const { return m_ineqs.empty() && !m_expl.empty(); }
|
bool is_conflict() const { return m_ineqs.empty() && !m_expl.empty(); }
|
||||||
|
bool is_empty() const { return m_ineqs.empty() && m_expl.empty(); }
|
||||||
};
|
};
|
||||||
|
|
||||||
class core;
|
class core;
|
||||||
|
@ -72,12 +73,13 @@ namespace nla {
|
||||||
class lemma_builder {
|
class lemma_builder {
|
||||||
char const* name;
|
char const* name;
|
||||||
core& c;
|
core& c;
|
||||||
lemma& current() const;
|
// the non-const version is private
|
||||||
|
lemma& current();
|
||||||
|
const lemma& current() const;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
lemma_builder(core& c, char const* name);
|
lemma_builder(core& c, char const* name);
|
||||||
~lemma_builder();
|
~lemma_builder();
|
||||||
lemma& operator()() { return current(); }
|
|
||||||
std::ostream& display(std::ostream& out) const;
|
std::ostream& display(std::ostream& out) const;
|
||||||
lemma_builder& operator&=(lp::explanation const& e);
|
lemma_builder& operator&=(lp::explanation const& e);
|
||||||
lemma_builder& operator&=(const monic& m);
|
lemma_builder& operator&=(const monic& m);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue