Sakallah univ of michigan 5 implications in cnf

Info iconThis preview shows page 1. Sign up to view the full content.

View Full Document Right Arrow Icon
This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: a + c + ¬d) (¬b + ¬c + ¬d) b 8 c d b c d c d d d (¬b + ¬c + d) Source: Karem A. Sakallah, Univ. of Michigan 5 Implications in CNF • Implications in a CNF formula are caused by unit clauses – unit clause is a CNF term for which all variables except one are assigned • the value of that clause can be implied immediately Example: (a+^b+c) (a=0)(b=1)⇒(c=1) a • No implications in circuit: c b – All clauses satisfied: 1 1 1 0 x (^a+^b+c)(a+^c)(b+^c) 0 0 1 0 x 0 0 1 0 0 0 0 0 – Not all satisfies (How do we avoid exploring that part of the circuit?) 1 x x x x x x 1 x 6 Example a c b Implications: (^a+^b+ c) 1 1 x 1 1 x x 0 0 (a+^c) 0 1 0 x x 1 x x 1 (b+^c) x x 0 0 x 1 x 0 1 x 1 0 x 1 x 7 Case Splitting with Implications 1 2 3 a (a + b + c) (a + b + ¬c) (¬a + b + ¬c) 4 5 (¬a + c + ¬d) (¬b + ¬c + ¬d) 8 (¬b + ¬c + d) Source: Karem A. Sakallah, Univ. of Michigan b c (a + c + d) (¬a + c + d) 6 7 b a b 4 3 5 7 b c 4 3 5 7 c d c 6 5 8 5 6 8 8 6 6 d 6 6 8 Implementation • • Clauses are stores in array Track sensitivity of clauses for changes: – all literals but one assigned -> implication – all literals but two assigned -> clause is sensitive to a change of either literal – all other clauses are insensitive and do not need to be observed • Learning: – learned implications are added to the CNF formula as additional clauses • limit the size of the clause • limit the “lifetime” of a clause, will be removed after some time • Non-...
View Full Document

This document was uploaded on 04/07/2014.

Ask a homework question - tutors are online