mirror of
https://github.com/Z3Prover/z3
synced 2025-05-03 22:05:45 +00:00
Polysat: conflict resolution wip (#5529)
* conflict_core doesn't need gc() anymore * update comments, ensure_bvar for new constraints * Make sure constraints can only be created through constraint_manager * fix constraint::display if no boolean variable is assigned * Move clause into separate file * Add conflict_core binary resolution * conflict_core additions * reactivate conflict resolution outer loop * wip * seems commented includes break CI build
This commit is contained in:
parent
8b374c3745
commit
dc547510db
16 changed files with 423 additions and 335 deletions
|
@ -18,9 +18,11 @@ Author:
|
|||
namespace polysat {
|
||||
|
||||
class ule_constraint final : public constraint {
|
||||
friend class constraint_manager;
|
||||
|
||||
pdd m_lhs;
|
||||
pdd m_rhs;
|
||||
public:
|
||||
|
||||
ule_constraint(constraint_manager& m, unsigned lvl, pdd const& l, pdd const& r):
|
||||
constraint(m, lvl, ckind_t::ule_t), m_lhs(l), m_rhs(r) {
|
||||
m_vars.append(l.free_vars());
|
||||
|
@ -28,6 +30,8 @@ namespace polysat {
|
|||
if (!m_vars.contains(v))
|
||||
m_vars.push_back(v);
|
||||
}
|
||||
|
||||
public:
|
||||
~ule_constraint() override {}
|
||||
pdd const& lhs() const { return m_lhs; }
|
||||
pdd const& rhs() const { return m_rhs; }
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue