[CP-SAT] bugfixes

This commit is contained in:
Laurent Perron
2025-12-15 13:42:37 +01:00
committed by Corentin Le Molgat
parent c0b5917c07
commit 4dab47eaa6
8 changed files with 131 additions and 92 deletions

View File

@@ -879,13 +879,15 @@ class SatSolver {
CompactVectorVector<int, Literal> subsuming_clauses_;
CompactVectorVector<int, SatClause*> subsuming_groups_;
struct DelayedNewClause {
// On each conflict, we learn at least one clause, but depending on the cases,
// we can learn more than one.
struct NewClauses {
ClauseId id;
bool is_redundant;
int min_lbd_of_subsumed_clauses;
std::vector<Literal> clause;
};
std::vector<DelayedNewClause> delayed_to_add_;
std::vector<NewClauses> learned_clauses_;
// When true, temporarily disable the deletion of clauses that are not needed
// anymore. This is a hack for TryToMinimizeClause() because we use