3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-29 20:05:51 +00:00

Recognize x != k among new literals in lemma

This commit is contained in:
Jakob Rath 2022-09-28 15:16:05 +02:00
parent 6715058876
commit 7be82a36f2
4 changed files with 64 additions and 2 deletions

View file

@ -237,7 +237,8 @@ namespace polysat {
}
void negate() { m_positive = !m_positive; }
signed_constraint operator~() const { return {get(), !is_positive()}; }
signed_constraint negated() const { return {get(), !is_positive()}; }
signed_constraint operator~() const { return negated(); }
bool is_positive() const { return m_positive; }
bool is_negative() const { return !is_positive(); }
@ -268,7 +269,9 @@ namespace polysat {
constraint const& operator*() const { return *m_constraint; }
bool is_eq() const;
bool is_diseq() const { return negated().is_eq(); }
pdd const& eq() const;
pdd const& diseq() const { return negated().eq(); }
signed_constraint& operator=(std::nullptr_t) { m_constraint = nullptr; return *this; }