src/subsume.cpp
// This file implements a global forward subsumption algorithm, which is run
// frequently during search.  It works both on original (irredundant)
// clauses and on 'sticky' learned clauses which are small enough or have a
// small enough glue to be otherwise kept forever (see 'opts.keepsize' and
// 'opts.keeglue', e.g., a redundant clause is not extended and thus kept if
// its size is smaller equal to 'opts.keepsize' or its glue is smaller equal
// than 'opts.keepsize').  Note, that 'forward' means that the clause from
// which the subsumption check is started is checked for being subsumed by
// other (smaller or equal size) clauses.  Since 'vivification' is an
// extended version of subsume, more powerful, but also slower, we schedule
// 'vivify' right after 'subsume', which in contrast to 'subsume' is not run
// until to completion (even though it only works on irredundant clauses).
This file implements a global forward subsumption algorithm, which is run
frequently during search.
This file implements a global forward subsumption algorithm which is run frequently during search .
bool Internal::subsuming () {
  if (!opts.simplify) return false;
  if (!opts.subsume && !opts.vivify) return false;
  if (opts.reduce &&
      stats.conflicts != lim.conflicts_at_last_reduce) return false;
  return stats.conflicts >= lim.subsume;
}
bool Internal :: subsuming ( ) { if ( ! opts . simplify ) return false ; if ( ! opts . subsume && ! opts . vivify ) return false ; if ( opts . reduce && stats . conflicts != lim . conflicts_at_last_reduce ) return false ; return stats . conflicts >= lim . subsume ; }
This file implements a global forward subsumption algorithm, which is run
frequently during search.
This file implements a global forward subsumption algorithm which is run frequently during search .
// Only perform global subsumption checking immediately after a clause // reduction happened where the overall allocated memory is small and we // got a limit on the number of kept clause in terms of size and glue. //