Literal
Um literal é um átomo (literal positivo) ou a negação de um átomo (literal negativo). Os literais e são chamados de complementares.
Cláusula
Uma cláusula é uma fórmula da forma
Na qual cada é um literal e são todas variáveis que ocorrem nos literais .
Ou seja, uma cláusula é uma disjunção de literais, com todas as variáveis sendo quantificadas universalmente.
Skolemização
O processo de skolemização consiste em eliminar os quantificadores existenciais de uma fórmula substituindo-os por uma função de Skolem. Uma função de Skolem pode assumir duas formas, dependendo do contexto do quantificador que se deseja eliminar:
- Uma função cujos argumentos são as variáveis quantificadas universalmente que influenciam o quantificador existencial sendo removido.
- Uma constante, se o quantificador existencial sendo removido não estiver no escopo de nenhum quantificador universal.
Forma Normal Prenex (FNP)
Uma fórmula da lógica de predicados está na Forma Normal Prenex (FNP) se e somente se estiver na forma
Em que cada , é um quantificador ou , e é uma fórmula que não contém quantificadores (matriz).
Forma Normal Conjuntiva (FNC)
Uma fórmula está na Forma Normal Conjuntiva (FNC) se e somente se estiver na FNP e sua matriz for uma conjunção de disjunções de literais.
De maneira geral, o processo para se transformar uma fórmula da lógica de predicados em uma fórmula equivalente na forma normal conjuntiva se dá pelo seguinte algoritmo:
- Eliminar as variáveis livres quantificando-as existencialmente.
- Eliminar os quantificadores desnecessários (que não contenham nenhuma ocorrência da variável quantificada em seu escopo).
- Renomear as variáveis quantificadas até que todos os quantificadores operem sobre variáveis diferentes.
- Remover os operadores e .
- Mover as negações para o interior da fórmula.
- Eliminar os quantificadores existenciais através da skolemização.
- Obter a forma normal Prenex movendo os quantificadores universais para a frente da fórmula.
- Colocar a matriz da FNP na forma conjuntiva.