C1C2(C1−{ℓ})∪(C2−{ℓc}) (Res)\dfrac{C_1\qquad C_2}{(C_1-\{\ell\}) \cup (C_2-\{\ell^c\})}\;\; (\mathsf{Res})(C1−{ℓ})∪(C2−{ℓc})C1C2(Res)
Las cláusulas padre son C1C_1C1 y C2C_2C2, el resolvente es CCC
C=(C1−{ℓ})∪(C2−{ℓc})C=(C_1-\{\ell\}) \cup (C_2-\{\ell^c\})C=(C1−{ℓ})∪(C2−{ℓc})
C1C2(C1−{ℓ})∪(C2−{ℓc})\dfrac{C_1\qquad C_2}{(C_1-\{\ell\}) \cup (C_2-\{\ell^c\})} (C1−{ℓ})∪(C2−{ℓc})C1C2
{p,q,¬r}{r,s,¬t}{p,q,s,¬t}\dfrac{\{p,q,\neg r\}\qquad \{r, s, \neg t\}}{\{p,q, s, \neg t\}} {p,q,s,¬t}{p,q,¬r}{r,s,¬t}
{¬p,q}{¬q}{¬p}\dfrac{\{\neg p,q\}\qquad \{\neg q\}}{\{\neg p\}} {¬p}{¬p,q}{¬q}
{p,q,¬r}{¬p,r,s}{p,q,¬p,s}\dfrac{\{p,q,\neg r\}\qquad \{\neg p, r, s\}}{\{p,q, \neg p, s\}} {p,q,¬p,s}{p,q,¬r}{¬p,r,s}
El resolvente es la cláusula trivial
{s}{¬s}□\dfrac{\{s\}\qquad \{\neg s\}}{\square} □{s}{¬s}
El resolvente CCC es satisfacible syss las cláusulas padre C1C_1C1 y C2C_2C2 son ambas satisfacibles.
Input: Un conjunto de cláusulas SSS. Output: SSS es satisfacible o insatisfacible.
Definimos S0=SS_0=SS0=S.
Repetir los siguientes pasos para obtener Si+1S_{i+1}Si+1 a partir de SiS_iSi:
Hasta que C=□C=\squareC=□, en cuyo caso SSS es insatisfacible; o hasta que la regla de resolución se haya aplicado a todos los pares de cláusulas de colisión, lo que indica que SSS es satisfacible.
Si un conjunto de cláusulas S={φ1,φ2,…,φn}S=\{\varphi_1,\varphi_2,\ldots,\varphi_n\}S={φ1,φ2,…,φn} (n≥0)n\geq 0)n≥0) es satisfacible, entonces cualquier conjunto SiS_iSi (i≥0i\geq 0i≥0), generado por el algoritmo de resolución binaria, es satisfacible.