title: Converting Normal Form to CNF
body: <p>In my CS Logic class we have to convert normal form boolean expressions to CNF, but I am kind of stuck on this one.</p>
  
  <p>¬(¬P => (P => Q))</p>
  
  <p>which is:</p>
  
  <p>¬(¬P => (¬P OR Q)) by implication elimination</p>
  
  <p>¬(¬¬P OR (¬P OR Q)) by implication elimination</p>
  
  <p>¬(P OR (¬P OR Q)) by double negation</p>
  
  <p>¬P AND ¬(¬P OR Q)) by DeMorgan's</p>
  
  <p>¬P AND (¬¬P AND ¬Q)) by DeMorgan's</p>
  
  <p>¬P AND (P AND ¬Q)) by double negation</p>
  
  <p>The next step is to distribute OR over AND, but there aren't any OR to distribute.</p>