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 Solvers17
Suggested Problems
-
Test if a Number is a Palindrome without using any String Operations
253 Solvers
-
519 Solvers
-
Return the first and last characters of a character array
11867 Solvers
-
797 Solvers
-
Remove entire row and column in the matrix containing the input values
555 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!