Aquí, las variables que podemos manipular solo toman dos valores: Verdadero o Falso. Son variables booleanas. Así, si x es una de esas variables, o bien x tiene el valor Verdadero (x = Verdadero), o bien x tiene el valor Falso (x = Falso). Por elementales y limitados que sean, estos valores permiten aun así efectuar cálculos. Para ello, definimos operaciones, un poco como la suma o el inverso para los números ordinarios (no nulos).
Quien dice no, no, no… -----------------------
La primera operación es la negación: si x es una variable con un determinado valor booleano, entonces ¬ x es lo «contrario» de x, en el sentido de que ¬Verdadero = Falso y ¬Falso = Verdadero. El operador ¬ se lee «No» (por tanto, No(Verdadero) = Falso, ¡lo cual parece lógico!).
Para definir nuestra segunda operación, conviene simplificar un poco el formalismo habitual. Una cláusula de tres literales es una terna formada por variables o negaciones de variables. Las variables que componen una cláusula de tres literales deben ser distintas, pero el orden en la terna no importa. He aquí algunos ejemplos de cláusulas de tres literales con las variables booleanas x, y, z y t:
(x, y, t),