MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn moreOpportunities for recent engineering grads.

Apply TodayIn 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).

9 correct solutions
2 incorrect solutions

Last solution submitted on Dec 01, 2014