LARA

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision Both sides next revision
sav08:advanced_sat_solving_techniques [2008/03/12 21:34]
vkuncak
sav08:advanced_sat_solving_techniques [2008/03/12 21:40]
vkuncak
Line 66: Line 66:
 analyze_conflict() { analyze_conflict() {
   cl = find_conflicting_clause();​   cl = find_conflicting_clause();​
-  while (!stop_criterion_met(c1)) {+  while (!is_asserting_clause(c1)) {
     var = var_of_lit(choose_literal(c1));​     var = var_of_lit(choose_literal(c1));​
     c1 = resolve(c1, antecedant(var),​ var);     c1 = resolve(c1, antecedant(var),​ var);
Line 79: Line 79:
   * deduction rule was that some original clause C became unit clause because all literals exept literal containing var were false   * deduction rule was that some original clause C became unit clause because all literals exept literal containing var were false
   * then antecedant(var) is C   * then antecedant(var) is C
 +
 +asserting clause:
 +  * false at current decision level
 +  * only one literal has current decision level (others were assigned before)
 +
 +If c1 is not asserting clause yet, we resolve it with antecedants of variables, following backwards deduction steps.
 +
 +The clause forces a different value of a decision variable at a previous level.
  
 ===== Storing Clauses ===== ===== Storing Clauses =====