In Boolean logic, a formula is in conjunctive normal form (CNF) or clausal normal form if it is a conjunction of clauses, where a clause is a disjunction of literals. http://en.wikipedia.org/wiki/Conjunctive_normal_form
You are given a cell array list of literals present in each clause, whose literal-names are indicated by numbers. The index is -ve if it is to be negated. You are also given the truth value of these variables as a row vector.
Output the truth value of the proposition.
Ex (A | B) & (~B | C | ~D ) & (D | ~E) is true for A=C=D=true, B=E=false is represented as { [1 2] [-2 3 -4] [4 -5]} , [1 0 1 1 0] and this evaluates to true
The CNF conjuncts are not restricted to 3 variables (3CNF).
Solution Stats
Problem Comments
Solution Comments
Show commentsProblem Recent Solvers18
Suggested Problems
-
Return a list sorted by number of occurrences
2895 Solvers
-
Sum all integers from 1 to 2^n
17877 Solvers
-
Back to basics 19 - character types
275 Solvers
-
Sort numbers by outside digits
162 Solvers
-
Determine Whether an array is empty
815 Solvers
More from this Author10
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!