1. Forma de cláusula :
en esta forma, la fórmula se compone de una serie de cláusulas, donde cada cláusula se compone de una serie de literales conectados solo por conectores lógicos OR.
Una fórmula de forma clausal debe ser transformada en otra fórmula con las siguientes características:
- Todas las variables en la fórmula se cuantifican universalmente. Por tanto, no es necesario incluir los cuantificadores universales explícitamente para todos. Los cuantificadores se eliminan y todas las variables de la fórmula se cuantifican implícitamente mediante el cuantificador universal.
- Como la fórmula se compone de una serie de cláusulas, y cada cláusula se compone de una serie de literales conectados solo por conectores lógicos OR. Por lo tanto, cada cláusula es una disyunción de literales.
- Para formar una fórmula, las cláusulas mismas están conectadas por conectores lógicos AND únicamente. Por lo tanto, la forma clausal de una fórmula es una conjunción de cláusulas.
2. Forma clausal de Horn :
Una cláusula de Horn es una cláusula (una disyunción de literales) con como máximo un literal positivo, es decir, no negado. Una cláusula con como máximo un literal positivo (no negado) se denomina Cláusula Horn.
Tipos de Cláusulas Horn:
- Cláusula definida / cláusula Strict Horn: tiene exactamente un literal positivo.
- Cláusula unitaria: Cláusula definida sin literales negativos.
- Cláusula de gol: Cláusula de cuerno sin un literal positivo.
Ejemplos:
forma de cláusula:
los literales pueden ser literales positivos o literales negativos. Para las formas de las cláusulas individuales donde cada una es una disyunción de literales. Para la forma de la cláusula:
NOT(P1) OR NOT(P2) OR ..... OR NOT(Pn) OR Q1 OR Q2 OR ..... OR Qm
La cláusula anterior tiene n literales negativos y m literales positivos. Esta cláusula se puede transformar en la siguiente fórmula lógica equivalente:
P1 AND P2 AND ..... AND Pn => Q1 OR Q2 OR ..... OR Qm
donde ‘=>’ es el símbolo implica.
Cuerno forma Clausal:
(i) La cláusula Horn,
NOT(P1) OR NOT(P2) OR ... OR NOT(Pn) OR Q
Se puede transformar en la cláusula:
P1 Y P2 Y… Y Pn => Q
que está escrito en Datalog como las siguientes reglas.
Q :- P1, P2, ..., Pn.
La regla de registro de datos anterior es, por lo tanto, una cláusula de Horn.
Significado: si los predicados P1 AND P2 AND … AND Pn, son todos verdaderos para un enlace particular a sus argumentos variables, entonces Q también es verdadero y, por lo tanto, puede inferirse.
(ii) La cláusula Horn,
NOT(P1) OR NOT(P2) OR ... OR NOT (Pn)
Se puede transformar en
P1 AND P2 AND … AND Pn =>
que está escrito en Datalog de la siguiente manera:
P1, P2, ..., Pn.
La expresión de registro de datos anterior se puede considerar como una restricción de integridad, donde todos los predicados deben ser verdaderos para satisfacer la consulta.
Publicación traducida automáticamente
Artículo escrito por nitin_sharma y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA