mirror of
https://github.com/Z3Prover/z3
synced 2025-04-22 16:45:31 +00:00
commenting on anachornistic propagation code
This commit is contained in:
parent
8c67c23883
commit
8db3b537b1
1 changed files with 8 additions and 0 deletions
|
@ -259,6 +259,14 @@ namespace polysat {
|
|||
// - When building the viable lemma, one of the linking constraints happens to be L
|
||||
// - L is bool-true but eval-false --> we actually have a bool/eval conflict that we didn't detect
|
||||
// - the viable lemma is problematic because L is bool-true
|
||||
|
||||
// NSB comment:
|
||||
// It seems the core of the issue is that conflict resolution should have identified
|
||||
// L as the top-most literal that the conflict depends on instead of using L'.
|
||||
// The conflict state includes the propagation of values that could be triggered by L.
|
||||
// Take the SAT solver analogy, conflict resolution walks the assignment stack to find the
|
||||
// youngest assignment that is part of the conflict. It then starts resolving against the youngest
|
||||
// literal assignment.
|
||||
auto const& item = m_search[eval_qhead++];
|
||||
if (item.is_assignment()) {
|
||||
// LOG_H1("P2: eval pvar v" << item.var());
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue