Can someone please show me examples of what is the difference between OLR (one literal rule) and PLR (pure literal rule) using the DPLL algorithm?
1 Answers
The one literal rule, usually known as the unit clause rule, state that if you have a unit clause (a clause containing only one literal) then you should set that literal to the value which satisfies the clause.
The pure literal rule states that if some variable appears only positively or only negatively in all clauses, then you can set that variable accordingly (true if it appears positively, false if it appears negatively).
You can apply the unit clause rule but not the pure literal rule in the formula $p \land (q \lor \lnot p)$. The result would be setting $p$ to true and simplifying the formula to $q$. Another application of the unit clause rule will set $q$ to true and will satisfy the formula.
You can apply the pure literal rule but not the unit clause rule in the formula $(p \lor q) \land (p \lor r)$. The result would be setting $p$ to true, and satisfying the formula.
- 276,994
- 27
- 311
- 503