3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-05-01 21:05:52 +00:00

Polysat updates (#5524)

* Move boolean resolution into conflict_core

* Move store() into dedup functionality

* comments

* Call gc()

* Add inference_engine sketch
This commit is contained in:
Jakob Rath 2021-08-31 17:16:45 +02:00 committed by GitHub
parent d1118cb178
commit dde8fb0c37
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
8 changed files with 172 additions and 92 deletions

View file

@ -21,6 +21,7 @@ namespace polysat {
vector<signed_constraint> m_constraints;
/** Storage for new constraints that may not yet have a boolean variable yet */
// TODO: not necessary anymore, if we keep constraint_manager::gc()
ptr_vector<constraint> m_storage;
// If this is not null_var, the conflict was due to empty viable set for this variable.
@ -67,6 +68,11 @@ namespace polysat {
m_storage.reset();
}
/** Perform boolean resolution with the clause upon variable 'var'.
* Precondition: core/clause contain complementary 'var'-literals.
*/
void resolve(sat::bool_var var, clause const& cl);
std::ostream& display(std::ostream& out) const;
};