Find a satisfactory assignment (if one exists) for a boolean formula in conjunctive normal form with M clauses and N literals, where each clause contains precisely two literals. You may use 2N vertices to create the implication digraph (one for each literal and its negation). Include edges from y' to x and from x' to y for each clause of the form x + y. In order to fulfil the condition x + y, it must be true (i) if y is false and (ii) if x is false. It is true that the formula is true if and only if no variable x is in the same strong component as its negation, x'. Additionally, a satisfactory assignment is produced by a topological sort of the kernel DAG, which reduces each strong component to a single vertex.
Find a satisfactory assignment (if one exists) for a boolean formula in conjunctive normal form with M clauses and N literals, where each clause contains precisely two literals. You may use 2N vertices to create the implication digraph (one for each literal and its negation). Include edges from y' to x and from x' to y for each clause of the form x + y. In order to fulfil the condition x + y, it must be true (i) if y is false and (ii) if x is false. It is true that the formula is true if and only if no variable x is in the same strong component as its negation, x'. Additionally, a satisfactory assignment is produced by a topological sort of the kernel DAG, which reduces each strong component to a single vertex.
Step by step
Solved in 3 steps