; Inteligencia Artificial (PDF)
Documents
Resources
Learning Center
Upload
Plans & pricing Sign in
Sign Out
Your Federal Quarterly Tax Payments are due April 15th Get Help Now >>

Inteligencia Artificial (PDF)

VIEWS: 95 PAGES: 140

Inteligencia Artificial

More Info
  • pg 1
									Temas de “Lógica informática” (2004–05)

                  José A. Alonso Jiménez




Grupo de Lógica Computacional
Dpto. de Ciencias de la Computación e Inteligencia Artificial
Universidad de Sevilla
Sevilla, 30 de Junio de 2005
2                                       José A. Alonso


Esta obra está bajo una licencia Reconocimiento–NoComercial–CompartirIgual 2.5 Spain
de Creative Commons.


    Se permite:

         copiar, distribuir y comunicar públicamente la obra

         hacer obras derivadas

    Bajo las condiciones siguientes:
           Reconocimiento. Debe reconocer los créditos de la obra de la manera especifi-
           cada por el autor.


           No comercial. No puede utilizar esta obra para fines comerciales.

           Compartir bajo la misma licencia. Si altera o transforma esta obra, o genera una
           obra derivada, sólo puede distribuir la obra generada bajo una licencia idéntica
           a ésta.
         Al reutilizar o distribuir la obra, tiene que dejar bien claro los términos de la licen-
         cia de esta obra.

         Alguna de estas condiciones puede no aplicarse si se obtiene el permiso del titular
         de los derechos de autor-



     Esto es un resumen del texto legal (la licencia completa). Para ver una copia de esta
licencia, visite http://creativecommons.org/licenses/by-nc-sa/2.5/es/ o envie una
carta a Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
Índice general

1. Sintaxis y semántica de la lógica proposicional      5

2. Deducción natural proposicional                      19

3. Formas normales                                     37

4. Tableros semánticos                                 47

5. Resolución proposicional                             55

6. Sintaxis y semántica de la lógica de primer orden    65

7. Deducción natural en lógica de primer orden          99

8. Formas normales. Cláusulas                          113

9. Resolución en lógica de primer orden                125




                                          3
4   José A. Alonso
Capítulo 1

Sintaxis y semántica de la lógica
proposicional




                    5
6                                            José A. Alonso
 ´           ´
Logica informatica                                                                               Curso 2004–05




                                                a
                         Tema 1: Sintaxis y sem´ntica de
                                 o
                             la l´gica proposicional




                                             e              e
                                          Jos´ A. Alonso Jim´nez
                                               e       o
                                          Andr´s Cord´n Franco




                                                o
                                    Grupo de L´gica Computacional
                                                        o
                       Dpto. de Ciencias de la Computaci´n e Inteligencia Artificial

                                      Universidad de Sevilla




LI 2004–05                        Cc Ia                                       a             o
                                                                Sintaxis y sem´ntica de la l´gica proposicional   1.1




     o
    L´gica

 •                    o
     Objetivos de la l´gica:
     • La               o
             formalizaci´n del lenguaje natural.
     • Los    e
             m´todos de razonamiento.
 •             o
     Sistemas l´gicos:
        o
     • L´gica   proposicional.
        o
     • L´gica   de primer orden.
        o
     • L´gicas   modales.

 •                       o                 o
     Aplicaciones de la l´gica en computaci´n:
                 o
     • Programaci´n      o
                        l´gica.
                o
     • Verificaci´n       ıntesis autom´tica de programas.
                      y s´            a
                   o
     • Representaci´n    del conocimiento y razonamiento.
                 o
     • Modelizaci´n    y razonamiento sobre sistemas.


LI 2004–05                        Cc Ia                                       a             o
                                                                Sintaxis y sem´ntica de la l´gica proposicional   1.2
                                     Lógica informática (2004–05)                                                          7


                          o
  Argumentos y formalizaci´n

 •   Ejemplos de argumentos:
     • Ejemplo                                                            o
                   1: Si el tren llega a las 7 y no hay taxis en la estaci´n, entonces Juan
               a                  o                                       o             o
         llegar´ tarde a la reuni´n. Juan no ha llegado tarde a la reuni´n. El tren lleg´ a
         las 7. Por tanto, hab´                       o
                                ıan taxis en la estaci´n.
     • Ejemplo                              a            a                      a
                  2: Si hay corriente y la l´mpara no est´ fundida, entonces est´ encen-
                   a              a                                         a
         dida. La l´mpara no est´ encendida. Hay corriente. Por tanto, la l´mpara est´ a
         fundida.

 •              o
     Formalizaci´n:
     •    ımbolo
         S´         Ejemplo 1                                Ejemplo 2
            p       “el tren llega a las 7”                  “hay corriente”
            q                               o
                    “hay taxis en la estaci´n”                    a         a
                                                             “la l´mpara est´ fundida”
            r                                   o
                    “Juan llega tarde a la reuni´n”               a         a
                                                             “la l´mpara est´ encendida”
     • Si    p y no q, entonces r. No r. p. Por tanto, q.
     •p   ∧ ¬q → r, ¬r, p |= q.


LI 2004–05                         Cc Ia                                         a             o
                                                                   Sintaxis y sem´ntica de la l´gica proposicional   1.3




                           o
  Sintaxis proposicional: F´rmulas proposicionales
 •   Alfabeto proposicional:
     • variables   proposicionales: p, q, r, p0, p1, . . .
     • conectivas  o
                  l´gicas:
                              o
          – monaria: ¬ (negaci´n),
                                 o               o
          – binarias: ∧ (conjunci´n), ∨ (disyunci´n), → (condicional), ↔ (bicondicional).
        ımbolos
     • s´          auxiliares: “(” y “)”.

 •    o
     F´rmulas proposicionales:
              o
     • Definici´n:

                                               o
          – Las variables proposicionales son f´rmulas.
                          o
          – Si F y G son f´rmulas, entonces ¬F , (F ∧ G), (F ∨ G), (F → G), (F ↔ G) son
             o
            f´rmulas.
     • Ejemplos:

             o
          – F´rmulas: p,      (p ∨ ¬q),     ¬(p ∨ p),        ((p → q) ∨ (q → p))
                o
          – No f´rmulas: (p),       p ∨ ¬q,     (p ∨ ∧q)
LI 2004–05                         Cc Ia                                         a             o
                                                                   Sintaxis y sem´ntica de la l´gica proposicional   1.4
8                                              José A. Alonso


                             o
    Sintaxis proposicional: F´rmulas proposicionales (BNF)

 •   Notaciones:
     • p, q, r, . . .              a
                        representar´n variables proposicionales.
     • F, G, H, . . .               a o
                         representar´n f´rmulas.
     • VP      representa el conjunto de los variables proposicionales.
     • Prop                                     o
                 representa el conjunto de las f´rmulas.
     •∗   representa una conectiva binaria.

 •                                      o
     Forma de Backus Naur (BNF) de las f´rmula proposicionales:
     •F      ::= p | ¬G | (F ∧ G) | (F ∨ G) | (F → G) | (F ↔ G)




LI 2004–05                           Cc Ia                                    a             o
                                                                Sintaxis y sem´ntica de la l´gica proposicional   1.5




                            ´            a
    Sintaxis proposicional: Arboles de an´lisis

 •   ´            a                   o
     Arboles de an´lisis (o de formaci´n).

                                             (p → (¬q ∨ p))

                                              p       (¬q ∨ p)

                                                     ¬q         p

                                                      q




LI 2004–05                           Cc Ia                                    a             o
                                                                Sintaxis y sem´ntica de la l´gica proposicional   1.6
                                 Lógica informática (2004–05)                                                     9


                               o        e
  Sintaxis proposicional: Omisi´n de par´ntesis

 •                       o        e
     Criterios de reducci´n de par´ntesis:
     • Pueden                      e
                 eliminarse los par´ntesis externos.
             F ∧ G es una abreviatura de (F ∧ G).
     • Precedencia              o
                     de asociaci´n de conectivas: ¬, ∧, ∨, →, ↔.
             F ∧ G → ¬F ∨ G es una abreviatura de ((F ∧ G) → (¬F ∨ G)).
     • Cuando    una conectiva se usa repetidamente, se asocia por la derecha.
              F ∨G∨H             es una abreviatura de (F ∨ (G ∨ H)).
              F ∧ G ∧ H → ¬F ∨ G es una abreviatura de ((F ∧ (G ∧ H)) → (¬F ∨ G)).




LI 2004–05                      Cc Ia                                   a             o
                                                          Sintaxis y sem´ntica de la l´gica proposicional   1.7




                              o
  Sintaxis proposicional: Subf´rmulas

 •       o
     Subf´rmulas:
     • Def:                          o
              El conjunto de las subf´rmulas de F se   define recursivamente por:
                        
                         {F },                        si F es una variable;
             Subf(F ) = {F } ∪ Subf(G),                si F = ¬G;
                        
                          {F } ∪ Subf(G) ∪ Subf(H),    si F = G ∗ H
     • Ejemplos:


        1. Subf(p) = {p}
        2. Subf(q) = {q}
        3. Subf(¬q) = {¬q, q}
        4. Subf(¬q ∨ p) = {¬q ∨ p, ¬q, q, p}
        5. Subf(p → ¬q ∨ p) = {p → ¬q ∨ p, p, ¬q ∨ p, ¬q, q}




LI 2004–05                      Cc Ia                                   a             o
                                                          Sintaxis y sem´ntica de la l´gica proposicional   1.8
10                                         José A. Alonso


     a
  Sem´ntica proposicional: valores y funciones de verdad
 •   Valores de verdad: (B):
     • 1:    verdadero.
     • 0:    falso.
 •   Funciones de verdad:
     •H
                                               1, si i = 0;
       ¬      : {0, 1} → {0, 1} t.q. H¬(i) =
                                               0, si i = 1.

                                                   1, si i = j = 1;
     •H
       ∧      : {0, 1}2 → {0, 1} t.q. H∧(i, j) =
                                                   0, en otro caso.

                                                   0, si i = j = 0;
     •H
       ∨      : {0, 1}2 → {0, 1} t.q. H∨(i, j) =
                                                   1, en otro caso.

                                                    0, si i = 1, j = 0;
     •H
       →      : {0, 1}2 → {0, 1} t.q. H→(i, j) =
                                                    1, en otro caso.

                                                    1, si i = j;
     •H
       ↔      : {0, 1}2 → {0, 1} t.q. H↔(i, j) =
                                                    0, en otro caso.

LI 2004–05                        Cc Ia                                      a             o
                                                               Sintaxis y sem´ntica de la l´gica proposicional    1.9




     a                             o      o
  Sem´ntica proposicional: valoraci´n de f´rmulas

 •   Funciones de verdad mediante tablas de verdad:

      i ¬i                i   j i∧j i∨j i→j i↔j
      1 0                 1   1 1    1   1   1
      0 1                 1   0 0    1   0   0
                          0   1 0    1   1   0
                          0   0 0    0   1   1
 •           o
     Valoraci´n de verdad:
     • Def.:                     o                              o
                v es una valoraci´n de verdad si es una aplicaci´n de VP en B.
     • Prop:                    o                          ´            o ˆ
              Para cada valoraci´n de verdad v existe una unica aplicaci´n v : Prop → B
      tal que:     
                    v(F ),            si F es una variable;
           ˆ
           v (F ) = H¬(ˆ(G)),
                         v             si F = ¬G;
                   
                         v     ˆ
                     H∗(ˆ(G), v (H)), si F = G ∗ H
                  ˆ
      Se dice que v (F ) es el valor de verdad de F respecto de v.

LI 2004–05                        Cc Ia                                     a             o
                                                              Sintaxis y sem´ntica de la l´gica proposicional    1.10
                                   Lógica informática (2004–05)                                                   11


     a                             o      o
  Sem´ntica proposicional: valoraci´n de f´rmulas

     • Ejemplo:    Sea F = (p ∨ q) ∧ (¬q ∨ r)
                                     o
         – valor de F en una valoraci´n v1 tal que v1(p) = v1(r) = 1, v1(q) = 0
              (p ∨ q) ∧ (¬q ∨ r)
              (1 ∨ 0) ∧ (¬0 ∨ 1)
                  1    ∧ (1 ∨ 1)
                  1    ∧      1
                       1
                                     o
         – valor de F en una valoraci´n v2 tal que v2(r) = 1, v2(p) = v2(q) = 0
              (p ∨ q) ∧ (¬q ∨ r)
              (0 ∨ 0) ∧ (¬0 ∨ 1)
                  0    ∧ (1 ∨ 1)
                  0    ∧      1
                       0

     • Prop.:             o
              Sea F una f´rmula y v, v dos valoraciones. Si v(p) = v (p) para todos las
                                                ˆ
      variables proposicionales de F , entonces v (F ) = v (F ).
             o
     • Notaci´n:                                 ˆ
                    Se escribe v(F ) en lugar de v (F ).
LI 2004–05                       Cc Ia                                     a             o
                                                             Sintaxis y sem´ntica de la l´gica proposicional   1.11




     a
  Sem´ntica proposicional: modelos y satisfacibilidad
 •                  o
     Modelo de una f´rmula:
     • Def.:   v es modelo de F si v(F ) = 1.
             o
     • Notaci´n:    v |= F .
     • Ejemplo              o
                (continuaci´n del anterior):
      – si v1(p) = v1(r) = 1, v1(q) = 0, entonces v1 |= (p ∨ q) ∧ (¬q ∨ r)
      – si v2(r) = 1, v2(p) = v2(q) = 0, entonces v2 |= (p ∨ q) ∧ (¬q ∨ r)

 •    o
     F´rmulas satisfacibles e insatisfacibles:
     • Def.:                                   u
               F es satisfacible si F tiene alg´ n modelo.
     • Ejemplo:   (p → q) ∧ (q → r) es satisfacible.
             v(p) = v(q) = v(r) = 0
     • Def.:                                         u
               F es insatisfacible si F no tiene ning´ n modelo.
     • Ejemplo:  p ∧ ¬p es insatisfacible.
             p ¬p p ∧ ¬p
             1 0     0
             0 1     0

LI 2004–05                       Cc Ia                                     a             o
                                                             Sintaxis y sem´ntica de la l´gica proposicional   1.12
12                                         José A. Alonso


     a                             ıas
  Sem´ntica proposicional: tautolog´ y contradicciones

 •           ıas
     Tautolog´ y contradicciones:
     • Def.:                   ıa  a                      o
            F es una tautolog´ (o v´lida) si toda valoraci´n es modelo de F .
      Se representa por |= F .
     • Def.:                       o                     o
               F es una contradicci´n si ninguna valoraci´n es modelo de F .
     • Def.:                                     ıa              o
               F es contingente si no es tautolog´ ni contradicci´n.
     • Ejemplos:


                                            ıa.
        1. (p → q) ∨ (q → p) es una tautolog´
                                                o
        2. (p → q) ∧ ¬(p → q) es una contradicci´n.
        3. p → q es contingente.
             p   q p → q q → p (p → q) ∨ (q → p) ¬(p → q) (p → q) ∧ ¬(p → q)
             1   1   1     1           1             0             0
             1   0   0     1           1             1             0
             0   1   1     0           1             0             0
             0   0   1     1           1             0             0

LI 2004–05                      Cc Ia                                     a             o
                                                            Sintaxis y sem´ntica de la l´gica proposicional   1.13




     a                                        o
  Sem´ntica proposicional: Clasificaciones de f´rmulas

 •                      o
     Clasificaciones de f´rmulas:

                                                    o
                                         Todas las f´rmulas
             ıas
     Tautolog´                          Contigentes                    Contradicciones
     Verdadera en todas                 Verdadera en algunas Falsa en todas las
     las valoraciones                   valoraciones y falsa en valoraciones
                                        otras
     (ej. p ∨ ¬p)                       (ej. p → q)                    (ej. p ∧ ¬p)
                            Safisfacibles                               Insatisfacibles
                                                    o
                                         Todas las f´rmulas




LI 2004–05                      Cc Ia                                     a             o
                                                            Sintaxis y sem´ntica de la l´gica proposicional   1.14
                                    Lógica informática (2004–05)                                                    13


     a
  Sem´ntica proposicional: Satisfacibilidad y tautologicidad

 •   Los problemas SAT y TAUT:
     • Problema      SAT: Dada F determinar si es satisfacible.
     • Problema                                                ıa.
                     TAUT: Dada F determinar si es una tautolog´

 •   Relaciones entre satisfacibilidad y tautologicidad:
     •F                 ıa
             es tautolog´    ⇐⇒        ¬F es insatisfacible.
     •F                 ıa
             es tautolog´    =⇒        F es satisfacible.
     •F                       /
             es satisfacible =⇒ ¬F es insatisfacible.
              p → q es satisfacible.
                 v(p) = v(q) = 1
              ¬(p → q) es satisfacible.
                 v(p) = 1, v(q) = 0




LI 2004–05                        Cc Ia                                      a             o
                                                               Sintaxis y sem´ntica de la l´gica proposicional   1.15




     a
  Sem´ntica proposicional: Algoritmos para SAT y TAUT

     • Tablas    de verdad para |= (p → q) ∨ (q → p):
        p     q (p → q) (q → p) (p → q) ∨ (q → p)                 p   q   (p   →    q)   ∨   (q     →     p)
        1     1    1       1            1                         1   1    1   1    1    1    1     1     1
        1     0    0       1            1                         1   0    1   0    0    1    0     1     1
        0     1    1       0            1                         0   1    0   1    1    1    1     0     0
        0     0    1       1            1                         0   0    0   1    0    1    0     1     0

        e
     • M´todo      de Quine para |= (p → q) ∨ (q → p):
               (p → q) ∨ (q → p)
                       0
                  0         0
                          1   0
                0   1
                  1

        e
     • M´todo      de Quine para |= (p → q) ∨ (q → p):
               (p → q) ∨ (q → p)
                0 0 1 0 1 0 0
                  1∗
LI 2004–05                        Cc Ia                                      a             o
                                                               Sintaxis y sem´ntica de la l´gica proposicional   1.16
14                                         José A. Alonso


     a
  Sem´ntica proposicional: Algoritmos para SAT y TAUT

     • Tablas     de verdad para |= (p ↔ q) ∨ (q ↔ p):
       p     q (p ↔ q) (q ↔ p) (p ↔ q) ∨ (q ↔ p)
       1     1    1       1            1
       1     0    0       0            0
       0     1    0       0            0
       0     0    1       1            1

        e
     • M´todo      de Quine para |= (p ↔ q) ∨ (q ↔ p):
       (p ↔ q) ∨ (q ↔ p)
        0 0 1 0 1 0 0

        1     0   0 0 0    0   1




LI 2004–05                         Cc Ia                                  a             o
                                                            Sintaxis y sem´ntica de la l´gica proposicional   1.17




     a                            o             ıas
  Sem´ntica proposicional: selecci´n de tautolog´

 •          o             ıas:
     Selecci´n de tautolog´
     • 1.    F → F (ley de identidad).
     • 2.    F ∨ ¬F (ley del tercio excluso).
     • 3.                                           o
             ¬(F ∧ ¬F ) (principio de no contradicci´n).
     • 4.    (¬F → F ) → F (ley de Clavius).
     • 5.    ¬F → (F → G) (ley de Duns Scoto).
     • 6.    ((F → G) → F ) → F (ley de Peirce).
     • 7.    (F → G) ∧ F → G (modus ponens).
     • 8.    (F → G) ∧ ¬G → ¬F (modus tollens).




LI 2004–05                         Cc Ia                                  a             o
                                                            Sintaxis y sem´ntica de la l´gica proposicional   1.18
                                             Lógica informática (2004–05)                                              15


     a                                             o
  Sem´ntica proposicional: Modelo de conjuntos de f´rmulas

 •         o
     Notaci´n:
     • S, S
              1 , S2 , . . .              a                o
                               representar´n conjuntos de f´rmulas.

 •                             o
     Modelo de un conjunto de f´rmulas:
     • Def.:     v es modelo de S si para toda F ∈ S se tiene que v |= F .
                   o
     • Representaci´n:             v |= S.
     • Ejemplo:          Sea S = {(p ∨ q) ∧ (¬q ∨ r), q → r}
                 o
      La valoraci´n v1 tal que v1(p) = 1, v1(q) = 0, v1(r) = 1 es modelo de S (v1 |= S).
             {(p ∨ q) ∧ (¬ q ∨ r),               q → r}
              1 1 0 1 1 0 1 1                    0 1 1

                 o
      La valoraci´n v2 tal que v2(p) = 0, v2(q) = 1, v2(r) = 0 no es modelo de S (v2 |= S).
             {(p ∨ q) ∧ (¬ q ∨ r),               q → r}
              0 1 0 0 0 1 0 0                    1 0 0



LI 2004–05                               Cc Ia                                  a             o
                                                                  Sintaxis y sem´ntica de la l´gica proposicional   1.19




     a
  Sem´ntica proposicional: Consistencia

 •                            o
     Conjunto consistente de f´rmulas:
     • Def.:                                    u
                 S es consistente si S tiene alg´ n modelo.
     • Def.:                                          u
                 S es inconsistente si S no tiene ning´ n modelo.
     • Ejemplos:

      – {(p ∨ q) ∧ (¬q ∨ r), p → r} es consistente (con modelos v4, v6, v8)
      – {(p ∨ q) ∧ (¬q ∨ r), p → r, ¬r} es inconsistente
                     p   q     r (p ∨ q) (¬q ∨ r) (p ∨ q) ∧ (¬q ∨ r) p → r ¬r
               v1    0   0     0    0       1              0           1   1
               v2    0   0     1    0       1              0           1   0
               v3    0   1     0    1       0              0           1   1
               v4    0   1     1    1       1              1           1   0
               v5    1   0     0    1       1              1           0   1
               v6    1   0     1    1       1              1           1   0
               v7    1   1     0    1       0              0           0   1
               v8    1   1     1    1       1              1           1   0

LI 2004–05                               Cc Ia                                  a             o
                                                                  Sintaxis y sem´ntica de la l´gica proposicional   1.20
16                                          José A. Alonso


     a                                   o
  Sem´ntica proposicional: Consecuencia l´gica

     • Def.:F es consecuencia de S si todos los modelos de S son modelos de F .
                   o
     • Representaci´n: S |= F .
     • Ejemplo: {p → q, q → r} |= p → r

              p q r p→q q→r p→r
           v1 0 0 0     1       1     1
           v2 0 0 1     1       1     1
           v3 0 1 0     1       0     1
           v4 0 1 1     1       1     1
           v5 1 0 0     0       1     0
           v6 1 0 1     0       1     1
           v7 1 1 0     1       0     0
           v8 1 1 1     1       1     1
     • Ejemplo:    {p} |= p ∧ q
             p   q p∧q
             1   1  1
             1   0  0
             0   1  0
             0   0  0

LI 2004–05                          Cc Ia                                  a             o
                                                             Sintaxis y sem´ntica de la l´gica proposicional   1.21




     a
  Sem´ntica: propiedades de la consecuencia

 •                a                  o
     Propiedades b´sicas de la relaci´n de consecuencia:
     • Reflexividad:     S |= S.
              ıa:
     • Monoton´       Si S1 |= F y S1 ⊆ S2, entonces S2 |= F .
     • Transitividad:    Si S |= F y {F } |= G, entonces S |= G.

 •         o
     Relaci´n entre consecuencia, validez, satisfacibilidad y consistencia:
     • Las   siguientes condiciones son equivalentes:
        1. {F1, . . . , Fn} |= G.
        2. |= F1 ∧ . . . ∧ Fn → G.
        3. ¬(F1 ∧ . . . ∧ Fn → G) es insatisfacible.
        4. {F1, . . . , Fn, ¬G} es inconsistente.




LI 2004–05                          Cc Ia                                  a             o
                                                             Sintaxis y sem´ntica de la l´gica proposicional   1.22
                                 Lógica informática (2004–05)                                                 17


     a
  Sem´ntica proposicional: argumentaciones

 •                         o
     Ejemplo de argumentaci´n:
     • Problema   de los animales: Se sabe que
                                                      ıferos.
        1. Los animales con pelo que dan leche son mam´
                  ıferos que tienen pezu˜ as o que rumian son ungulados.
        2. Los mam´                     n
        3. Los ungulados de cuello largo son jirafas.
        4. Los ungulados con rayas negras son cebras.
                                                n
      Se observa un animal que tiene pelos, pezu˜ as y rayas negras. Por consiguiente, se
      concluye que el animal es una cebra.
                  o
     • Formalizaci´n:

       { tiene pelos ∨ da leche → es mam´   ıfero,
         es mam´                    n
                 ıfero ∧ (tiene pezu˜ as ∨ rumia) → es ungulado,
         es ungulado ∧ tiene cuello largo → es jirafa,
         es ungulado ∧ tiene rayas negras → es cebra,
                                  n
         tiene pelos ∧ tiene pezu˜ as ∧ tiene rayas negras}
      |= es cebra
LI 2004–05                     Cc Ia                                   a             o
                                                         Sintaxis y sem´ntica de la l´gica proposicional   1.23




             o
  Problemas l´gicos
 •   El problema de los veraces y los mentirosos:
     • Enunciado:   En una isla hay dos tribus, la de los veraces (que siempre dicen la
      verdad) y la de los mentirosos (que siempre mienten). Un viajero se encuentra con
               n
      tres isle˜ os A, B y C y cada uno le dice una frase
        1. A dice “B y C son veraces syss C es veraz”
        2. B dice “Si A y C son veraces, entonces B y C son veraces y A es mentiroso”
        3. C dice “B es mentiroso syss A o B es veraz”
                     e
      Determinar a qu´ tribu pertenecen A, B y C.
                  o
     • Simbolizaci´n:   a: “A es veraz”, b: “B es veraz”, c: “C es veraz”
                  o
     • Formalizaci´n:

      F1 = a ↔ (b ∧ c ↔ c), F2 = b ↔ (a ∧ c → b ∧ c ∧ ¬a) y F3 = c ↔ (¬b ↔ a ∨ b)
     • Modelos de {F1, F2, F3}:
      Si v es modelo de {F1, F2, F3}, entonces v(a) = 1, v(b) = 1, v(c) = 0
               o
     • Conclusi´n:   A y B son veraces y C es mentiroso.


LI 2004–05                     Cc Ia                                   a             o
                                                         Sintaxis y sem´ntica de la l´gica proposicional   1.24
18                                       José A. Alonso


            ıa
  Bibliograf´

     • C.                  e                            o
             Badesa, I. Jan´ y R. Jansana Elementos de l´gica formal. (Ariel, 2000)
                                o                      o                           a
             Cap. 0 (Introducci´n), 6 (Sintaxis de la l´gica proposicional), 7 (Sem´ntica
                    o                                       o              o
             de la l´gica proposicional), 9 (Consecuencia l´gica) y 11 (L´gica proposi-
             cional y lenguaje natural).

     • M.    Ben–Ari, Mathematical logic for computer science (2nd ed.). (Springer, 2001)
             Cap. 1 (Introduction) y 2 (Propositional calculus:              formulas, models,
             tableaux).

     • M. Huth y M. Ryan Logic in computer science: modelling and reasoning about
      systems. (Cambridge University Press, 2000)
             Cap. 1 (Propositional logic).

     • E.                    a               ın o
             Paniagua, J.L. S´nchez y F. Mart´ L´gica computacional (Thomson, 2003)
                                        o                      a             o
             Cap. 1 (La sintaxis de la L´gica) y Cap. 2 (La sem´ntica de la L´gica).



LI 2004–05                      Cc Ia                                   a             o
                                                          Sintaxis y sem´ntica de la l´gica proposicional   1.25
Capítulo 2

Deducción natural proposicional




                  19
20                                             José A. Alonso
 ´           ´
Logica informatica                                                                          Curso 2004–05




                                             o
                             Tema 2: Deducci´n natural
                                   proposicional




                                           e              e
                                        Jos´ A. Alonso Jim´nez
                                             e       o
                                        Andr´s Cord´n Franco




                                               o
                                   Grupo de L´gica Computacional
                                                       o
                      Dpto. de Ciencias de la Computaci´n e Inteligencia Artificial

                                       Universidad de Sevilla




LI 2004–05                             Cc Ia                                     o
                                                                          Deducci´n natural proposicional   2.1




                           o
  DN: Reglas de la conjunci´n

 •                        o
     Reglas de la conjunci´n:
     • Regla                                             F G
                            o                o
               de introducci´n de la conjunci´n:              ∧i
                                                         F ∧G
     • Reglas                                           F ∧G             F ∧G
                            o                o
                de eliminaci´n de la conjunci´n:             ∧e1              ∧e2
                                                          F                G
     • Ejemplo:   p ∧ q, r    q ∧ r:
          1 : p q , r premisas
          2: q           e 1.1
          3: q r         i 2,1.2
               o                              o
     • Adecuaci´n de las reglas de la conjunci´n:


         * ∧i : {F, G} |= F ∧ G
         * ∧e1 : F ∧ G |= F
         * ∧e2 : F ∧ G |= G



LI 2004–05                             Cc Ia                                     o
                                                                          Deducci´n natural proposicional   2.2
                                      Lógica informática (2004–05)                                                21


                               o
  DN: Reglas de la doble negaci´n

 •                            o
     Reglas de la doble negaci´n
     • Regla                                                       ¬¬F
                             o                    o
                 de eliminaci´n de la doble negaci´n:                  ¬¬e
                                                                    F
     • Regla                                                         F
                              o                    o
                 de introducci´n de la doble negaci´n:                  ¬¬i
                                                                    ¬¬F
     • Ejemplo:       p, ¬¬(q ∧ r)    ¬¬p ∧ r:
            : p,
             1        (q r) premisas
            : q r
             2                   e 1.2
            : r
             3                 e 2
            :4    p              i 1.1
            :5    p r          i 4,3
                o                                 o
     • Adecuaci´n de las reglas de la doble negaci´n:


         * ¬¬e : {¬¬F } |= F
         * ¬¬i : {F } |= ¬¬F

LI 2004–05                                Cc Ia                                      o
                                                                              Deducci´n natural proposicional   2.3




                        o
  DN: Regla de eliminaci´n del condicional

 •                     o
     Regla de eliminaci´n del condicional:
     • Regla                                                F      F →G
                             o
                 de eliminaci´n del condicional:                        →e
                                                                   G
     • Ejemplo:       ¬p ∧ q, ¬p ∧ q → r ∨ ¬p            r ∨ ¬p:
             1: p q,         p q     r    p       premisas
             2: r p                                  e 1.2,1.1
     • Ejemplo:       p, p → q, p → (q → r)         r:
             1   :   p, p   q, p     (q   r)       premisas
             2   :   q r                              e 1.3,1.1
             3   :   q                                e 1.2,1.1
             4   :   r                                e 2,3
               o
     • Adecuaci´n                               o
                        de la regla de eliminaci´n del condicional: {F, F → G} |= G




LI 2004–05                                Cc Ia                                      o
                                                                              Deducci´n natural proposicional   2.4
22                                                 José A. Alonso


  DN: Regla derivada de modus tollens (MT)

 •   Regla derivada de modus tollens (MT)
     • Regla                                                F → G ¬G
               derivada de modus tollens (MT):                       MT
                                                               ¬F
     • Ejemplo:     p → (q → r), p, ¬r         ¬q:
          1 : p (q r) , p , r                premisas
          2: q r                                e 1.1,1.2
          3: q                               MT 1.3,2
     • Ejemplo: ¬p → q, ¬q p:
          1: p q , q               premisas
          2:     p                 MT 1.2,1.1
          3: p                        e 2
     • Ejemplo: p → ¬q, q          ¬p:




LI 2004–05                                 Cc Ia                            o
                                                                     Deducci´n natural proposicional   2.5




                         o
  DN: Regla de introducci´n del condicional

 •                      o
     Regla de introducci´n del condicional
     • Regla                o
               de introducci´n del condicional:
               F
               .
               .
               .
               G
                  →i
             F →G
     • Ejemplo:     p→q         ¬q → ¬p:
             1: p       q       premisa
             2:         q       supuesto
             3:         p       MT 2,1
             4:     q       p     i 2 3
               o
     • Adecuaci´n                          o
                  de la regla de introducci´n del condicional:
      Si F |= G, entonces |= F → G.



LI 2004–05                                 Cc Ia                            o
                                                                     Deducci´n natural proposicional   2.6
                                                   Lógica informática (2004–05)                                            23


                         o
  DN: Regla de introducci´n del condicional

     • Ejemplo:       ¬q → ¬p                   p → ¬¬q:
             1:       q            p       premisa
             2:       p                    supuesto
             3:            p                  i 2
             4:            q               MT 3,1
             5: p                  q            i 2 4
     • Ejemplo        (de teorema):                    p → p:

             1:       p                supuesto
             2: p          p               i 1 1




LI 2004–05                                               Cc Ia                                o
                                                                                       Deducci´n natural proposicional   2.7




                         o
  DN: Regla de introducci´n del condicional

     • Ejemplo:            (q → r) → ((¬q → ¬p) → (p → r)):

              1:       q       r                                            supuesto
              2:               q           p                                supuesto
              3   :            p                                            supuesto
              4   :                    p                                       i 3
              5   :                    q                                    MT 4,2
              6   :            q                                               e 5
              7   :            r                                               e 1,6
              8:           p        r                                         i 3 7
              9:       ( q                 p)     (p     r)                   i 2 8
             10 : (q           r)          (( q         p)       (p   r))     i 1 9




LI 2004–05                                               Cc Ia                                o
                                                                                       Deducci´n natural proposicional   2.8
24                                                   José A. Alonso


                         o
  DN: Regla de introducci´n del condicional

     • Ejemplo:      p∧q →r            p → (q → r):
             1: p q           r        premisa
             2:      p                 supuesto
             3:          q             supuesto
             4:          p q             i 2,3
             5:          r                e 1,4
             6:      q    r              i 3 5
             7: p        (q       r)     i 2 6




LI 2004–05                                   Cc Ia                            o
                                                                       Deducci´n natural proposicional    2.9




                         o
  DN: Regla de introducci´n del condicional

     • Ejemplo:      p → (q → r)          (p ∧ q) → r:
             1: p        (q       r)   premisa
             2   :   p q               supuesto
             3   :   p                   e1 2
             4   :   q                   e2 2
             5   :   q r                  e 1,3
             6   :   r                    e 5,4
             7 : (p q)            r      i 2 6




LI 2004–05                                   Cc Ia                           o
                                                                      Deducci´n natural proposicional    2.10
                                             Lógica informática (2004–05)                                        25


                         o
  DN: Regla de introducci´n del condicional

     • Ejemplo:        p→q          p ∧ r → q ∧ r:
             1: p        q            premisa
             2   :    p r             supuesto
             3   :    p                 e1 2
             4   :    r                 e2 2
             5   :    q                  e 1,3
             6   :    q r               i 5,4
             7: p r          q r            i 2 6




LI 2004–05                                      Cc Ia                              o
                                                                            Deducci´n natural proposicional   2.11




                           o
  DN: Reglas de la disyunci´n
 •                        o
     Reglas de la disyunci´n:
     • Reglas                                                   F             G
                                  o                o
                     de introducci´n de la disyunci´n:            ∨i            ∨i
                                                              F ∨G 1        F ∨G 2
                                                                     F      G
                                                                     .
                                                                     .
                                                                     .      .
                                                                            .
                                                                            .
     • Regla                 o                o
                 de eliminaci´n de la disyunci´n:
                                                            F ∨G     H      H
                                                                                   ∨e
                                                                     H
     • Ejemplo:        p∨q         q ∨ p:
             1: p q            premisa
             2:       p        supuesto
             3:       q p        i2 2

             4:       q        supuesto
             5:       q p        i1 4
             6: q p                 e 1,2 3,4 5

LI 2004–05                                      Cc Ia                              o
                                                                            Deducci´n natural proposicional   2.12
26                                                 José A. Alonso


                           o
  DN: Reglas de la disyunci´n

     • Ejemplo:     q→r          p ∨ q → p ∨ r:
             1: q     r            premisa
             2:     p q            supuesto
             3:      p             supuesto
             4:      p r             i1 3

             5:      q             supuesto
             6:      r                 e 1,5
             7:      p r             i2 6
             8:     p r             e 2,3 4,5 7
             9: p q        p r        i 2 8




LI 2004–05                                 Cc Ia                           o
                                                                    Deducci´n natural proposicional   2.13




                           o
  DN: Reglas de la disyunci´n

     • Ejemplo:     (p ∨ q) ∨ r      p ∨ (q ∨ r):
              1 : (p q) r            premisa
              2:    p q              supuesto
              3:     p               supuesto
              4:     p (q r)           i1 3

              5:     q               supuesto
              6:     q r               i1 5
              7:     p (q r)            intro 6
              8:    p (q r)           e 2,3 4,5 7

              9:    r                supuesto
             10 :   q r                i2 9
             11 :   p (q r)             intro 10
             12 : p (q r)             e 1,2 8,9 11



LI 2004–05                                 Cc Ia                           o
                                                                    Deducci´n natural proposicional   2.14
                                       Lógica informática (2004–05)                                              27


                           o
  DN: Reglas de la disyunci´n

     • Ejemplo      (distributiva): p ∧ (q ∨ r)        (p ∧ q) ∨ (p ∧ r):
              1 : p (q r)                 premisa
              2: p                         e1 1
              3: q r                       e2 1
              4:     q                    supuesto
              5:     p q                    i 2,4
              6:     (p q) (p r)             intro 5

              7:     r                    supuesto
              8:     p r                    i 2,7
              9:     (p q) (p r)             intro 8
             10 : (p q) (p r)               e 3,4 6,7 9




LI 2004–05                                Cc Ia                                    o
                                                                            Deducci´n natural proposicional   2.15




  DN: Regla de copia

     • Ejemplo      (usando la regla hyp):        p → (q → p):

             1:     p                supuesto
             2:         q            supuesto
             3:         p            hyp 1
             4:     q       p          i 2 3
             5: p       (q      p)     i 1 4




LI 2004–05                                Cc Ia                                    o
                                                                            Deducci´n natural proposicional   2.16
28                                                  José A. Alonso


                         o
  DN: Reglas de la negaci´n

 •                      o
     Extensiones de la l´gica para usar falso:
              o
     • Extensi´n                                  o
                        de la sintaxis: ⊥ es una f´rmula proposicional.
              o
     • Extensi´n                 a                                     o
                        de la sem´ntica: v(⊥) = 0 en cualquier valoraci´n.

 •                      o
     Reglas de la negaci´n:
     • Regla                                           ⊥
                              o
                  de eliminaci´n de lo falso:            ⊥e
                                                       F
     • Regla                                               F    ¬F
                              o              o
                  de eliminaci´n de la negaci´n:                   ¬e
                                                               ⊥
               o
     • Adecuaci´n                                     o
                            de las reglas de la negaci´n:
         * ⊥ |= F
         * {F, ¬F } |= ⊥




LI 2004–05                                  Cc Ia                                o
                                                                          Deducci´n natural proposicional   2.17




                         o
  DN: Reglas de la negaci´n

     • Ejemplo      ¬p ∨ q        p → q:
             1:     p q          premisa
             2:     p            supuesto
             3:             p    supuesto
             4:                    e 2,3
             5:         q          e 4

             6:         q        supuesto
             7:     q              e 1,3 5,6 6
             8: p       q           i 2 7




LI 2004–05                                  Cc Ia                                o
                                                                          Deducci´n natural proposicional   2.18
                                           Lógica informática (2004–05)                                        29


                         o
  DN: Reglas de la negaci´n

     • Regla                  o              o
                 de introducci´n de la negaci´n:
              F
              .
              .
              .
             ⊥
                ¬i
             ¬F
               o
     • Adecuaci´n:           Si F |= ⊥, entonces |= ¬F .
     • Ejemplo:      p → q, p → ¬q           ¬p:
             1: p        q, p       q       premisas
             2   :   p                      supuesto
             3   :       q                     e 1.2,2
             4   :   q                         e 1.1,2
             5   :                            e 4,3
             6:      p                       i 2 5



LI 2004–05                                    Cc Ia                              o
                                                                          Deducci´n natural proposicional   2.19




                         o
  DN: Reglas de la negaci´n

     • Ejemplo:      p → ¬p         ¬p:
             1: p            p   premisa
             2:      p           supuesto
             3:          p          e 1,2
             4:                    e 2,3
             5:      p            i 2 4




LI 2004–05                                    Cc Ia                              o
                                                                          Deducci´n natural proposicional   2.20
30                                                                José A. Alonso


                         o
  DN: Reglas de la negaci´n

     • Ejemplo           p ∧ ¬q → r, ¬r, p                 q:
             1: p                q       r ,   r, p        premisas
             2   :           q                             supuesto
             3   :       p           q                       i 1.3,2
             4   :       r                                    e 1.1,3
             5   :                                           e 4,1.2
             6:   q                                         i 2 5
             7: q                                             e 6
     • Ejemplo:          p → (q → r), p, ¬r                     ¬q:
             1 : p (q                    r) , p ,     r      premisas
             2: q r                                             e 1.1,1.2
             3: q                                            MT 1.3,2




LI 2004–05                                                Cc Ia                           o
                                                                                   Deducci´n natural proposicional   2.21




  DN: Reglas del bicondicional

     • Regla                                                                F →G G→F
                                  o
                     de introducci´n del bicondicional:                              ↔i
                                                                               F ↔G
     • Ejemplo:          p ∧ q ↔ q ∧ p:

                 1   :    p q                   supuesto
                 2   :    p                       e1 1
                 3   :    q                       e2 1
                 4   :    q p                     i 3,2
                 5: p q                  q p        i 1 4
                 6   :    q p                   supuesto
                 7   :    q                       e1 6
                 8   :    p                       e2 6
                 9   :    p q                     i 8,7
             10 : q p                    p q        i 6 9
             11 : p q                    q p        i 5,10
LI 2004–05                                                Cc Ia                           o
                                                                                   Deducci´n natural proposicional   2.22
                                        Lógica informática (2004–05)                                        31


  DN: Reglas del bicondicional

     • Reglas                                            F ↔G              F ↔G
                              o
                  de eliminaci´n del bicondicional:           ↔ e1              ↔ e2
                                                         F →G              G→F
     • Ejemplo:       p ↔ q, p ∨ q     p ∧ q:
              1: p        q, p q      premisas
              2   :   p               supuesto
              3   :   p q                e 1.1
              4   :   q                  e 3,2
              5   :   p q               i 2,4

              6   :   q               supuesto
              7   :   q p                e 1.1
              8   :   p                  e 7,6
              9   :   p q               i 8,6
             10 : p q                   e 1.2,2 5,6 9


LI 2004–05                                 Cc Ia                              o
                                                                       Deducci´n natural proposicional   2.23




  DN: Reglas derivadas: modus tollens

     • Regla                                            F → G ¬G
                  derivada de modus tollens (MT):                MT
                                                           ¬F
               o
     • Derivaci´n:

             1: F         G,   G     premisas
             2:       F              supuesto
             3:       G                 e 1.1,2
             4:                        e 3,1.2
             5:       F               i 2 4




LI 2004–05                                 Cc Ia                              o
                                                                       Deducci´n natural proposicional   2.24
32                                                 José A. Alonso


                                  o                 o
  DN: Reglas derivadas: introducci´n de doble negaci´n

     • Regla                                                     F
                            o                    o
               de introducci´n de la doble negaci´n:                ¬¬i
                                                                ¬¬F
               o
     • Derivaci´n:

             1: F             premisa
             2:         F     supuesto
             3:                 e 1,2
             4:         F      i 2 3




LI 2004–05                                 Cc Ia                                 o
                                                                          Deducci´n natural proposicional   2.25




                               o
  DN: Reglas derivadas: reducci´n al absurdo (RAA)

     • Regla             o
               de reducci´n al absurdo (RAA):
              ¬F
               .
               .
               .
               ⊥
                        RAA
               F
               o
     • Derivaci´n:

             1:     F           premisa
             2:         F       supuesto
             3:                    e 1,2
             4:   F              i 2 3
             5: F                  e 4




LI 2004–05                                 Cc Ia                                 o
                                                                          Deducci´n natural proposicional   2.26
                                            Lógica informática (2004–05)                                        33


  DN: Reglas derivadas: ley del tercio excluido (LEM)

     • Ley   del tercio excluido (LEM):                          LEM
                                                        F ∨ ¬F
               o
     • Derivaci´n:


             1:         (F       F)      supuesto
             2:         F                supuesto
             3:         F        F         i1 2
             4:                            e 3,1
             5:         F                  i 2 4
             6:     F        F              intro 5
             7:                            e 6,1
             8:   (F             F)        i 1 7
             9: F F                          e 8




LI 2004–05                                      Cc Ia                             o
                                                                           Deducci´n natural proposicional   2.27




  DN: Reglas derivadas: ley del tercio excluido (LEM)

     • Ejemplo:     p→q               ¬p ∨ q:

             1: p       q             premisa
             2: p       p             LEM
             3:     p                 supuesto
             4:     q                    e 1,3
             5:         p q             intro 4

             6:         p             supuesto
             7:         p q             intro 6
             8:     p q                e 2,3 5,6 7




LI 2004–05                                      Cc Ia                             o
                                                                           Deducci´n natural proposicional   2.28
34                                   José A. Alonso


                       o
  DN: Reglas de deducci´n natural

 •                    o
     Reglas de deducci´n natural:
                            o
                  Introducci´n                                       o
                                                            Eliminaci´n


     ∧              F G                               F ∧ G ∧e              F ∧ G ∧e
                    F ∧ G ∧i                            F     1
                                                                              G      2


                                                               F         G
               F              G                                 .
                                                                .        .
                                                                         .
     ∨
             F ∨ G ∨i1      F ∨ G ∨i2                 F ∨G     H         H
                                                               H                   ∨e
                     F
                     .
                     .                                  F    F →G→e
     →
                     G                                       G
                   F →G→i



LI 2004–05                   Cc Ia                                   o
                                                              Deducci´n natural proposicional   2.29




                       o
  DN: Reglas de deducci´n natural

 •                    o
     Reglas de deducci´n natural:
                       o
             Introducci´n                                 o
                                                 Eliminaci´n

                 F
                  .
                  .                             F      ¬F ¬e
      ¬
                 ⊥                                    ⊥
                 ¬F ¬i
      ⊥                                               ⊥ ⊥e
                                                      F

     ¬¬                                          ¬¬F ¬¬e
                                                  F

     ↔ F →G G→F ↔i                      F ↔G↔e
                                              1
                                                              F ↔G↔e
                                                                    2
          F ↔G                          F →G                  G→F
 •           o                     a                o
     Adecuaci´n y completitud del c´lculo de deducci´n natural.

LI 2004–05                   Cc Ia                                   o
                                                              Deducci´n natural proposicional   2.30
                                Lógica informática (2004–05)                                        35


            ıa
  Bibliograf´

     • C.              e                            o
         Badesa, I. Jan´ y R. Jansana Elementos de l´gica formal. (Ariel, 2000) Cap.
           a
      16: C´lculo deductivo.
     • R.    Bornat Using ItL Jape with X (Department of Computer Science, QMW, 1998)
     • J.A.  ıez      o        o                             a
           D´ Iniciaci´n a la L´gica, (Ariel, 2002) Cap. 4: C´lculo deductivo. De-
      ducibilidad.
     • M. Huth y M. Ryan Logic in computer science: modelling and reasoning about
      systems. (Cambridge University Press, 2000) Cap. 1: Propositional logic.
     • M. Fitting First-Order Logic and Automated Theorem Proving (2nd ed.)
      (Springer, 1995) Cap. 4.2: Natural deduction.
        Paniagua, J.L. S´nchez y F. Mart´ L´gica computacional (Thomson, 2003)
     • E.                a                 ın o
                    e                  o
      Cap. 3.6: El m´todo de la deducci´n natural.




LI 2004–05                         Cc Ia                              o
                                                               Deducci´n natural proposicional   2.31
36   José A. Alonso
Capítulo 3

Formas normales




                  37
38                                         José A. Alonso
 ´           ´
Logica informatica                                                                      Curso 2004–05




                              Tema 3: Formas normales




                                           e              e
                                        Jos´ A. Alonso Jim´nez
                                             e       o
                                        Andr´s Cord´n Franco




                                               o
                                   Grupo de L´gica Computacional
                                                       o
                      Dpto. de Ciencias de la Computaci´n e Inteligencia Artificial

                                     Universidad de Sevilla




LI 2004–05                                  Cc Ia                                    Formas normales   3.1




                o
  Equivalencia l´gica

 •    o
     F´rmulas equivalentes
     • Def.:                                                            o
               F y G son equivalentes si v(F ) = v(G) para toda valoraci´n v.
                   o
     • Representaci´n:    F ≡ G.
     • Ejemplos    de equivalencias notables:
        1.   Idempotencia: F ∨ F ≡ F ; F ∧ F ≡ F .
        2.   Conmutatividad: F ∨ G ≡ G ∨ F ; F ∧ G ≡ G ∧ F .
        3.   Asociatividad: F ∨ (G ∨ H) ≡ (F ∨ G) ∨ H ; F ∧ (G ∧ H) ≡ (F ∧ G) ∧ H.
        4.          o
             Absorci´n: F ∧ (F ∨ G) ≡ F ; F ∨ (F ∧ G) ≡ F .
        5.   Distributividad: F ∧ (G ∨ H) ≡ (F ∧ G) ∨ (F ∧ H) ;
                              F ∨ (G ∧ H) ≡ (F ∨ G) ∧ (F ∨ H).
        6.                o
             Doble negaci´n: ¬¬F ≡ F .
        7.   Leyes de De Morgan: ¬(F ∧ G) ≡ ¬F ∨ ¬G ; ¬(F ∨ G) ≡ ¬F ∧ ¬G.
        8.                    ıas: Si F es una tautolog´ F ∧ G ≡ G ; F ∨ G ≡ F .
             Leyes de tautolog´                        ıa,
        9.                                                    o
             Leyes de contradicciones: Si F es una contradicci´n F ∧ G ≡ F ; F ∨ G ≡ G.



LI 2004–05                                  Cc Ia                                    Formas normales   3.2
                                     Lógica informática (2004–05)                                      39


                o
  Equivalencia l´gica: propiedades

 •         o
     Relaci´n entre equivalencia y bicondicional:
     •F      ≡ G syss |= F ↔ G.

 •                a                          o
     Propiedades b´sicas de la equivalencia l´gica:
     • Reflexiva:     F ≡ F.
          e
     • Sim´trica:    Si F ≡ G, entonces G ≡ F .
     • Transitiva:    Si F ≡ G y G ≡ H, entonces F ≡ H.

 •                         o      o
     Principio de sustituci´n de f´rmulas equivalentes:
     • Prop.:           o                                   o                  o
             Si en la f´rmula F se sustituye una de sus subf´rmulas G por una f´rmula
          o                                        o                       o
      G l´gicamente equivalente a G, entonces la f´rmula obtenida, F , es l´gicamente
      equivalente a F .
     • Ejemplo:      F   =   ¬(p ∧ q) → ¬(p ∧ ¬¬r)
                     G   =   ¬(p ∧ q)
                     G   =   ¬p ∨ ¬q
                     F   =   (¬p ∨ ¬q) → ¬(p ∧ ¬¬r)
LI 2004–05                                    Cc Ia                                Formas normales   3.3




  Formas normales: Forma normal conjuntiva

 •   ´
     Atomos y literales:
     • Def.:       a
                Un ´tomo es un variable proposicional (p.e. p, q, . . .).
     • Def.:                     a                o
                Un literal es un ´tomo o su negaci´n (p.e. p, ¬p, q, ¬q, . . .).
             o
     • Notaci´n:                                 a
                     L, L1, L2, . . . representar´n literales.

 •   Forma normal conjuntiva:
     • Def.:        o            a                                              o
            Una f´rmula est´ en forma normal conjuntiva (FNC) si es una conjunci´n de
      disyunciones de literales; es decir, es de la forma
       (L1,1 ∨ . . . ∨ L1,n1 ) ∧ . . . ∧ (Lm,1 ∨ . . . ∨ Lm,nm ).
     • Ejemplos:                             a
                      (¬p ∨ q) ∧ (¬q ∨ p) est´ en FNC.
                                                a
                      (¬p ∨ q) ∧ (q → p) no est´ en FNC.
     • Def.:     o                                                    o
            Una f´rmula G es una forma normal conjuntiva (FNC) de la f´rmula F si G
         a
      est´ en forma normal conjuntiva y es equivalente a F .
     • Ejemplo:     Una FNC de ¬(p ∧ (q → r)) es (¬p ∨ q) ∧ (¬p ∨ ¬r).

LI 2004–05                                    Cc Ia                                Formas normales   3.4
40                                        José A. Alonso


                    a
  Formas normales: C´lculo de forma normal conjuntiva

 •                 a
     Algoritmo de c´lculo de forma normal conjuntiva:
     • Algoritmo:                  o
                 Aplicando a una f´rmula F los siguientes pasos se obtiene una forma
      normal conjuntiva de F , FNC(F ):
        1. Eliminar los bicondicionales usando la equivalencia
               A ↔ B ≡ (A → B) ∧ (B → A)                                                (1)
        2. Eliminar los condicionales usando la equivalencia
               A → B ≡ ¬A ∨ B                                                           (2)
        3. Interiorizar las negaciones usando las equivalencias
               ¬(A ∧ B) ≡ ¬A ∨ ¬B                                                       (3)
               ¬(A ∨ B) ≡ ¬A ∧ ¬B                                                       (4)
               ¬¬A ≡ A                                                                  (5)
        4. Interiorizar las disyunciones usando las equivalencias
               A ∨ (B ∧ C) ≡ (A ∨ B) ∧ (A ∨ C)                                          (6)
               (A ∧ B) ∨ C ≡ (A ∨ C) ∧ (B ∨ C)                                          (7)



LI 2004–05                                 Cc Ia                      Formas normales    3.5




                    a
  Formas normales: C´lculo de forma normal conjuntiva

     • Ejemplo        a
                  de c´lculo de una FNC de ¬(p ∧ (q → r)):
                 ¬(p ∧ (q → r))
             ≡   ¬(p ∧ (¬q ∨ r))        [por   (2)]
             ≡   ¬p ∨ ¬(¬q ∨ r)         [por   (3)]
             ≡   ¬p ∨ (¬¬q ∧ ¬r)        [por   (4)]
             ≡   ¬p ∨ (q ∧ ¬r)          [por   (5)]
             ≡   (¬p ∨ q) ∧ (¬p ∨ ¬r)   [por   (6)]
     • Ejemplo        a
                  de c´lculo de una FNC de (p → q) ∨ (q → p):
               (p → q) ∨ (q → p)
             ≡ (¬p ∨ q) ∨ (¬q ∨ p) [por (2)]
             ≡ ¬p ∨ q ∨ ¬q ∨ p




LI 2004–05                                 Cc Ia                      Formas normales    3.6
                                  Lógica informática (2004–05)                                       41


                    a
  Formas normales: C´lculo de forma normal conjuntiva

     • Ejemplo        a
                  de c´lculo de una FNC de (p ↔ q) → r:
             (p ↔ q) → r
       ≡     (p → q) ∧ (q → p) → r                                                   [por   (1)]
       ≡     ¬((p → q) ∧ (q → p)) ∨ r                                                [por   (2)]
       ≡     ¬((¬p ∨ q) ∧ (¬q ∨ p)) ∨ r                                              [por   (2)]
       ≡     (¬(¬p ∨ q) ∨ ¬(¬q ∨ p)) ∨ r                                             [por   (3)]
       ≡     ((¬¬p ∧ ¬q) ∨ (¬¬q ∧ ¬p)) ∨ r                                           [por   (4)]
       ≡     ((p ∧ ¬q) ∨ (q ∧ ¬p)) ∨ r                                               [por   (5)]
       ≡     (((p ∧ ¬q) ∨ q) ∧ ((p ∧ ¬q) ∨ ¬p)) ∨ r                                  [por   (6)]
       ≡     (((p ∨ q) ∧ (¬q ∨ q)) ∧ ((p ∨ ¬p) ∧ (¬q ∨ ¬p))) ∨ r                     [por   (7)]
       ≡     (((p ∨ q) ∧ (¬q ∨ q)) ∨ r) ∧ (((p ∨ ¬p) ∧ (¬q ∨ ¬p)) ∨ r)               [por   (7)]
       ≡     (((p ∨ q) ∨ r) ∧ ((¬q ∨ q) ∨ r)) ∧ (((p ∨ ¬p) ∨ r) ∧ ((¬q ∨ ¬p) ∨ r))   [por   (7)]
       ≡     (p ∨ q ∨ r) ∧ (¬q ∨ q ∨ r) ∧ (p ∨ ¬p ∨ r) ∧ (¬q ∨ ¬p ∨ r)
       ≡     (p ∨ q ∨ r) ∧ (¬q ∨ ¬p ∨ r)




LI 2004–05                                 Cc Ia                               Formas normales     3.7




  Formas normales: Forma normal disyuntiva

 •   Forma normal disyuntiva:
     • Def.:        o            a                                              o
            Una f´rmula est´ en forma normal disyuntiva (FND) si es una disyunci´n de
      conjunciones de literales; es decir, es de la forma
       (L1,1 ∧ . . . ∧ L1,n1 ) ∨ . . . ∨ (Lm,1 ∧ . . . ∧ Lm,nm ).
     • Ejemplos:                            a
                     (¬p ∧ q) ∨ (¬q ∧ p) est´ en FND.
                                               a
                     (¬p ∧ q) ∨ (q → p) no est´ en FND.
     • Def.:     o                                                    o
            Una f´rmula G es una forma normal disyuntiva (FND) de la f´rmula F si G
         a
      est´ en forma normal disyuntiva y es equivalente a F .
     • Ejemplo:    Una FND de ¬(p ∧ (q → r)) es ¬p ∨ (q ∧ ¬r).




LI 2004–05                                 Cc Ia                               Formas normales     3.8
42                                         José A. Alonso


                    a
  Formas normales: C´lculo de forma normal disyuntiva

 •                 a
     Algoritmo de c´lculo de forma normal disyuntiva:
     • Algoritmo:                  o
                 Aplicando a una f´rmula F los siguientes pasos se obtiene una forma
      normal disyuntiva de F , FND(F ):
        1. Eliminar los bicondicionales usando la equivalencia
               A ↔ B ≡ (A → B) ∧ (B → A)                                                (1)
        2. Eliminar los condicionales usando la equivalencia
               A → B ≡ ¬A ∨ B                                                           (2)
        3. Interiorizar las negaciones usando las equivalencias
               ¬(A ∧ B) ≡ ¬A ∨ ¬B                                                       (3)
               ¬(A ∨ B) ≡ ¬A ∧ ¬B                                                       (4)
               ¬¬A ≡ A                                                                  (5)
        4. Interiorizar las conjunciones usando las equivalencias
               A ∧ (B ∨ C) ≡ (A ∧ B) ∨ (A ∧ C)                                          (6)
               (A ∨ B) ∧ C ≡ (A ∧ C) ∨ (B ∧ C)                                          (7)



LI 2004–05                                  Cc Ia                     Formas normales     3.9




                    a
  Formas normales: C´lculo de forma normal disyuntiva

     • Ejemplo        a
                  de c´lculo de una FND de ¬(p ∧ (q → r)):
                 ¬(p ∧ (q → r))
             ≡   ¬(p ∧ (¬q ∨ r))   [por   (2)]
             ≡   ¬p ∨ ¬(¬q ∨ r)    [por   (3)]
             ≡   ¬p ∨ (¬¬q ∧ ¬r)   [por   (4)]
             ≡   ¬p ∨ (q ∧ ¬r)     [por   (5)]
     • Ejemplo        a
                  de c´lculo de una FND de ¬(¬p ∨ ¬q → ¬(p ∧ q)):
                 ¬(¬p ∨ ¬q → ¬(p ∧ q))
             ≡   ¬(¬(¬p ∨ ¬q) ∨ ¬(p ∧ q))           [por   (2)]
             ≡   ¬¬(¬p ∨ ¬q) ∧ ¬¬(p ∧ q)            [por   (4)]
             ≡   (¬p ∨ ¬q) ∧ (p ∧ q)                [por   (5)]
             ≡   (¬p ∧ (p ∧ q)) ∨ (¬q ∧ (p ∧ q))    [por   (7)]
             ≡   (¬p ∧ p ∧ q) ∨ (¬q ∧ p ∧ q)




LI 2004–05                                  Cc Ia                    Formas normales     3.10
                                     Lógica informática (2004–05)                                43


        o
  Decisi´n de validez mediante FNC

 •   Literales complementarios:
                                                            ¬p si L = p;
     • El    complementario de un literal L es Lc =
                                                            p  si L = ¬p.

 •                         o             ıas:
     Propiedades de reducci´n de tautolog´
     •F                                  ıa
             ∧ . . . ∧ Fn es una tautolog´ syss F1, . . . , Fn lo son.
       1

     •L                             ıa                                  u
        ∨ . . . ∨ Ln es una tautolog´ syss {L1, . . . , Ln} contiene alg´ n par de literales
       1
                                                           c
      complementarios (i.e. existen i, j tales que Li = Lj ).

 •                      o             ıas
     Algoritmo de decisi´n de tautolog´ mediante FNC
     • Entrada:          o
                    Una f´rmula F .
     • Procedimiento:


        1. Calcular una FNC de F .
                                                                      u
        2. Decidir si cada una de las conjunciones de la FNC tiene alg´ n par de literales
           complementarios.
LI 2004–05                                    Cc Ia                         Formas normales   3.11




        o
  Decisi´n de validez mediante FNC

 •                     o             ıas
     Ejemplos de decisi´n de tautolog´ mediante FNC
     • ¬(p                             ıa:
              ∧ (q → r)) no es tautolog´
              FNC(¬(p ∧ (q → r))) = (¬p ∨ q) ∧ (¬p ∨ ¬r)
              Contramodelos de ¬(p ∧ (q → r)):
                  v1 tal que v1(p) = 1 y v1(q) = 0
                  v2 tal que v2(p) = 1 y v2(r) = 1
     • (p                              ıa:
             → q) ∨ (q → p) es tautolog´
              FNC((p → q) ∨ (q → p)) = ¬p ∨ q ∨ ¬q ∨ p
     • (p                           ıa:
             ↔ q) → r no es tautolog´
              FNC((p ↔ q) → r) = (p ∨ q ∨ r) ∧ (¬q ∨ ¬p ∨ r)
              Contramodelos de (p ↔ q) → r:
                  v1 tal que v1(p) = 0, v1(q) = 0 y v1(r) = 0
                  v2 tal que v2(p) = 1, v2(q) = 1 y v2(r) = 0

LI 2004–05                                    Cc Ia                         Formas normales   3.12
44                                            José A. Alonso


        o
  Decisi´n de satisfacibilidad mediante FND

 •                         o
     Propiedades de reducci´n de satisfacibilidad:
     •F                                                       o
             ∨ . . . ∨ Fn es satisfacible syss alguna de las f´rmulas F1, . . . , Fn lo es.
       1

     •L                                                                    u
        ∧ . . . ∧ Ln es satisfacible syss {L1, . . . , Ln} no contiene ning´ n par de literales
       1
      complementarios.

 •                      o
     Algoritmo de decisi´n de satisfacibilidad mediante FND:
     • Entrada:          o
                    Una f´rmula F .
     • Procedimiento:


        1. Calcular una FND de F .
        2. Decidir si alguna de las disyunciones de la FND no tiene un par de literales
           complementarios.




LI 2004–05                                    Cc Ia                                   Formas normales   3.13




        o
  Decisi´n de satisfacibilidad mediante FND

 •                     o
     Ejemplos de decisi´n de satisfacibilidad mediante FND:
     • ¬(p    ∧ (q → r)) es satisfacible:
              FND(¬(p ∧ (q → r))) = ¬p ∨ (q ∧ ¬r)
              Modelos de ¬(p ∧ (q → r)):
                  v1 tal que v1(p) = 0
                  v2 tal que v2(q) = 1 y v2(r) = 0
     • ¬(¬p     ∨ ¬q → ¬(p ∧ q)) es insatisfacible:
              F N D(¬(¬p ∨ ¬q → ¬(p ∧ q))) = (¬p ∧ p ∧ q) ∨ (¬q ∧ p ∧ q)




LI 2004–05                                    Cc Ia                                   Formas normales   3.14
                                  Lógica informática (2004–05)                                   45


            ıa
  Bibliograf´

     • C.                  e                            o
             Badesa, I. Jan´ y R. Jansana Elementos de l´gica formal. (Ariel, 2000)
                                   o
             Cap. 8 (Equivalencia l´gica) y 10 (Formas normales).

     • M.    Ben–Ari, Mathematical logic for computer science (2nd ed.). (Springer, 2001)
             Cap. 2 (Propositional calculus: formulas, models, tableaux).

     • J.A.    ıez       o        o
              D´ Iniciaci´n a la L´gica, (Ariel, 2002)
                        a                            o
             Cap. 3 (Sem´ntica formal. Consecuencia l´gica).

     • M. Huth y M. Ryan Logic in computer science: modelling and reasoning about
      systems. (Cambridge University Press, 2000)
             Cap. 1 (Propositional logic).

     • E.                    a               ın o
             Paniagua, J.L. S´nchez y F. Mart´ L´gica computacional (Thomson, 2003)
             Cap. 4.4 (Formas normales).


LI 2004–05                                   Cc Ia                          Formas normales   3.15
46   José A. Alonso
Capítulo 4

Tableros semánticos




                  47
48                                        José A. Alonso
 ´           ´
Logica informatica                                                                        Curso 2004–05




                                              a
                          Tema 4: Tableros sem´nticos




                                          e              e
                                       Jos´ A. Alonso Jim´nez
                                            e       o
                                       Andr´s Cord´n Franco




                                              o
                                  Grupo de L´gica Computacional
                                                      o
                     Dpto. de Ciencias de la Computaci´n e Inteligencia Artificial

                                    Universidad de Sevilla




LI 2004–05                                Cc Ia                                                 a
                                                                                    Tableros sem´nticos   4.1




            o                  a
  Demostraci´n por tableros sem´nticos

 •             o      o            o
     Demostraci´n de f´rmula tautol´gica:
                 o
     • Demostraci´n:

             ¬p ∨ ¬q → ¬(p ∧ q) es una tautolog´  ıa
             syss {¬(¬p ∨ ¬q → ¬(p ∧ q))} es inconsistente
             syss {¬p ∨ ¬q, ¬¬(p ∧ q)} es inconsistente
             syss {¬p ∨ ¬q, p ∧ q} es inconsistente
             syss {p, q, ¬p ∨ ¬q} es inconsistente
             syss {p, q, ¬p} es inconsistente y
                  {p, q, ¬q} es inconsistente




LI 2004–05                                Cc Ia                                                 a
                                                                                    Tableros sem´nticos   4.2
                                  Lógica informática (2004–05)                                     49


            o                  a
  Demostraci´n por tableros sem´nticos

     • Tablero      a
                 sem´ntico cerrado:


                                      ¬((¬p ∨ ¬q) → ¬(p ∧ q))

                                         ¬p ∨ ¬q, ¬¬(p ∧ q)

                                           ¬p ∨ ¬q, p ∧ q

                                            ¬p ∨ ¬q, p, q

                                          ¬p, p, q   ¬q, p, q

                                         Cerrada Cerrada




LI 2004–05                               Cc Ia                                         a
                                                                           Tableros sem´nticos   4.3




          o                  a
  Refutaci´n por tableros sem´nticos

 •           o      o               o
     Refutaci´n de f´rmula no tautol´gica:
               o
     • Refutaci´n:

             ¬p ∨ ¬q → ¬(p ∧ r) es una tautolog´  ıa
             syss {¬(¬p ∨ ¬q → ¬(p ∧ r))} es inconsistente
             syss {¬p ∨ ¬q, ¬¬(p ∧ r)} es inconsistente
             syss {¬p ∨ ¬q, p ∧ r} es inconsistente
             syss {p, r, ¬p ∨ ¬q} es inconsistente
             syss {p, r, ¬p} es inconsistente y
                  {p, r, ¬q} es inconsistente
     • Contramodelos      de ¬p ∨ ¬q → ¬(p ∧ r):
             Las valoraciones v tales que v(p) = 1, v(q) = 0 y v(r) = 1.
     • Una   forma normal disyuntiva de ¬(¬p ∨ ¬q → ¬(p ∧ r)):
             p ∧ r ∧ ¬q




LI 2004–05                               Cc Ia                                         a
                                                                           Tableros sem´nticos   4.4
50                                          José A. Alonso


          o                  a
  Refutaci´n por tableros sem´nticos

     • Tablero       a
                  sem´ntico:


                                        ¬((¬p ∨ ¬q) → ¬(p ∧ r))

                                           ¬p ∨ ¬q, ¬¬(p ∧ r)

                                              ¬p ∨ ¬q, p ∧ r

                                               ¬p ∨ ¬q, p, r

                                             ¬p, p, r   ¬q, p, r

                                            Cerrada Abierta




LI 2004–05                                 Cc Ia                                            a
                                                                                Tableros sem´nticos   4.5




        o
  Notaci´n uniforme: Literales y dobles negaciones

 •   Literales
     • Un                   a                o        a
              literal es un ´tomo o la negaci´n de un ´tomo (p.e. p, ¬p, q, ¬q, . . .).

 •   Dobles negaciones
     •F                         o
             es una doble negaci´n si es de la forma ¬¬G.
     • Ley                   o
              de doble negaci´n: Si F es ¬¬G, entonces F ≡ G.




LI 2004–05                                 Cc Ia                                            a
                                                                                Tableros sem´nticos   4.6
                                         Lógica informática (2004–05)                                                51


        o             o
  Notaci´n uniforme: f´rmulas alfa y beta
 •    o
     F´rmulas alfa
     • Las      o
               f´rmulas alfa, junto con sus componentes, son
                F             F1        F2
                A1 ∧ A2       A1        A2
                ¬(A1 → A2) A1           ¬A2
                ¬(A1 ∨ A2) ¬A1          ¬A2
                A1 ↔ A2       A1 → A2 A2 → A1
     • Si              o
             F es una f´rmula alfa y sus componentes son F1 y F2, entonces F ≡ F1 ∧ F2.

 •    o
     F´rmulas beta
     • Las      o
               f´rmulas beta, junto con sus componentes, son
                F            F1           F2
                B1 ∨ B2      B1           B2
                B1 → B2      ¬B1          B2
                ¬(B1 ∧ B2) ¬B1            ¬B2
                ¬(B1 ↔ B2) ¬(B1 → B2) ¬(B2 → B1)
     • Si              o
             F es una f´rmula beta y sus componentes son F1 y F2, entonces F ≡ F1 ∨ F2.

LI 2004–05                                        Cc Ia                                                  a
                                                                                             Tableros sem´nticos   4.7




            o
  Completaci´n de tableros

 •                              o
     Procedimiento de completaci´n de tableros:
                                   o               a
     Un tablero de un conjunto de f´rmulas S es un ´rbol construido mediante las reglas:
            a          ´
       * El ´rbol cuyo unico nodo tiene como etiqueta S es un tablero de S.
       * Sea T un tablero de S y S1 la etiqueta de una hoja de T .
                                                                                          o                 o
             1. Si S1 es cerrado (es decir, es un conjunto de literales que contiene una f´rmula y su negaci´n),
                             a                 n
                entonces el ´rbol obtenido a˜ adiendo como hijo de S1 el nodo etiquetado con cerrado es un
                tablero de S.
                                                                                             o                 o
             2. Si S1 es abierto (es decir, es un conjunto de literales que no contiene una f´rmula y su negaci´n),
                             a                  n
                entonces el ´rbol obtenido a˜ adiendo como hijo de S1 el nodo etiquetado con abierto es un
                tablero de S.
                                               o                    a               n
             3. Si S1 contiene una doble negaci´n ¬¬F , entonces el ´rbol obtenido a˜ adiendo como hijo de S1
                el nodo etiquetado con (S1 {¬¬F }) ∪ {F } es un tablero de S.
                                    o                                                  a               n
             4. Si S1 contiene una f´rmula alfa F de componentes F1 y F2 , entonces el ´rbol obtenido a˜ adiendo
                como hijo de S1 el nodo etiquetado con (S1 {F }) ∪ {F1 , F2 } es un tablero de S.
                                    o                                                  a               n
             5. Si S1 contiene una f´rmula beta F de componentes F1 y F2 , entonces el ´rbol obtenido a˜ adiendo
                como hijos de S1 los nodos etiquetados con (S1 {F }) ∪ {F1 } y (S1 {F }) ∪ {F2 } es un tablero
                de S.



LI 2004–05                                        Cc Ia                                                  a
                                                                                             Tableros sem´nticos   4.8
52                                                 José A. Alonso


  Teorema por tableros

           Un tablero completo de S es un tablero de S al que no se le puede aplicar
     • Def.:

                                      o
      ninguna de las reglas de expansi´n; es decir, todas sus hojas son abiertas o cerradas.
     • Def.:                                               a
               Un tablero es cerrado si todas sus hojas est´n etiquetadas con cerrado.
     • Def.:      o                                                 a
            Una f´rmula F es un teorema (mediante tableros sem´nticos) si tiene una
      prueba mediante tableros; es decir, si {¬F } tiene un tablero completo cerrado.
      Se representa por T ab F .
     • Ejemplos:

               T ab   ¬p ∨ ¬q → ¬(p ∧ q)
               T ab   ¬p ∨ ¬q → ¬(p ∧ r)
     • Teor.:     a                     a
              El c´lculo de tableros sem´nticos es adecuado y completo; es decir,
             Adecuado: T ab F     =⇒      |= F
             Completo: |= F       =⇒        T ab F

     • Tableros y formas normales disyuntivas: Si {L1,1, . . . , L1,n1 }, . . . , {Lm,1, . . . , Lm,nm }
      son los nodos abiertos del tablero completo de F , entonces una forma normal disyun-
      tiva de F es (L1,1 ∧ . . . ∧ L1,n1 ) ∨ . . . ∨ (Lm,1 ∧ . . . ∧ Lm,nm ).


LI 2004–05                                         Cc Ia                                             a
                                                                                         Tableros sem´nticos    4.9




         o
  Deducci´n por tableros

     • Def.:     o                                            a
             La f´rmula F es deducible (mediante tableros sem´nticos) a partir del con-
                 o
      junto de f´rmulas S si existe una prueba mediante tableros de F a partir de S; es
      decir, existe un tablero completo cerrado de S ∪ {¬F }.
      Se representa por S T ab F .
     • Ejemplo:       {p → q, q → r}               p→r
                                            T ab



                                                    p → q, q → r, ¬(p → r)

                                                       p → q, q → r, p, ¬r



                                          p → q, ¬q, p, ¬r            p → q, r, p, ¬r

                                                                         Cerrada
                                    ¬p, ¬q, p, ¬r      q, ¬q, p, ¬r

                                       Cerrada             Cerrada
     • Teor.:   S             F syss S |= F .
                       T ab
LI 2004–05                                         Cc Ia                                            a
                                                                                        Tableros sem´nticos    4.10
                                    Lógica informática (2004–05)                                      53


         o
  Deducci´n por tableros

     • Ejemplo:   {p ∨ q}          p∧q
                            T ab



                                                   p ∨ q, ¬(p ∧ q)


                                      p, ¬(p ∧ q)             q, ¬(p ∧ q)

                                    p, ¬p          p, ¬q    q, ¬p    q, ¬q

                                   Cerrada Abierta Abierta Cerrada
     • Contramodelos    de {p ∨ q}              p∧q
                                         T ab

             las valoraciones v1 tales que v1(p) = 1 y v1(q) = 0
             las valoraciones v2 tales que v2(p) = 0 y v2(q) = 1




LI 2004–05                                      Cc Ia                                    a
                                                                             Tableros sem´nticos   4.11




            ıa
  Bibliograf´

 •   Ben–Ari, M. Mathematical Logic for Computer Science (2nd ed.)
     (Springer, 2001)
     • Cap.   2: Propositional calculus: formulas, models, tableaux

 •   Fitting, M. First-Order Logic and Automated Theorem Proving (2nd
     ed.) (Springer, 1995)
     • Cap.   3: Semantic tableaux aund resolution

 •         a                        ıguez, M. Matem´tica discreta y l´gica
     Hortal´, M.T.; Leach, J. y Rogr´              a                 o
           a
     matem´tica (Ed. Complutense, 1998)
     • Cap.                    a               o
              7.9: Tableaux sem´nticos par la l´gica de proposiciones

 •   Nerode, A. y Shore, R.A. Logic for Applications (Springer, 1997)
     • Cap.   1.4: Tableau proofs in propositional calculus

 •                      a               ın o
     E. Paniagua, J.L. S´nchez y F. Mart´ L´gica computacional (Thomson,
     2003)
     • Cap.         e                       a
              4.3: M´todos de las tablas sem´nticas
LI 2004–05                                      Cc Ia                                    a
                                                                             Tableros sem´nticos   4.12
54   José A. Alonso
Capítulo 5

Resolución proposicional




                  55
56                                             José A. Alonso
 ´           ´
Logica informatica                                                                           Curso 2004–05




                                                      o
                                      Tema 5: Resoluci´n
                                        proposicional




                                              e              e
                                           Jos´ A. Alonso Jim´nez
                                                e       o
                                           Andr´s Cord´n Franco




                                                 o
                                     Grupo de L´gica Computacional
                                                         o
                        Dpto. de Ciencias de la Computaci´n e Inteligencia Artificial

                                         Universidad de Sevilla




LI 2004–05                                   Cc Ia                                        o
                                                                                  Resoluci´n proposicional   5.1




   o
  L´gica clausal: sintaxis

 •                   o
     Sintaxis de la l´gica clausal
     • Un    a
             ´tomo es una variable proposicional.
                             a
             Variables sobre ´tomos: p, q, r, . . . , p1, p2, . . ..
     • Un                  a                      o        a
             literal es un ´tomo (p) o la negaci´n de un ´tomo (¬p).
              Variables sobre literales: L, L1, L2, . . ..
     • Una      a
              cl´usula es un conjunto finito de literales.
                               a
             Variables sobre cl´usulas: C, C1, C2, . . ..
     • La      a         ıa                  ıo
             cl´usula vac´ es el conjunto vac´ de literales.
                   a         ıa
              La cl´usula vac´ se representa por .
     • Conjuntos               a
                   finitos de cl´usulas.
                                                   a
             Variables sobre conjuntos finitos de cl´usulas: S, S1, S2, . . ..




LI 2004–05                                   Cc Ia                                        o
                                                                                  Resoluci´n proposicional   5.2
                                   Lógica informática (2004–05)                                               57


   o                 a
  L´gica clausal: sem´ntica

 •      a             o
     Sem´ntica de la l´gica clausal
     • Def.:               o                           o
               Una valoraci´n de verdad es una aplicaci´n v : VP → B.
     • Def.:                                                    o
               El valor de un literal positivo p en una valoraci´n v es v(p).
     • Def.:                                                     o
               El valor de un literal negativo ¬p en una valoraci´n v es
                        1, si v(p) = 0;
             v(¬p) =
                        0, si v(p) = 1.
     • Def.:                     a                       o
              El valor de una cl´usula C en una valoraci´n v es
                       1, si existe un L ∈ C tal que v(L) = 1;
             v(C) =
                       0, en caso contrario.
     • Def.:                                a                        o
               El valor de un conjunto de cl´usulas S en una valoraci´n v es
                       1, si para toda C ∈ S, v(C) = 1
             v(S) =
                       0, en caso contrario.
     • Prop.:                        o
                En cualquier valoraci´n v, v( ) = 0.


LI 2004–05                                Cc Ia                                          o
                                                                                 Resoluci´n proposicional   5.3




    a          o
  Cl´usulas y f´rmulas

 •                         a          o
     Equivalencias entre cl´usulas y f´rmulas
     • Def.:        a             o
            Una cl´usula C y una f´rmula F son equivalentes si v(C) = v(F ) para
                        o
      cualquier valoraci´n v.
     • Def.:                  a               o
            Un conjunto de cl´usulas S y una f´rmula F son equivalentes si v(S) = v(F )
                             o
      para cualquier valoraci´n v.
     • Def.:                   a                           o
            Un conjunto de cl´usulas S y un conjunto de f´rmulas {F1, . . . , Fn} son equiva-
                                        o
      lentes si, para cualquier valoraci´n v, v(S) = 1 syss v es un modelo de {F1, . . . , Fn}.

 •        a          o
     De cl´usulas a f´rmulas
     • Prop.:        a                                                o
                La cl´usula {L1, L2, . . . , Ln} es equivalente a la f´rmula L1 ∨ L2 ∨ . . . ∨ Ln.
     • Prop.:                   a
              El conjunto de cl´usulas {{L1,1, . . . , L1,n1 }, . . . , {Lm,1, . . . , Lm,nm }} es equi-
                    o
      valente a la f´rmula (L1,1 ∨ . . . ∨ L1,n1 ) ∧ . . . ∧ (Lm,1 ∨ . . . ∨ Lm,nm ).




LI 2004–05                                Cc Ia                                          o
                                                                                 Resoluci´n proposicional   5.4
58                                       José A. Alonso


    a          o
  Cl´usulas y f´rmulas
 •       o           a
     De f´rmulas a cl´usulas (forma clausal)
     • Def.:                             o                            a
               Una forma clausal de una f´rmula F es un conjunto de cl´usulas equivalente
      a F.
     • Prop.:   Si (L1,1 ∨ . . . ∨ L1,n1 ) ∧ . . . ∧ (Lm,1 ∨ . . . ∨ Lm,nm ) es una forma nor-
      mal conjuntiva de la f´rmula F .   o                   Entonces, una forma clausal de F es
      {{L1,1, . . . , L1,n1 }, . . . , {Lm,1, . . . , Lm,nm }}.
     • Ejemplos:


         * Una forma clausal de ¬(p ∧ (q → r)) es {{¬p, q}, {¬p, ¬r}}.
         * Una forma clausal de p → q es {{¬p, q}}.
                a                                                  o
         * La cl´usula {{¬p, q}, {r}} es una forma clausal de las f´rmulas (p → q) ∧ r y
           ¬¬r ∧ (¬q → ¬p).

           Una forma clausal de un conjunto de f´rmulas S es un conjunto de cl´usulas
     • Def.:                                    o                             a
      equivalente a S.
     • Prop.:Si S1, . . . , Sn son formas clausales de F1, . . . , Fn, entonces S1 ∪ . . . ∪ Sn es
      una forma clausal de {F1, . . . , Fn}.
LI 2004–05                             Cc Ia                                        o
                                                                            Resoluci´n proposicional   5.5




  Modelos, consistencia y consecuencia

 •   Modelos, consistencia y consecuencia
     • Def.:               o                                  a
               Una valoraci´n v es modelo de un conjunto de cl´usulas S si v(S) = 1.
     • Ej.:              o
              La valoraci´n v tal que v(p) = v(q) = 1 es un modelo de {{¬p, q}, {p, ¬q}}.
     • Def.:                 a
            Un conjunto de cl´usulas es consistente si tiene modelos e inconsistente, en
      caso contrario.
     • Ejemplos:


         * {{¬p, q}, {p, ¬q}} es consistente.
         * {{¬p, q}, {p, ¬q}, {p, q}, {¬p, ¬q}} es inconsistente.

     • Prop.:   Si   ∈ S, entonces S es inconsistente.
     • Def.:   S |= C si para todo modelo v de S, v(C) = 1.




LI 2004–05                             Cc Ia                                        o
                                                                            Resoluci´n proposicional   5.6
                                         Lógica informática (2004–05)                                          59


         o                                        a
  Reducci´n de consecuencia a inconsistencia de cl´usulas

 •          o                                        a
     Reducci´n de consecuencia a inconsistencia de cl´usulas:
     • Prop:                                                 o
                Sean S1, . . . , Sn formas clausales de las f´rmulas F1, . . . , Fn.
         * {F1, . . . , Fn} es consistente syss S1 ∪ . . . ∪ Sn es consistente.
         * Si S es una forma clausal de ¬G, entonces son equivalentes
             1. {F1, . . . , Fn} |= G.
             2. {F1, . . . , Fn¬G} es inconsistente.
             3. S1 ∪ . . . ∪ Sn ∪ S es inconsistente.

     • Ejemplo:     {p → q, q → r} |= p → r syss
                    {{¬p, q}, {¬q, r}, {p}, {¬r}} es inconsistente.




LI 2004–05                                      Cc Ia                                     o
                                                                                  Resoluci´n proposicional   5.7




                   o
  Regla de resoluci´n

 •   Reglas de inferencia:
     • Reglas   habituales:
                       p → q, p                                {¬p, q}, {p}
       Modus Ponens:
                           q                                        {q}
                       p → q, ¬q                               {¬p, q}, {¬q}
       Modus Tollens:
                           ¬p                                       {¬p}
                       p → q, q → r                            {¬p, q}, {¬q, r}
       Encadenamiento:
                           p→r                                      {¬p, r}
     • Regla              o
               de resoluci´n proposicional:
       {p1, . . . , r, . . . , pm}, {q1, . . . , ¬r, . . . , qn}
                    {p1, . . . , pm, q1, , . . . , qn}




LI 2004–05                                      Cc Ia                                     o
                                                                                  Resoluci´n proposicional   5.8
60                                        José A. Alonso


                   o
  Regla de resoluci´n

 •   Resolventes
           Sean C1 una cl´usula, L un literal de C1 y C2 una cl´usula que contiene el
     • Def.:              a                                    a
      complementario de L. La resolvente de C1 y C2 respecto de L es
           ResL(C1, C2) = (C1 {L}) ∪ (C2 {Lc})
     • Ejemplos:    Resq ({p, q}, {¬q, r})      =   {p, r}
                    Resq ({q, ¬p}, {p, ¬q})     =   {p, ¬p}
                    Resp({q, ¬p}, {p, ¬q})      =   {q, ¬q}
                    Resp({q, ¬p}, {q, p})       =   {q}
                    Resp({p}, {¬p})             =

 •                        a
     Resolventes de dos cl´usulas:
     • Def.:   Res(C1, C2) es el conjunto de las resolventes entre C1 y C2
     • Ejemplos:    Res({¬p, q}, {p, ¬q}) = {{p, ¬p}, {q, ¬q}}
                    Res({¬p, q}, {p, q}) = {{q}}
                    Res({¬p, q}, {q, r}) = ∅
     • Nota:      ∈ Res({p, q}, {¬p, ¬q})
LI 2004–05                              Cc Ia                                    o
                                                                         Resoluci´n proposicional    5.9




                             o
  Demostraciones por resoluci´n

 •                      o              o
     Ejemplo de refutaci´n por resoluci´n:
               o
     • Refutaci´n    de {{p, q}, {¬p, q}, {p, ¬q}, {¬p, ¬q}} :
             1   {p, q}        o
                            Hip´tesis
             2   {¬p, q}       o
                            Hip´tesis
             3   {p, ¬q}       o
                            Hip´tesis
             4   {¬p, ¬q}      o
                            Hip´tesis
             5   {q}        Resolvente de 1 y 2
             6   {¬q}       Resolvente de 3 y 4
             7              Resolvente de 5 y 6




LI 2004–05                              Cc Ia                                   o
                                                                        Resoluci´n proposicional    5.10
                                   Lógica informática (2004–05)                                       61


                             o
  Demostraciones por resoluci´n

 •   Definiciones
     • Sea                      a
             S un conjunto de cl´usulas.
     • La      o                                    o              o          a
         sucesi´n (C1, . . . , Cn) es una demostraci´n por resoluci´n de la cl´usula C a
      partir de S si C = Cn y para todo i ∈ {1, ..., n} se verifica una de las siguientes
      condiciones:
         * Ci ∈ S;
         * existen j, k < i tales que Ci es una resolvente de Cj y Ck

     • La  a                                   o                                        o
         cl´usula C es demostrable por resoluci´n a partir de S si existe una demostraci´n
                  o
      por resoluci´n de C a partir de S.
     • Una         o              o                        o              o          a
           refutaci´n por resoluci´n de S es una demostraci´n por resoluci´n de la cl´usula
         ıa
      vac´ a partir de S.
     • Se                                    o                        o              o
         dice que S es refutable por resoluci´n si existe una refutaci´n por resoluci´n a
      partir de S.


LI 2004–05                              Cc Ia                                   o
                                                                        Resoluci´n proposicional   5.11




                             o
  Demostraciones por resoluci´n

 •                              o
     Demostraciones por resoluci´n
     • Def.:                                             o
            Sean S1, . . . , Sn formas clausales de las f´rmulas F1, . . . , Fn y
                  S una forma clausal de ¬F
                      o                 o                                              o
      Una demostraci´n por resoluci´n de F a partir de {F1, . . . , Fn} es una refutaci´n
                  o
      por resoluci´n de S1 ∪ . . . ∪ Sn ∪ S.
     • Def.:    o                                   o
            La f´rmula F es demostrable por resoluci´n a partir de {F1, . . . , Fn} si existe
                     o                  o
      una demostraci´n por resoluci´n de F a partir de {F1, . . . , Fn}.
      Se representa por {F1, . . . , Fn} Res F .
     • Ejemplo:              o              o
                   Demostraci´n por resoluci´n de p ∧ q a partir de {p ∨ q, p ↔ q}
             1   {p, q}        o
                            Hip´tesis
             2   {¬p, q}       o
                            Hip´tesis
             3   {p, ¬q}       o
                            Hip´tesis
             4   {¬p, ¬q}      o
                            Hip´tesis
             5   {q}        Resolvente de 1 y 2
             6   {¬q}       Resolvente de 3 y 4
             7              Resolvente de 5 y 6

LI 2004–05                              Cc Ia                                   o
                                                                        Resoluci´n proposicional   5.12
62                                         José A. Alonso


          o                              o
  Adecuaci´n y completitud de la resoluci´n

 •   Propiedades:
     • Si    C es una resolvente de C1 y C2, entonces {C1, C2} |= C.
     • Si      ∈ S, entonces S es inconsistente.
     • Si                     a
             el conjunto de cl´usulas S es refutable, entonces S es inconsistente.
     • Teor.:        a                 o
                 El c´lculo de resoluci´n es adecuado y completo; es decir,
               Adecuado:       S Res F      =⇒     S |= F
               Completo:       S |= F       =⇒     S Res F




LI 2004–05                               Cc Ia                                   o
                                                                         Resoluci´n proposicional   5.13




             o            o
  Argumentaci´n y resoluci´n

     • Problema     de los animales: Se sabe que
                                                            ıferos.
        1. Los animales con pelo y los que dan leche son mam´
                  ıferos que tienen pezu˜ as o que rumian son ungulados.
        2. Los mam´                     n
        3. Los ungulados de cuello largo son jirafas.
        4. Los ungulados con rayas negras son cebras.
                                                n
      Se observa un animal que tiene pelos, pezu˜ as y rayas negras. Por consiguiente, se
      concluye que el animal es una cebra.
                  o
     • Formalizaci´n:

        { tiene pelos ∨ da leche → es mam´   ıfero,
          es mam´                    n
                  ıfero ∧ (tiene pezu˜ as ∨ rumia) → es ungulado,
          es ungulado ∧ tiene cuello largo → es jirafa,
          es ungulado ∧ tiene rayas negras → es cebra,
                                   n
          tiene pelos ∧ tiene pezu˜ as ∧ tiene rayas negras }                 Res   es cebra




LI 2004–05                               Cc Ia                                   o
                                                                         Resoluci´n proposicional   5.14
                                 Lógica informática (2004–05)                                         63


             o            o
  Argumentaci´n y resoluci´n

               o
     • Resoluci´n:

        1    {¬ tiene pelos, es mam´  ıfero}                      o
                                                               Hip´tesis
        2    {¬ da leche, es mam´  ıfero}                         o
                                                               Hip´tesis
        3    {¬es mam´                     n
                        ıfero, ¬tiene pezu˜ as, es ungulado}      o
                                                               Hip´tesis
        4    {¬es mam´  ıfero, ¬rumia, es ungulado}               o
                                                               Hip´tesis
        5    {¬es ungulado, ¬tiene cuello largo, es jirafa}       o
                                                               Hip´tesis
        6    {¬es ungulado, ¬tiene rayas negras, es cebra}        o
                                                               Hip´tesis
        7    {tiene pelos}                                        o
                                                               Hip´tesis
        8                 n
             {tiene pezu˜ as}                                     o
                                                               Hip´tesis
        9    {tiene rayas negras}                                 o
                                                               Hip´tesis
       10    {¬es cebra}                                          o
                                                               Hip´tesis
       11    {es mam´ ıfero}                                   Resolvente   de   1y7
       12                   n
             {¬tiene pezu˜ as, es ungulado}                    Resolvente   de   11 y 3
       13    {es ungulado}                                     Resolvente   de   12 y 8
       14    {¬tiene rayas negras, es cebra}                   Resolvente   de   13 y 6
       15    {es cebra}                                        Resolvente   de   14 y 9
       16                                                      Resolvente   de   15 y 10


LI 2004–05                            Cc Ia                                     o
                                                                        Resoluci´n proposicional   5.15




            ıa
  Bibliograf´

1. M. Ben–Ari, Mathematical logic for computer science (2nd ed.).
   (Springer, 2001).
   Cap. 4: Propositional calculus: resolution and BDDs.
2. C.–L. Chang y R.C.–T. Lee Symbolic Logic and Mechanical Theorem
   Proving (Academic Press, 1973).
   Cap. 5.2: The resolution principle for the proposicional logic.
3. N.J. Nilsson Inteligencia artificial (Una nueva s´   ıntesis) (McGraw–
   Hill, 2001).
                       o         a
   Cap. 14: La resoluci´n en el c´lculo proposicional.
                       a                 ın o
4. E. Paniagua, J.L. S´nchez y F. Mart´ L´gica computacional (Thom-
   son, 2003).
                                     o      o
   Cap. 5.7: El principio de resoluci´n en l´gica proposicional.
         o                                        a
5. U. Sch¨ning Logic for Computer Scientists (Birk¨user, 1989).
   Cap. 1.5: Resolution.

LI 2004–05                            Cc Ia                                     o
                                                                        Resoluci´n proposicional   5.16
64   José A. Alonso
Capítulo 6

Sintaxis y semántica de la lógica de
primer orden




                    65
66                                          José A. Alonso
 ´           ´
Logica informatica                                                                               Curso 2004–05




                                               a
                        Tema 6: Sintaxis y sem´ntica de
                               o
                           la l´gica de primer orden




                                            e              e
                                         Jos´ A. Alonso Jim´nez
                                              e       o
                                         Andr´s Cord´n Franco




                                               o
                                   Grupo de L´gica Computacional
                                                       o
                      Dpto. de Ciencias de la Computaci´n e Inteligencia Artificial

                                        Universidad de Sevilla




LI 2004–05                      Cc Ia                                      a             o
                                                             Sintaxis y sem´ntica de la l´gica de primer orden   6.1




          o                   o
  Limitaci´n expresiva de la l´gica proposicional

     • Ejemplo                             a                a
               1: Si Sevilla es vecina de C´diz, entonces C´diz es vecina de Sevilla.
                            a                 a
      Sevilla es vecina de C´diz. Por tanto, C´diz es vecina de Sevilla
                   o
     • Representaci´n       o
                        en l´gica proposicional:
             {SvC → CvS,      SvC} |= CvS
     • Ejemplo2: Si una ciudad es vecina de otra, entonces la segunda es vecina de la
                                     a                 a
      primera. Sevilla es vecina de C´diz. Por tanto, C´diz es vecina de Sevilla
                   o
     • Representaci´n       o
                        en l´gica proposicional: Imposible
                   o
     • Representaci´n       o
                        en l´gica de primer orden:
             {(∀x)(∀y)[vecina(x, y) → vecina(y, x)],         vecina(Sevilla, Cadiz)}
             |= vecina(Cadiz, Sevilla)




LI 2004–05                      Cc Ia                                      a             o
                                                             Sintaxis y sem´ntica de la l´gica de primer orden   6.2
                                    Lógica informática (2004–05)                                                                                                                                                                                                        67


                            o
  Potencia expresiva de la l´gica de primer orden

 •   Mundo de los bloques
                                                                                                 ¢¡¡ ¢¡
                                                                                           ¡¡ ¢¡  ¡¡¡ ¢ ¢ 
                                                                                                ¡¡ ¡ ¢
                                                                                            ¢ ¢¡¡¢¡¢
                                                                                            ¡¡ ¡                                                           ¢ ¢ 
                                                                                        ¢ ¢¡¡¢¡¢                                                    ¢¢ ¢ 
                                          a                                            ¢¡¡ ¢¡ ¢  ¢
                                                                                      ¡¡ ¡¢
                                                                                  ¡¡¢¡¢ £¤£¤
                                                                                    ¢¢¡¡ ¢¡
                                                                                      ¡¡ ¡                                                   ¢ ¢ ¢
                                                                          ¢¡¡¢¡£¤
                                                                            £¤££¤¤¡¡¢ £¤¡
                                                                          ¡¡£¤¡¤
                                                                          ¡¡£¡£                                                     ¢ £¤££¤¤                                              §¨¡§¨¡¡
                                                                                                                                                                                          ¡¡¡§¨§¨§¨      §¨§¨§¨
                                                                        £¤¡¡¤¡£¤£
                                                                        ¡¡£¡¤
                                                                      £¤¡¡¤¡£
                                                                      ¡¡£¡¤                                                   £¤£¤£                                                   §¡§¡¡¨§
                                                                                                                                                                                   ¡¨¡¡¨§¨¡¨¡¡
                                                                                                                                                                                   ¨§¨¡¨¡¡
                                                                                                                                                                                   ¡§¡¡§¨¨         ¨§§¨¨
                                                                                                                                                                                               §§¨¡¡
                                          b                     ¤¡¡¤¡£¤£¤
                                                                     £¡¡£¡
                                                                 £¡¡¤£¡
                                                                  ¤£¤¡¡¤¡                                             ¤£¤£¤£¤                                                     §¡¡¡§§¨
                                                                                                                                                                                  ¡¨¡¡
                                                                                                                                                                                §¨¡§¡¡¨§
                                                                                                                                                                            §¨©© §¨© ©
                                                                                                                                                                             ¨¨¡¨¡¡
                                                                                                                                                                               §¡¨¡¡
                                                                                                                                                                                ¡§¡¡§©¨                          d
                                                            £¤¥¦¡¡¤¡¥¦
                                                            ¡¡£¡
                                                            ¡¡¤¡¥
                                                          ¥¦¡¡¥¦¡¦¥
                                                          ¡¡¥¡¦
                                                         ¡¡¦¡¥
                                                         ¥¡¡¥¡
                                                                ¡¡£¡¥¦                                          ¥¦¥¦¥                                                      §¡§¨©©§¨§§¨
                                                                                                                                                                        ©¡§¡¡©
                                                                                                                                                                      ©©©©©©
                                                     ¦¥¦¦¡¡¦¡¦
                                                   ¡¡¦¡
                                                   ¥¥¡¡¥¡
                                                   ¡¡¥¦¡¥¦                                                ¦¥¦¦¥                                                       ©©©©
                                                                                                                                                                   ©©©
                                                                                                                                                                    ©©©©©©
                                          c       ¦¡¡¥¡¥¦¥¦
                                                ¥¦¡¡¦¡
                                                ¡¡¥¡                                                ¥¦¥¦¥                                                                                                         e
                                              ¥¦¡¡¦¡
                                              ¡¡¥¡                                                 ¦ ¦                                                            ©©©©                

     • sobre(x, y)                                  a
                       se verifica si el bloque x est´ colocado sobre el bloque y
     • sobre                                         a
                mesa(x) se verifica si el bloque x est´ sobre la mesa
              o
     • Situaci´n   del ejemplo:
             sobre(a, b), sobre(b, c), sobre mesa(c), sobre(d, e), sobre mesa(e)




LI 2004–05                        Cc Ia                                                                                                                                                                                         a             o
                                                                                                                                                                                                                  Sintaxis y sem´ntica de la l´gica de primer orden   6.3




                            o
  Potencia expresiva de la l´gica de primer orden

     • bajo(x, y)                                a
                    se verifica si el bloque x est´ debajo del bloque y
             (∀x)(∀y)[bajo(x, y) ↔ sobre(y, x)]
     • encima(x, y)                              a
                    se verifica si el bloque x est´ encima del bloque y pudiendo haber
      otros bloques entre ellos
             (∀x)(∀y)[encima(x, y) ↔ sobre(x, y) ∨ (∃z)[sobre(z, x) ∧ encima(z, y)]]
     • libre(x)   se verifica si el bloque x no tiene bloques encima
             (∀x)[libre(x) ↔ ¬(∃y)sobre(y, x)]
     • pila(x, y, z)                                a
                       se verifica si el bloque x est´ sobre el y, el y sobre el z y el z sobre la
      mesa
             (∀x)(∀y)(∀z)[pila(x, y, z) ↔ sobre(x, y) ∧ sobre(y, z) ∧ sobre mesa(z)]
     • Prop.:                                           a
                Si z, y, z es una pila entonces y no est´ libre
             (∀x)(∀y)(∀z)[pila(x, y, z) → ¬libre(y)]




LI 2004–05                        Cc Ia                                                                                                                                                                                         a             o
                                                                                                                                                                                                                  Sintaxis y sem´ntica de la l´gica de primer orden   6.4
68                                        José A. Alonso


                            o
  Potencia expresiva de la l´gica de primer orden

 •               o
     Representaci´n con funciones e igualdad
     • es    bloque(x) se verifica si x es un bloque
     • superior(x)                        a
                      es el bloque que est´ sobre el bloque x
              o
     • Situaci´n   del ejemplo:
              es bloque(a), es bloque(b), es bloque(c), es bloque(d), es bloque(e)
              superior(b) = a, superior(c) = b, superior(e) = d
     • sobre                                         a
                mesa(x) se verifica si el bloque x est´ sobre la mesa
              (∀x)[sobre mesa(x) ↔ es bloque(x) ∧ ¬(∃y)superior(y) = x]
     • libre(x)   se verifica si el bloque x no tiene bloques encima
              (∀x)[libre(x) ↔ ¬(∃y)superior(x) = y]
     • tope(x)                              a
                  es el bloque libre que est´ encima de x
              (∀x)[(libre(x) → tope(x) = x) ∧ (¬libre(x) → tope(x) = tope(superior(x)))]


LI 2004–05                        Cc Ia                                 a             o
                                                          Sintaxis y sem´ntica de la l´gica de primer orden   6.5




                            o
  Potencia expresiva de la l´gica de primer orden

 •                          o
     Ejemplos de formalizaci´n:
     • La    Tierra es un planeta: planeta(Tierra)
     • La    Luna no es un planeta: ¬planeta(Luna)
     • La                  e         e
             Luna es un sat´lite: sat´lite(Luna)
     • La    Tierra gira alrededor del Sol: gira(Tierra, Sol)
     • Todo                     e                           e
               planeta es un sat´lite: (∀x)[planeta(x) → sat´lite(x)]
     • Todo    planeta gira alrededor del Sol: (∀x)[planeta(x) → gira(x, Sol)]
          u
     • Alg´n    planeta gira alrededor de la Luna: (∃x)[planeta(x) ∧ gira(x, Luna)]
     • Hay                       e             e
              por lo menos un sat´lite: (∃x)sat´lite(x)
           u
     • Ning´n                      e                            e
                  planeta es un sat´lite: ¬(∃x)[planeta(x) ∧ sat´lite(x)]
           u
     • Ning´n                                       ı
                  objeto celeste gira alrededor de s´ mismo: ¬(∃x)gira(x, x)



LI 2004–05                        Cc Ia                                 a             o
                                                          Sintaxis y sem´ntica de la l´gica de primer orden   6.6
                                       Lógica informática (2004–05)                                                   69


                            o
  Potencia expresiva de la l´gica de primer orden

     • Alrededor              e                                e
                    de los sat´lites no giran objetos: (∀x)[sat´lite(x) → ¬(∃y)gira(y, x)]
     • Hay                      e              e                  e
              exactamente un sat´lite: (∃x)[sat´lite(x) ∧ (∀y)[sat´lite(y) → x = y]]
     • La                   e                      e
             Luna es un sat´lite de la Tierra: sat´lite(Luna, Tierra)
                                              o     e
             [Notar la sobrecarga de la relaci´n sat´lite]
     • Todo                        e                               e
               planeta tiene un sat´lite: (∀x)[planeta(x) → (∃y)sat´lite(y, x)]
     • La                       e               e
             Tierra no tiene sat´lites: ¬(∃x)sat´lite(x, Tierra)
          u
     • Alg´n                        e                                 e
                planeta no tiene sat´lites: (∃x)[planeta(x) ∧ ¬(∃y)sat´lite(y, x)]
        o
     • S´lo                          e                   e
              los planetas tienen sat´lites: (∀x)[(∃y)sat´lite(y, x) → planeta(x)]
     • Todo       e           e           u
               sat´lite es sat´lite de alg´n planeta:
                     e                                e
             (∀x)[sat´lite(x) → (∃y)(planeta(y) ∧ sat´lite(x, y))]
     • La    Luna no gira alrededor de dos planetas diferentes:
             ¬(∃x)(∃y)[planeta(x) ∧ planeta(y) ∧ gira(Luna, x) ∧ gira(Luna, y) ∧ x = y]
     • Hay     exactamente dos planetas:
             (∃x)(∃y)[planeta(x) ∧ planeta(y) ∧ x = y ∧ (∀z)[planeta(z) → (z = x ∨ z = y)]]
LI 2004–05                          Cc Ia                                     a             o
                                                                Sintaxis y sem´ntica de la l´gica de primer orden   6.7




  Lenguaje de primer orden
 •   Lenguaje de primer orden:
        ımbolos
     • S´         o
                 l´gicos:
         - Variables: x, y, z, . . . , x1, x2, . . ..
         - Conectivas: ¬, ∧, ∨, →, ↔.
         - Cuantificadores: ∀, ∃.
            ımbolo de igualdad: =.
         - S´
        ımbolos
     • S´       propios:
            ımbolos de constantes: a, b, c, . . . , a1, a2, . . ..
         - S´
            ımbolos de predicado (con aridad): P, Q, R, . . . , P1, P2, . . ..
         - S´
            ımbolos de funci´n (con aridad): f, g, h, . . . , f1, f2, . . ..
         - S´               o
        ımbolos
     • S´          auxiliares: “(”, “)”, “,”.
             o
     • Notaci´n:

         – L, L1, L2, . . . representan lenguajes de primer orden.
         – Var representa el conjunto de las variables.
     • Los    ımbolos de predicados de aridad mayor que 1 se llaman de relaciones.
             s´

LI 2004–05                          Cc Ia                                     a             o
                                                                Sintaxis y sem´ntica de la l´gica de primer orden   6.8
70                                          José A. Alonso


  Ejemplos de lenguajes de primer orden

 •   Lenguaje del mundo de los bloques:
        ımbolos
     • S´          de constantes: a, b, c, d, e
        ımbolos
     • S´                                o
                de predicado (y de relaci´n):
      – de aridad 1: sobre mesa, libre, es bloque
      – de aridad 2: sobre, bajo, encima
      – de aridad 3: pila
        ımbolos
     • S´                  o
                   de funci´n (de aridad 1): superior, tope

 •                       e
     Lenguaje de la aritm´tica:
        ımbolos
     • S´          de constantes: 0, 1
        ımbolos
     • S´               o
                de funci´n:
      – monaria: s (siguiente)
      – binarias: +, ·
        ımbolo
     • S´        de predicado binario: <



LI 2004–05                       Cc Ia                                     a             o
                                                             Sintaxis y sem´ntica de la l´gica de primer orden    6.9




             e
  Sintaxis: t´rminos

 •    e
     T´rminos
     • Def.       e
              de t´rmino de un lenguaje de primer orden L:
                              e
         - Las variables son t´rminos de L.
                                    e
         - Las constantes de L son t´rminos de L.
         - Si f es un s´                   o                                    e
                            ımbolo de funci´n n–aria de L y t1, . . . , tn son t´rminos de L, entonces
                                     e
           f (t1, . . . , tn) es un t´rmino de L.

     • Ejemplo:                              e
                   En el lenguaje de la aritm´tica,
                                   e
        1. +(·(x, 1), s(y)) es un t´rmino, que se suele escribir como (x · 1) + s(y)
                                      e
        2. +(·(x, <), s(y)) no es un t´rmino

             o
     • Notaci´n:


                                            e
         – s, t, t1, t2, . . . representan t´rminos.
            e                                     e
         – T´rm(L) representa el conjunto de los t´rminos de L

LI 2004–05                      Cc Ia                                     a             o
                                                            Sintaxis y sem´ntica de la l´gica de primer orden    6.10
                                  Lógica informática (2004–05)                                                   71


             o         o
  Sintaxis: f´rmulas at´micas

 •    o         o
     F´rmulas at´micas:
     • Def.       o        o
              de f´rmula at´mica de un lenguaje de primer orden L:
                           e                                      o        o
         – Si t1 y t2 son t´rminos de L, entonces t1 = t2 es una f´rmula at´mica de L.
         – Si P es un s´                       o                              e
                         ımbolo de relaci´n n–aria de L y t1, . . . , tn son t´rminos de L,
                                               o        o
           entonces P (t1, . . . , tn) es una f´rmula at´mica de L.

     • Ejemplo:                              e
                   En el lenguaje de la aritm´tica,
                                     o        o
        1. < (·(x, 1), s(y)) es una f´rmula at´mica que se suele escribir como x · 1 < s(y)
                                     o        o
        2. +(x, y) = ·(x, y) es una f´rmula at´mica que se suele escribir como x + y = x · y

             o
     • Notaci´n:


                                            o         o
         – A, B, A1, A2, . . . representan f´rmulas at´micas.
           ´                                      o         o
         – Atom(L) representa el conjunto de las f´rmulas at´micas de L.



LI 2004–05                     Cc Ia                                    a             o
                                                          Sintaxis y sem´ntica de la l´gica de primer orden   6.11




             o
  Sintaxis: f´rmulas

 •    o
     F´rmulas:
     • Def.           o
              de las f´rmulas de L:
                o         o                o
         – Las f´rmulas at´micas de L son f´rmulas de L.
                         o
         – Si F y G son f´rmulas de L, entonces ¬F , (F ∧ G), (F ∨ G), (F → G) y (F ↔ G)
                o
           son f´rmulas de L.
                        o                                        o
         – Si F es una f´rmula de L, entonces (∀x)F y (∃x)F son f´rmulas de L.

     • Ejemplo:                              e
                   En el lenguaje de la aritm´tica,
                                     o
        1. (∀x)(∃y) < (x, y) es una f´rmula que se suele escribir como (∀x)(∃y)x < y
                                        o
        2. (∀x)(∃y) + (x, y) no es una f´rmula.

             o
     • Notaci´n:


                                               o
         – F, G, H, F1, F2, . . . representan f´rmulas.
            o                                     o
         – F´rm(L) representa el conjunto de las f´rmulas de L.

LI 2004–05                     Cc Ia                                    a             o
                                                          Sintaxis y sem´ntica de la l´gica de primer orden   6.12
72                                              José A. Alonso


               o
    Sintaxis: f´rmulas

    •   ´            a                   o           a
        Arboles de an´lisis (o de formaci´n) y esquem´ticos
.

                 (∀x)(R(x, c) → P (f (y)))                                          (∀x)


                     (R(x, c) → P (f (y)))                                           →
                              ¨                                                       ¨
                                                                                     ¨ ——
                             ¨ ——
                          ¨¨      ——
                                                                              ¨   ¨¨      ——
                                                                                               ——
                        ¨            ——
                      ¨¨                —
                                        —                                ¨¨                         —
                                                                                                    —


                 R(x, c)            P (f (y))                            R                          P
                     ƒ                                                ƒ
                     ƒ                                                ƒ
                       ƒ                                            
                        ƒ                                                   ƒ
                                                                             ƒ

                 x       c            f (y)                      x            c                     f


                                          y                                                         y



LI 2004–05                        Cc Ia                                   a             o
                                                            Sintaxis y sem´ntica de la l´gica de primer orden   6.13




                  o
    Sintaxis: subf´rmulas

    •       o
        Subf´rmulas:
        • Def:                                o               o
              El conjunto Subf(F ) de las subf´rmulas de una f´rmula F se define recursiva-
         mente por: 
                     {F },
                                                             o        o
                                                 si F es una f´rmula at´mica;
                    
                     {F } ∪ Subf(G),
                    
                                                si F = ¬G;
         Subf(F ) = {F } ∪ Subf(G) ∪ Subf(H), si F = G ∗ H;
                    
                     {F } ∪ Subf(G),
                    
                                                si F = (∀x)G;
                    
                     {F } ∪ Subf(G),            si F = (∃x)G
        • Ejemplo:

             Subf((∀x)(R(x, c) → P (f (y)))) = { (∀x)(R(x, c) → P (f (y))),
                                                 (R(x, c) → P (f (y))),
                                                 R(x, c),
                                                 P (f (y))}




LI 2004–05                        Cc Ia                                   a             o
                                                            Sintaxis y sem´ntica de la l´gica de primer orden   6.14
                                   Lógica informática (2004–05)                                                     73


                 o        e
  Sintaxis: omisi´n de par´ntesis

 •                       o        e
     Criterios de reducci´n de par´ntesis:
     • Pueden                       e
                  eliminarse los par´ntesis externos.
             F ∧ G es una abreviatura de (F ∧ G)
     • Precedencia               o
                      de asociaci´n de conectivas y cuantificadores: ∀, ∃, ¬, ∧, ∨, →, ↔.
             ∀xP (x) → Q(x) es una abreviatura de ((∀x)P (x)) → Q(x)
     • Cuando     una conectiva se usa repetidamente, se asocia por la derecha.
               F ∨G∨H             es una abreviatura de (F ∨ (G ∨ H))
               F ∧ G ∧ H → ¬F ∨ G es una abreviatura de ((F ∧ (G ∧ H)) → (¬F ∨ G))
     • Los    ımbolos binarios pueden escribirse en notaci´n infija.
             s´                                           o
               x + y es una abreviatura de +(x, y)
               x < y es una abreviatura de < (x, y)




LI 2004–05                      Cc Ia                                      a             o
                                                             Sintaxis y sem´ntica de la l´gica de primer orden   6.15




  Sintaxis: conjuntos de variables

 •   Conjuntos de variables:
     • Def.:  El conjunto de las variables            e
                                               de un t´rmino t se define recursivamente por:
                    
                     ∅,                       si t es una constante;
             V(t) = {x},                       si t es una variable x;
                    
                      V(t1) ∪ . . . ∪ V(tn),   si t es f (t1, . . . , tn)
     • Def.:                                         o
              El conjunto de las variables de una f´rmula F se define recursivamente por:
                     
                      V(t1) ∪ V(t2),
                                             si F es t1 = t2;
                     
                      V(t ) ∪ . . . ∪ V(t ), si F es P (t , . . . , t );
                     
                         1               n               1           n
                     
                     
                       V(G),                  si F es ¬G;
             V(F ) =
                      V(G) ∪ V(H),
                                             si F es G ∗ H;
                     
                     
                      V(G),
                                             si F es (∀x)G;
                     
                      V(G),                  si F es (∃x)G
     • Ejemplos:


         – El conjunto de las variables de (∀x)(R(x, c) → P (f (y))) es {x, y}.
         – El conjunto de las variables de (∀x)(R(a, c) → P (f (y))) es {y}.
LI 2004–05                      Cc Ia                                      a             o
                                                             Sintaxis y sem´ntica de la l´gica de primer orden   6.16
74                                        José A. Alonso


  Sintaxis: apariciones libres y ligadas

 •   Apariciones libres y ligadas:
           Una aparici´n (u ocurrencia) de la variable x en la f´rmula F es ligada si es
     • Def.:          o                                         o
                 o                              o
      en una subf´rmula de F de la forma (∀x)G ´ (∃x)G.
     • Def.:            o                                         o
             Una aparici´n (u ocurrencia) de la variable x en la f´rmula F es libre si no
      es ligada
     • Ejemplo:    Las apariciones ligadas son las subrayadas:
             (∀x)(P (x) → R(x, y)) → ((∃y)P (y) → R(z, x))
             (∃x)R(x, y) ∨ (∀y)P (y)
             (∀x)(P (x) → (∃y)R(x, y))
             P (x) → R(x, y)




LI 2004–05                     Cc Ia                                   a             o
                                                         Sintaxis y sem´ntica de la l´gica de primer orden   6.17




  Sintaxis: variables libres y ligadas

 •   Variables libres y ligadas:
     • Def.:                                                   o
               La variable x es libre en F si tiene una aparici´n libre en F .
     • Def.:                                                    o
               La variable x es ligada en F si tiene una aparici´n ligada en F .
     • Prop.:                                                  o
               El conjunto de las variables libres de una f´rmula F es:
                      
                       V(t1) ∪ V(t2),
                                              si F es t1 = t2;
                      
                       V(t ) ∪ . . . ∪ V(t ), si F es P (t , . . . , t );
                      
                          1               n               1           n
                      
                      
                        VL(G),                 si F es ¬G;
             VL(F ) =
                       VL(G) ∪ VL(H),
                                              si F es G ∗ H;
                      
                       VL(G) \ {x},
                      
                                              si F es (∀x)G;
                      
                       VL(G) \ {x},           si F es (∃x)G
     • Ejemplo:

              o
             F´rmula                                       Ligadas Libres
             (∀x)(P (x) → R(x, y)) → ((∃y)P (y) → R(x, z)) x, y    x, y, z
             (∀x)(P (x) → (∃y)R(x, y))                     x, y
             (∀z)(P (x) → R(x, y))                                 x, y

LI 2004–05                     Cc Ia                                   a             o
                                                         Sintaxis y sem´ntica de la l´gica de primer orden   6.18
                                   Lógica informática (2004–05)                                                   75


             o                   a
  Sintaxis: f´rmulas cerradas y b´sicas

 •    o
     F´rmula cerradas:
     • Def.:        o                                    o
               Una f´rmula cerrada (o sentencia) es una f´rmula sin variables libres.
     • Ejemplos:    (∀x)(P (x) → (∃y)R(x, y)) es cerrada.
                    (∃x)R(x, y) ∨ (∀y)P (y)   no es cerrada.

 •    o        a
     F´rmulas b´sicas:
     • Def.:        o       a             o
               Una f´rmula b´sica es una f´rmula sin variables.
     • Ejemplos:    P (a) → R(a, b)               a
                                              es b´sica.
                                                      a
                    (∀x)(P (x) → (∃y)R(x, y)) no es b´sica.




LI 2004–05                      Cc Ia                                    a             o
                                                           Sintaxis y sem´ntica de la l´gica de primer orden   6.19




  Sintaxis: sustituciones

 •   Sustituciones (de un lenguaje):
     • Def.:                o                          o             e
               Una sustituci´n σ (de L) es una aplicaci´n σ : Var → T´rm(L).
     • Ejemplo:            o                    e                  e
                La aplicaci´n σ de V ar en los t´rminos de la aritm´tica tal que
          σ(x) = s(0), σ(y) = x + y y σ(z) = z para z ∈ Var \ {x, y}
                      o
      es una sustituci´n.
             o
     • Notaci´n:                                                        o
                   [x1/t1, x2/t2, . . . , xn/tn] representa la sustituci´n σ definida por
                      ti, si x es xi;
             σ(x) =
                               /
                      x, si x ∈ {x1, . . . , xn}
     • Ejemplo:                o
                   La sustituci´n del ejemplo anterior se representa por
             [x/s(0), y/x + y]
             o
     • Notaci´n:                                a
                    σ, σ1, σ2, . . . representar´n sustituciones.




LI 2004–05                      Cc Ia                                    a             o
                                                           Sintaxis y sem´ntica de la l´gica de primer orden   6.20
76                                           José A. Alonso


                    o                      e
  Sintaxis: Aplicaci´n de sustituciones a t´rminos

 •           o                      e
     Aplicaci´n de sustituciones a t´rminos:
     • Def.:                               e
            t[x1/t1, . . . , xn/tn] es el t´rmino obtenido sustituyendo en t las apariciones de
      xi por ti.
     • Def.:           o
            La extensi´n de σ a           e                     o       e         e
                                         t´rminos es la aplicaci´n σ : T´rm(L) → T´rm(L)
      definida por
               
                c,                      si t es una constante c;
         tσ = σ(x),                      si t es una variable x;
               
                 f (t1σ, . . . , tnσ),   si t es f (t1, . . . , tn)
     • Si    σ = [x/f (y, a), y/z], entonces
         – aσ = a, donde a es una constante.
         – wσ = w, donde w es una variable distinta de x e y.
         – h(a, x, w)σ = h(aσ, xσ, wσ) = h(a, f (y, a), w)
         – f (x, y)σ = f (xσ, yσ) = f (f (y, a), z)
         – h(a, f (x, y), w)σ = h(aσ, f (x, y)σ, wσ) = h(a, f (f (y, a), z), w)
LI 2004–05                       Cc Ia                                     a             o
                                                             Sintaxis y sem´ntica de la l´gica de primer orden   6.21




                     o
  Sintaxis: Composici´n de sustituciones

 •            o
     Composici´n de sustituciones:
     • Diferencia                              a
                     entre sustituciones simult´neas y consecutivas:
         – g(x, z)[x/g(z, b), z/a] = g(g(z, b), a)
         – g(x, z)[x/g(z, b)][z/a] = g(g(z, b), z)[z/a] = g(g(a, b), a)

        a
     • C´lculo                   o
                  de la composici´n: Si σ1 = [x/f (z, a), y/w] y σ2 = [x/b, z/g(w)], entonces
         – xσ1σ2 = (xσ1)σ2 = f (z, a)σ2 = f (zσ2, aσ2) = f (g(w), a)
         – yσ1σ2 = (yσ1)σ2 = wσ2 = w
         – zσ1σ2 = (zσ1)σ2 = zσ2 = g(w)
         – wσ1σ2 = (wσ1)σ2 = wσ2 = w
                                                                o
      Por tanto, σ1σ2 = [x/f (g(w), a), y/w, z/g(w)]. Comprobaci´n:
      h(y, x)σ1σ2 = (h(y, x)σ1)σ2 = h(w, f (z, a))σ2 = h(wσ2, f (z, a)σ2)                                        =
      h(w, f (g(w), a))
      h(y, x)σ1σ2 = h(y, x)[x/f (g(w), a), y/w, z/g(w)] = h(w, f (g(w), a))
LI 2004–05                       Cc Ia                                     a             o
                                                             Sintaxis y sem´ntica de la l´gica de primer orden   6.22
                                    Lógica informática (2004–05)                                                           77


                    o                      o
  Sintaxis: Aplicaci´n de sustituciones a f´rmulas

 •           o                      o
     Aplicaci´n de sustituciones a f´rmulas:
     • Def.:                                 o
             F [x1/t1, . . . , xn/tn] es la f´rmula obtenida sustituyendo en F las apariciones
      libres de xi por ti.
     • Def.:             o          o                     o       o         o
               La extensi´n de σ a f´rmulas es la aplicaci´n σ : F´rm(L) → F´rm(L) definida
      por
                  
                   P (t1σ, . . . , tnσ),
                                           si   F   es       o         o
                                                          la f´rmula at´mica P (t1, . . . , tn);
                  
                   t σ = t σ,
                   1
                            2              si   F   es       o
                                                          la f´rmula t1 = t2;
             F σ = ¬(Gσ),                   si   F   es   ¬G;
                  
                   Gσ ∗ Hσ,
                  
                                           si   F   es   G ∗ H;
                  
                   (Qx)(Gσ ),
                                x           si   F   es   (Qx)G y Q ∈ {∀, ∃}
                              o
      donde σx es la sustituci´n definida por
                         x,   si y es x;
             σx(y) =
                         σ(y) si y es distinta de x




LI 2004–05                       Cc Ia                                            a             o
                                                                    Sintaxis y sem´ntica de la l´gica de primer orden   6.23




                    o                      o
  Sintaxis: Aplicaci´n de sustituciones a f´rmulas

     • Ejemplos:    Si σ = [x/f (y), y/b], entonces
        1. ((∀x)(Q(x) → R(x, y)))σ = (∀x)((Q(x) → R(x, y))σx)
                                   = (∀x)(Q(x)σx → R(x, y)σx)
                                   = (∀x)(Q(x) → R(x, b))
        2. (Q(x) → (∀x)R(x, y))σ = Q(x)σ → ((∀x)R(x, y))σ
                                 = Q(f (y)) → (∀x)(R(x, y)σx)
                                 = Q(f (y)) → (∀x)R(x, b)
        3. ((∀x)(Q(x) → (∀y)R(x, y)))σ =              (∀x)((Q(x) → (∀y)R(x, y))σx)
                                       =              (∀x)(Q(x)σx → ((∀y)R(x, y))σx)
                                       =              (∀x)(Q(x) → (∀y)(R(x, y)σxy ))
                                       =              (∀x)(Q(x) → (∀y)R(x, y))




LI 2004–05                       Cc Ia                                            a             o
                                                                    Sintaxis y sem´ntica de la l´gica de primer orden   6.24
78                                        José A. Alonso


  Sintaxis: Sustituciones libres

 •   Sustituciones libres:
     • Def.:              o                                o
            Una sustituci´n se denomina libre para una f´rmula cuando todas las apari-
                                                       o          o
      ciones de variables introducidas por la sustituci´n en esa f´rmula resultan libres.
     • Ejemplos:


         – [y/x] no es libre para (∃x)(x < y)
               (∃x)(x < y)[y/x] = (∃x)(x < x)
         – [y/g(y)] es libre para (∀x)(P (x) → Q(x, f (y)))
               (∀x)(P (x) → Q(x, f (y)))[y/g(y)] = (∀x)(P (x) → Q(x, f (g(y))))
         – [y/g(x)] no es libre para (∀x)(P (x) → Q(x, f (y)))
               (∀x)(P (x) → Q(x, f (y)))[y/g(x)] = (∀x)(P (x) → Q(x, f (g(x))))

     • Convenio:     Al escribir F σ supondremos que σ es libre para F .




LI 2004–05                      Cc Ia                                 a             o
                                                        Sintaxis y sem´ntica de la l´gica de primer orden   6.25




     a
  Sem´ntica: Estructuras, asignaciones e interpretaciones

     • Una     estructura del lenguaje L es un par I = (U, I) tal que:
                                  ıo,
         – U es un conjunto no vac´ denominado universo de la estructura;
                         o                                  ımbolos propios de L y tal que
         – I es una funci´n cuyo dominio es el conjunto de s´
             – si c es una constante de L, entonces I(c) ∈ U
               (i.e. I(c) es un elemento de U );
             – si f es un s´ımbolo de funci´n n–aria (n > 0) de L, entonces I(f ) : U n → U
                                           o
                                       o
               (i.e. I(f ) es una funci´n n–aria en U );
                           ımbolo de relaci´n n–aria (n > 0) de L, entonces I(R) ⊆ U n
             – si R es un s´               o
                                       o
               (i.e. I(R) es una relaci´n n–aria en U ).

     • Una         o                                          o
           asignaci´n A en una estructura (U, I) es una funci´n A : Var → U que hace
      corresponder a cada variable del alfabeto un elemento del universo de la estructura.
     • Una             o
           interpretaci´n de L es un par (I, A) formado por una estructura I de L y una
              o
      asignaci´n A en I.
             o
     • Notaci´n:    A veces se usa para los valores de verdad V y F en lugar de 1 y 0.

LI 2004–05                      Cc Ia                                 a             o
                                                        Sintaxis y sem´ntica de la l´gica de primer orden   6.26
                                 Lógica informática (2004–05)                                                 79


     a
  Sem´ntica: Estructuras
     • Ejemplos:                                e            ımbolos propios son:
                   Sea L el lenguaje de la aritm´tica cuyos s´
                   constante: 0;
                    ımbolo de funci´n monaria: s;
                   s´              o
                    ımbolo de funci´n binaria: + y
                   s´              o
                    ımbolo de relaci´n binaria: ≤
                   s´               o
         – Primera estructura de L:
               U1 = N
               I1(0) = 0
               I1(s) = {(n, n + 1) : n ∈ N} (sucesor)
               I1(+) = {(a, b, a + b) : a, b ∈ N} (suma)
               I1(≤) = {(n, m) : n, m ∈ N, n ≤ m} (menor o igual)
         – Segunda estructura de L:
               U2 = {0, 1}∗ (cadenas de 0 y 1)
               I2(0) = (cadena vac´ ıa)
               I2(s) = {(w, w1) : w ∈ {0, 1}∗} (siguiente)
               I2(+) = {(w1, w2, w1w2) : w1, w2 ∈ {0, 1}∗} (concatenaci´n)
                                                                        o
               I2(≤) = {(w1, w2) : w1, w2 ∈ {0, 1}∗, w1 es prefijo de w2} (prefijo)

LI 2004–05                    Cc Ia                                  a             o
                                                       Sintaxis y sem´ntica de la l´gica de primer orden   6.27




     a
  Sem´ntica: Estructuras
     • Ejemplos    (cont.):
         – Tercera estructura de L:
           U3 = {abierto, cerrado}
           I3(0) = cerrado
           I3(s) = { (abierto, cerrado),
                     (cerrado, abierto)}
           I3(+) = { (abierto, abierto, abierto),
                      (abierto, cerrado, abierto),
                      (cerrado, abierto, abierto),
                      (cerrado, cerrado, cerrado)}
           I3(≤) = { (abierto, abierto),
                      (cerrado, abierto),
                      (cerrado, cerrado)}
                e    I3(s)(e)          I3(+) abierto cerrado             I3(≤) abierto cerrado
             abierto cerrado          abierto abierto abierto           abierto   1       0
             cerrado abierto          cerrado abierto cerrado           cerrado   1       1


LI 2004–05                    Cc Ia                                  a             o
                                                       Sintaxis y sem´ntica de la l´gica de primer orden   6.28
80                                        José A. Alonso


     a               o      e
  Sem´ntica: Evaluaci´n de t´rminos

 •           o      e
     Evaluaci´n de t´rminos:
     • Def.:                                                                   o
            Dada una estructura I = (U, I) de L y una asignaci´n A en I, se define la
           o              o      e                   e
      funci´n de evaluaci´n de t´rminos IA : T´rm(L) → U por
                  
                   I(c),                           si t es una constante c;
          IA(t) = A(x),                             si t es una variable x;
                  
                     I(f )(IA(t1), . . . , IA(tn)), si t es f (t1, . . . , tn)
     • I (t)   se lee “el valor de t en I respecto de A”.
        A

     • Ejemplos:                             a                e
                   Sean L el lenguaje de la p´gina 27 y t el t´rmino s(+(x, s(0))).
         – Si I es la primera estructura y A(x) = 3, entonces
                IA(t) =   IA(s(+(x, s(0))))             =   I(s)(IA(+(x, s(0)))) =
                      =   I(s)(I(+)(IA(x), IA(s(0))))   =   I(s)(I(+)(A(x), IA(s(0)))) =
                      =   I(s)(I(+)(3, I(s)(IA(0))))    =   I(s)(I(+)(3, I(s)(I(0)))) =
                      =   I(s)(I(+)(3, I(s)(0)))        =   I(s)(I(+)(3, 1)) =
                      =   I(s)(4)                       =   5


LI 2004–05                      Cc Ia                                     a             o
                                                            Sintaxis y sem´ntica de la l´gica de primer orden   6.29




     a               o      e
  Sem´ntica: Evaluaci´n de t´rminos
     • Ejemplos    (cont.)
         – Si I es la segunda estructura y A(x) = 10, entonces
                IA(t) =   IA(s(+(x, s(0))))             =   I(s)(IA(+(x, s(0)))) =
                      =   I(s)(I(+)(IA(x), IA(s(0))))   =   I(s)(I(+)(A(x), IA(s(0)))) =
                      =   I(s)(I(+)(10, I(s)(IA(0))))   =   I(s)(I(+)(10, I(s)(I(0)))) =
                      =   I(s)(I(+)(10, I(s)( )))       =   I(s)(I(+)(10, 1)) =
                      =   I(s)(101)                     =   10111
         – Si I es la tercera estructura y A(x) = abierto, entonces
                IA(t) =   IA(s(+(x, s(0))))                         =   I(s)(IA(+(x, s(0)))) =
                      =   I(s)(I(+)(IA(x), IA(s(0))))               =   I(s)(I(+)(A(x), IA(s(0)))) =
                      =   I(s)(I(+)(abierto, I(s)(IA(0))))          =   I(s)(I(+)(abierto, I(s)(I(0)))) =
                      =   I(s)(I(+)(abierto, I(s)(cerrado)))        =   I(s)(I(+)(abierto, abierto)) =
                      =   I(s)(abierto)                             =   cerrado




LI 2004–05                      Cc Ia                                     a             o
                                                            Sintaxis y sem´ntica de la l´gica de primer orden   6.30
                                        Lógica informática (2004–05)                                                    81


     a               o      e
  Sem´ntica: Evaluaci´n de t´rminos
     • Ejemplo                    o
              anterior con notaci´n reducida e infija:
                                a                e
      Sean L el lenguaje de la p´gina 27 y t el t´rmino s(x + s(0)).
         – Si I es la primera estructura y A(x) = 3, entonces
                 IA(t) = IA(s(x + s(0))) = sI (3 +I sI (0I )) =
                       = sI (3 +I sI (0)) = sI (3 +I 1) =
                          I
                       = s (4)            =5
         – Si I es la segunda estructura y A(x) = 10, entonces
                 IA(t) = IA(s(x + s(0))) = sI (10 +I sI (0I )) =
                       = sI (10 +I sI ( )) = sI (10 +I 1) =
                       = sI (101)          = 1011
         – Si I es la tercera estructura y A(x) = abierto, entonces
                 IA(t) = IA(s(x + s(0)))           = sI (abierto +I sI (0I )) =
                          I           I I
                       = s (abierto + s (cerrado)) = sI (abierto +I abierto) =
                       = sI (abierto)              = cerrado



LI 2004–05                           Cc Ia                                     a             o
                                                                 Sintaxis y sem´ntica de la l´gica de primer orden   6.31




     a               o      o
  Sem´ntica: Evaluaci´n de f´rmulas
 •                           o
     Variante de una asignaci´n:
     • Def.:                   o
            Sea A una asignaci´n en la estructura (U, I) y u ∈ U . Mediante A[x/u] se
                            o
      representa la asignaci´n definida por
                               u,   si y es x;
             A[x/u](y) =
                               A(y) si y es distinta de x
 •        o                         o
     Funci´n de verdad de una relaci´n:
           Si R es una relaci´n n–aria en U (i.e. R ⊆ U n), entonces la funci´n de verdad
     • Def.:                 o                                               o
                                n
                      o
      de R es la funci´n HR : U → B definida por
                                       1, si (u1, . . . , un) ∈ R;
             HR (u1, . . . , un) =
                                       0, en caso contrario
 •        o
     Funci´n de verdad de la igualdad:
     • Def.:   La funci´n de verdad de la igualdad en U es la funci´n H= : U 2 → B definida
                       o                                           o
      por
                                1, si u1 = u2;
             H=(u1, u2) =
                                0, en caso contrario

LI 2004–05                           Cc Ia                                     a             o
                                                                 Sintaxis y sem´ntica de la l´gica de primer orden   6.32
82                                           José A. Alonso


     a               o      o
  Sem´ntica: Evaluaci´n de f´rmulas

 •           o      o
     Evaluaci´n de f´rmulas:
     • Def.:                                                  o
            Dada una estructura I = (U, I) de L y una asignaci´n A sobre I, se define
              o             o      o             o
      la funci´n de evaluaci´n de f´rmulas IA : F´rm(L) → B por
       – Si F es t1 = t2,            IA(F ) = H=(IA(t1), IA(t2))

       – Si F es P (t1, . . . , tn), IA(F ) = HI(P )(IA(t1), . . . , IA(tn))

       – Si F es ¬G,                 IA(F ) = H¬(IA(G))

       – Si F es G ∗ H,              IA(F ) = H∗(IA(G), IA(H))

                                                 1, si para todo u ∈ U se tiene IA[x/u](G) = 1;
       – Si F es (∀x)G,              IA(F ) =
                                                 0, en caso contrario
                                                                 u
                                                 1, si existe alg´ n u ∈ U tal que IA[x/u](G) = 1;
       – Si F es (∃x)G,              IA(F ) =
                                                 0, en caso contrario
     • I (F )   se lee “el valor de F en I respecto de A”.
        A

LI 2004–05                      Cc Ia                                      a             o
                                                             Sintaxis y sem´ntica de la l´gica de primer orden   6.33




     a               o      o
  Sem´ntica: Evaluaci´n de f´rmulas
     • Ejemplo:          o
                Evaluaci´n de (∃y)P (x, y) en la estructura I = (U, I) respecto de la
              o
      asignaci´n A tales que U = {1, 2}, I(P ) = {(1, 1), (2, 2)} y A(x) = 1
                 o
      – En notaci´n completa:
                                                        o
             IA((∃y)P (x, y)) = V ⇔ IA[y/1]P (x, y) = V ´ IA[y/2]P (x, y) = V
                IA[y/1]P (x, y) =   HI(P )(IA[y/1](x), IA[y/1](y))
                                =   HI(P )(A[y/1](x), A[y/1](y))
                                =   HI(P )(1, 1)
                                =   V
             Luego, IA((∃y)P (x, y)) = V.

                 o
      – En notaci´n reducida:
                                                        o
             IA((∃y)P (x, y)) = V ⇔ IA[y/1]P (x, y) = V ´ IA[y/2]P (x, y) = V
                IA[y/1]P (x, y) = P I (A[y/1](x), A[y/1](y))
                                = P I (1, 1)
                                =V
             Luego, IA((∃y)P (x, y)) = V.

LI 2004–05                      Cc Ia                                      a             o
                                                             Sintaxis y sem´ntica de la l´gica de primer orden   6.34
                                    Lógica informática (2004–05)                                                    83


     a               o      o
  Sem´ntica: Evaluaci´n de f´rmulas
     • Ejemplo:         o
                Evaluaci´n de (∀x)(∃y)P (x, y) en la estructura I = (U, I) respecto de la
              o
      asignaci´n A tales que U = {1, 2} e I(P ) = {(1, 1), (2, 2)}
      IA((∀x)(∃y)P (x, y)) = V ⇔ IA[x/1]((∃y)P (x, y)) = V y IA[x/2]((∃y)P (x, y)) = V
                                                                 o
             IA[x/1]((∃y)P (x, y)) = V ⇔ IA[x/1,y/1]P (x, y) = V ´ IA[x/1,y/2]P (x, y) = V
                IA[x/1,y/1]P (x, y) =    HI(P )(IA[x/1,y/1](x), IA[x/1,y/1](y))
                                    =    HI(P )(A[x/1, y/1](x), A[x/1, y/1](y))
                                    =    HI(P )(1, 1)
                                    =    V
             Luego, IA[x/1]((∃y)P (x, y)) = V.
                                                                 o
             IA[x/2]((∃y)P (x, y)) = V ⇔ IA[x/2,y/1]P (x, y) = V ´ IA[x/2,y/2]P (x, y) = V
                IA[x/2,y/2]P (x, y) =    HI(P )(IA[x/2,y/2](x), IA[x/2,y/2](y))
                                    =    HI(P )(A[x/2, y/2](x), A[x/2, y/2](y))
                                    =    HI(P )(2, 2)
                                    =    V
             Luego, IA[x/2]((∃y)P (x, y)) = V.
      Por tanto, IA((∀x)(∃y)P (x, y)) = V
LI 2004–05                       Cc Ia                                     a             o
                                                             Sintaxis y sem´ntica de la l´gica de primer orden   6.35




     a               o      o
  Sem´ntica: Evaluaci´n de f´rmulas
     • Ejemplo                   o
               anterior en notaci´n reducida:
              o                                                                         o
      Evaluaci´n de (∀x)(∃y)P (x, y) en la estructura I = (U, I) respecto de la asignaci´n
      A tales que U = {1, 2} e I(P ) = {(1, 1), (2, 2)}
      IA((∀x)(∃y)P (x, y)) = V ⇔ IA[x/1]((∃y)P (x, y)) = V y IA[x/2]((∃y)P (x, y)) = V
                                                                 o
             IA[x/1]((∃y)P (x, y)) = V ⇔ IA[x/1,y/1]P (x, y) = V ´ IA[x/1,y/2]P (x, y) = V
                IA[x/1,y/1]P (x, y) = P I (1, 1)
                                    =V
             Luego, IA[x/1]((∃y)P (x, y)) = V.
                                                                 o
             IA[x/2]((∃y)P (x, y)) = V ⇔ IA[x/2,y/1]P (x, y) = V ´ IA[x/2,y/2]P (x, y) = V
                IA[x/2,y/2]P (x, y) = P I (2, 2)
                                    =V
             Luego, IA[x/2]((∃y)P (x, y)) = V.
      Por tanto, IA((∀x)(∃y)P (x, y)) = V




LI 2004–05                       Cc Ia                                     a             o
                                                             Sintaxis y sem´ntica de la l´gica de primer orden   6.36
84                                         José A. Alonso


     a               o      o
  Sem´ntica: Evaluaci´n de f´rmulas
     • Ejemplo:          o
                Evaluaci´n de (∀x)(P (x) → Q(g(x), a)) en la estructura I = (U, I)
                             o
      respecto de la asignaci´n A tales que U = {1, 2}, I(a) = 1, I(g) = {(1, 2), (2, 1)},
      I(P ) = {2} e I(Q) = {(1, 2), (2, 2)}.
      IA((∀x)(P (x) → Q(g(x), a))) = V ⇔ IA[x/1](P (x) → Q(g(x), a)) = V y
                                         IA[x/2](P (x) → Q(g(x), a)) = V
             IA[x/1](P (x) → Q(g(x), a)) =
             = H→(IA[x/1](P (x)), IA[x/1](Q(g(x), a))) =
             = H→(HI(P )(IA[x/1](x)), HI(Q)(IA[x/1](g(x)), IA[x/1](a))) =
             = H→(HI(P )(A[x/1](x)), HI(Q)(I(g)(IA[x/1](x)), I(a))) =
             = H→(HI(P )(1), HI(Q)(I(g)(A[x/1](x)), 1)) =
             = H→(F, HI(Q)(I(g)(1), 1)) =
             = H→(F, HI(Q)(2, 1)) =
             = H→(F, F) =
             =V




LI 2004–05                       Cc Ia                                  a             o
                                                          Sintaxis y sem´ntica de la l´gica de primer orden   6.37




     a               o      o
  Sem´ntica: Evaluaci´n de f´rmulas
     • Ejemplo     (cont.)
             IA[x/2](P (x) → Q(g(x), a)) =
             = H→(IA[x/2](P (x)), IA[x/2](Q(g(x), a))) =
             = H→(HI(P )(IA[x/2](x)), HI(Q)(IA[x/2](g(x)), IA[x/2](a))) =
             = H→(HI(P )(A[x/2](x)), HI(Q)(I(g)(IA[x/2](x)), I(a))) =
             = H→(HI(P )(2), HI(Q)(I(g)(A[x/2](x)), 1)) =
             = H→(V, HI(Q)(I(g)(2), 1)) =
             = H→(V, HI(Q)(1, 1)) =
             = H→(V, V) =
             =V
      Por tanto, IA((∀x)(P (x) → Q(g(x), a))) = V.




LI 2004–05                       Cc Ia                                  a             o
                                                          Sintaxis y sem´ntica de la l´gica de primer orden   6.38
                                    Lógica informática (2004–05)                                                       85


     a               o      o
  Sem´ntica: Evaluaci´n de f´rmulas
     • Ejemplo                    o
               anterior con notaci´n reducida:
              o
      Evaluaci´n de (∀x)(P (x) → Q(g(x), a)) en la estructura I = (U, I) respecto de la
              o
      asignaci´n A tales que U = {1, 2}, I(a) = 1, I(g) = {(1, 2), (2, 1)}, I(P ) = {2} e
      I(Q) = {(1, 2), (2, 2)}.
      IA((∀x)(P (x) → Q(g(x), a))) = V ⇔ IA[x/1](P (x) → Q(g(x), a)) = V y
                                         IA[x/2](P (x) → Q(g(x), a)) = V
             IA[x/1](P (x) → Q(g(x), a))
       =     P I (1) → QI (g I (1), aI )
       =     F → QI (2, 1)
       =     F→F
       =     V
             IA[x/2](P (x) → Q(g(x), a))
       =     P I (2) → QI (g I (2), aI )
       =     V → QI (1, 1)
       =     V→V
       =     V
      Por tanto, IA((∀x)(P (x) → Q(g(x), a))) = V.
LI 2004–05                       Cc Ia                                        a             o
                                                                Sintaxis y sem´ntica de la l´gica de primer orden   6.39




     a               o      o
  Sem´ntica: Evaluaci´n de f´rmulas
     • Ejemplo:          o
                Evaluaci´n de (∃x)(P (g(x)) ∧ Q(x, g(a))) en la estructura I = (U, I)
                             o
      respecto de la asignaci´n A tales que U = {1, 2}, I(a) = 1, I(g) = {(1, 2), (2, 1)},
      I(P ) = {2} e I(Q) = {(1, 2), (2, 2)}.
                                                                               o
      IA((∃x)(P (g(x)) ∧ Q(x, g(a)))) = V ⇔ IA[x/1](P (g(x)) ∧ Q(x, g(a))) = V ´
                                            IA[x/2](P (g(x)) ∧ Q(x, g(a))) = V
             IA[x/1](P (g(x)) ∧ Q(x, g(a))) =   P I (g I (1)) ∧ QI (1, g I (aI ))
                                            =   P I (2) ∧ QI (1, g I (1))
                                            =   V ∧ QI (1, 2)
                                            =   V∧V
                                            =   V
      Por tanto, IA((∃x)(P (g(x)) ∧ Q(x, g(a)))) = V.




LI 2004–05                       Cc Ia                                        a             o
                                                                Sintaxis y sem´ntica de la l´gica de primer orden   6.40
86                                             José A. Alonso


     a               o      o
  Sem´ntica: Evaluaci´n de f´rmulas
     • Ejemplo:          o
                 Evaluaci´n de (∃x)(P (x) ∧ Q(x, a)) en la estructura I = (U, I) respecto
                    o
      de la asignaci´n A tales que U = {1, 2}, I(a) = 1, I(g) = {(1, 2), (2, 1)}, I(P ) = {2}
      e I(Q) = {(1, 2), (2, 2)}.
                                                                   o
      IA((∃x)(P (x) ∧ Q(x, a))) = V ⇔ IA[x/1](P (x) ∧ Q(x, a)) = V ´
                                      IA[x/2](P (x) ∧ Q(x, a)) = V
             IA[x/1](P (x) ∧ Q(x, a)) =   P I (1) ∧ QI (1, aI )
                                      =   F ∧ QI (1, 1)
                                      =   F∧V
                                      =   F
             IA[x/2](P (x) ∧ Q(x, a)) =   P I (2) ∧ QI (2, aI )
                                      =   V ∧ QI (2, 1)
                                      =   V∧F
                                      =   F
      Por tanto, IA((∃x)(P (x) ∧ Q(x, a))) = F.




LI 2004–05                        Cc Ia                                         a             o
                                                                  Sintaxis y sem´ntica de la l´gica de primer orden   6.41




     a               o      o
  Sem´ntica: Evaluaci´n de f´rmulas
     • Ejemplo:         o
                Evaluaci´n de (∀x)(∃y)(P (x) ∧ Q(x, y)) en la estructura I = (U, I) res-
                          o
      pecto de la asignaci´n A tales que U = {1, 2}, I(a) = 1, I(g) = {(1, 2), (2, 1)},
      I(P ) = {2} e I(Q) = {(1, 2), (2, 2)}.
      IA((∀x)(∃y)(P (x) ∧ Q(x, y))) = V ⇔ IA[x/1](∃y)(P (x) ∧ Q(x, y)) = V y
                                          IA[x/2](∃y)(P (x) ∧ Q(x, y)) = V
                                                                                  o
              IA[x/1](∃y)(P (x) ∧ Q(x, y)) = V ⇔ IA[x/1,y/1](P (x) ∧ Q(x, y)) = V ´
                                                 IA[x/1,y/2](P (x) ∧ Q(x, y)) = V
                  IA[x/1,y/1](P (x) ∧ Q(x, y)) = P I (1) ∧ QI (1, 1)
                                               =F∧V
                                               =F
                  IA[x/1,y/2](P (x) ∧ Q(x, y)) = P I (1) ∧ QI (1, 2)
                                               =F∧V
                                               =F
              Luego, IA[x/1](∃y)(P (x) ∧ Q(x, y)) = F
      Por tanto, IA((∀x)(∃y)(P (x) ∧ Q(x, y))) = V.


LI 2004–05                        Cc Ia                                         a             o
                                                                  Sintaxis y sem´ntica de la l´gica de primer orden   6.42
                                   Lógica informática (2004–05)                                                      87


     a               o      o
  Sem´ntica: Evaluaci´n de f´rmulas
     • Ejemplo:           o
                Evaluaci´n de (∀x)g(x) = x en la estructura I = (U, I) respecto de la
              o
      asignaci´n A tales que U = {1, 2}, I(a) = 1, I(g) = {(1, 2), (2, 1)}, I(P ) = {2} e
      I(Q) = {(1, 2), (2, 2)}.
      IA((∀x)g(x) = x) = V ⇔ IA[x/1]g(x) = x = V y IA[x/2]g(x) = x = V
             IA[x/1](g(x) = x) = (g I (1) = 1)
                               = (2 = 1)
                               =F
      Por tanto, IA((∀x)g(x) = x) = F.




LI 2004–05                      Cc Ia                                       a             o
                                                              Sintaxis y sem´ntica de la l´gica de primer orden   6.43




     a               o      o
  Sem´ntica: Evaluaci´n de f´rmulas
     • Ejemplo:           o
                Evaluaci´n de (∀x)g(g(x)) = x en la estructura I = (U, I) respecto de la
              o
      asignaci´n A tales que U = {1, 2}, I(a) = 1, I(g) = {(1, 2), (2, 1)}, I(P ) = {2} e
      I(Q) = {(1, 2), (2, 2)}.
      IA((∀x)g(g(x)) = x) = V ⇔ IA[x/1]g(g(x)) = x = V y IA[x/2]g(g(x)) = x = V
             IA[x/1](g(g(x)) = x) =     (g I (g I (1)) = 1)
                                  =     (g I (2) = 1)
                                  =     (1 = 1)
                                  =     V
             IA[x/2](g(g(x)) = x) =     (g I (g I (2)) = 2)
                                  =     (g I (1) = 2)
                                  =     (2 = 2)
                                  =     V
      Por tanto, IA((∀x)g(g(x)) = x) = V.




LI 2004–05                      Cc Ia                                       a             o
                                                              Sintaxis y sem´ntica de la l´gica de primer orden   6.44
88                                        José A. Alonso


     a               o      o
  Sem´ntica: Evaluaci´n de f´rmulas
     • Ejemplo                                          o
                 de dependencia del universo: Sea G la f´rmula (∀x)(∃y)R(y, x), entonces
                                                                  o
         – IA(G) = V, siendo I = (Z, I), I(R) = < y A una asignaci´n en I.
                                                                  o
         – IA(G) = F, siendo I = (N, I), I(R) = < y A una asignaci´n en I.

     • Ejemplo                                              o
                 de dependencia de la estructura: Sea G la f´rmula (∃x)(∀y)R(x, y), en-
      tonces
                                                                  o
         – IA(G) = V, siendo I = (N, I), I(R) = ≤ y A una asignaci´n en I.
                                                                  o
         – IA(G) = F, siendo I = (N, I), I(R) = ≥ y A una asignaci´n en I.

     • Ejemplo                                o             o
                 de dependencia de la asignaci´n: Sea G la f´rmula (∀y)R(x, y), entonces
                                                                  o
         – IA(G) = V, siendo I = (N, I), I(R) = ≤ y A una asignaci´n en I tal que
           A(x) = 0.
                                                                  o
         – IA(G) = F, siendo I = (N, I), I(R) = ≤ y A una asignaci´n en I tal que
           A(x) = 5.


LI 2004–05                    Cc Ia                                 a             o
                                                      Sintaxis y sem´ntica de la l´gica de primer orden   6.45




     a               o      o
  Sem´ntica: Evaluaci´n de f´rmulas

               o
     • Evaluaci´n       o                                  a
                    de f´rmulas en las estructuras de las p´ginas 27–28:

              o
             F´rmula        I1 I1 I3
             (∀x)0 ≤ x      V V V
             (∀x)x ≤ s(x) V V F
             (∃x)s(x) = 0 F    F      V
             (∃x)s(x) = x F    F      F




LI 2004–05                    Cc Ia                                 a             o
                                                      Sintaxis y sem´ntica de la l´gica de primer orden   6.46
                                   Lógica informática (2004–05)                                                 89


     a               o
  Sem´ntica: Evaluaci´n variables libres

 •           o
     Evaluaci´n y variables libres:
     • Sea         e                   o
             t un t´rmino de L, F una f´rmula de L e I una estructura de L.
         – Si A y B son dos asignaciones en I que coinciden sobre las variables de t,
           entonces IA(t) = IB (t).
         – Si A y B son dos asignaciones en I que coinciden sobre las variables libres de
           F , entonces IA(F ) = IB (F ).
         – Si t no tiene variables, entonces IA(F ) = IB (F ) para cualesquiera asignaciones
           A y B en I. Se suele escribir simplemente I(t).
         – Si F es cerrada, entonces IA(F ) = IB (F ) para cualesquiera asignaciones A y B
           en I. Se suele escribir simplemente I(F ).
         – Si las variables libres de F son x1, . . . , xn, entonces son equivalentes
                                             o
             – IA(F ) = 1, para toda asignaci´n A en I.
             – I((∀x1) . . . (∀xn)F ) = 1.


LI 2004–05                      Cc Ia                                  a             o
                                                         Sintaxis y sem´ntica de la l´gica de primer orden   6.47




     a                o          o
  Sem´ntica: Realizaci´n de una f´rmula
 •            o          o
     Realizaci´n de una f´rmula:
     • Def.:               o                                                  o
               Sean F una f´rmula de L, I una estructura de L y A una asignaci´n en I.
                                  o
         – (I, A) es una realizaci´n de F si IA(F ) = 1.
           Se representa por IA |= F .
                                     o
         – (I, A) no es una realizaci´n de F si IA(F ) = 0.
           Se representa por IA |= F .
         – F se verifica en I respecto de A si IA |= F .
         – F no se verifica en I respecto de A si IA |= F .
     • Ejemplos:   Sea I = (N, I) una estructura tal que I(R) = ≤.
                               o
         – Si A es una asignaci´n en I tal que A(x) = 0. entonces
                IA |= (∀y)R(x, y),
                               o
         – Si A es una asignaci´n en I tal que A(x) = 5, entonces
                IA |= (∀y)R(x, y),



LI 2004–05                      Cc Ia                                  a             o
                                                         Sintaxis y sem´ntica de la l´gica de primer orden   6.48
90                                        José A. Alonso


     a
  Sem´ntica: Satisfacibilidad en una estructura
 •   Satisfacibilidad en una estructura
     • Def.:               o
               Sean F una f´rmula de L e I una estructura de L.
                                                           o
         – F es satisfacible en I si existe alguna asignaci´n A en I tal que IA |= F .
                                                                 o
         – F es insatisfacible en I si no existe ninguna asignaci´n A en I tal que IA |= F .

     • Ejemplos:   Sea I = (N, I) una estructura tal que I(R) = ≤.
         – (∀y)R(x, y) es satisfacible en I.
               IA |= (∀y)R(x, y), con A(x) = 0.
         – (∀x)R(x, y) es insatisfacible en I.
               No existe n ∈ N tal que para todo m ∈ N, se tenga m ≤ n.
     • Ejemplos:   Sea I = (N, I) una estructura tal que I(R) = ≥.
         – (∀y)R(x, y) es insatisfacible en I.
               No existe m ∈ N tal que para todo n ∈ N, se tenga m ≥ n.
         – (∀x)R(x, y) es satisfacible en I.
               IA |= (∀y)R(x, y), con A(x) = 0.

LI 2004–05                     Cc Ia                                 a             o
                                                       Sintaxis y sem´ntica de la l´gica de primer orden   6.49




     a
  Sem´ntica: Validez en una estructura

 •   Validez en una estructura
     • Def.:               o
               Sean F una f´rmula de L e I una estructura de L.
                 a                                o
         – F es v´lida en I si, para toda asignaci´n A en I, IA |= F .
           Se representa por I |= F .
                    a                                  o
         – F no es v´lida en I si, para alguna asignaci´n A en I, IA |= F .
           Se representa por I |= F .

     • Ejemplos:   Sea I = (N, I) una estructura tal que I(R) =<.
         – I |= (∃y)R(x, y).
                                    o
                Si A es una asignaci´n en I, entonces IA |= (∃y)R(x, y)
                   IA[y/A(x)+1](R(x, y)) = V
         – I |= (∀y)R(x, y).
                                  o
                Sea A una asignaci´n en I tal que A(x) = 5. Entonces IA |= (∀y)R(x, y)
                   IA[y/3](R(x, y)) = F

LI 2004–05                     Cc Ia                                 a             o
                                                       Sintaxis y sem´ntica de la l´gica de primer orden   6.50
                                    Lógica informática (2004–05)                                                91


     a
  Sem´ntica: Satisfacibilidad y validez en una estructura

 •   Satisfacibilidad y validez en una estructura para sentencias
     • Sea   F una sentencia de L e I una estructura de L.
                 a
         – F es v´lida en I syss F es satisfacible en I.
                             o
         – Se cumple una, y s´lo una, de las siguientes condiciones
                      a
             1. F es v´lida en I.
                       a
             2. ¬F es v´lida en I.

 •   Cierres cuantificacionales:
     • Sea         o
          F una f´rmula de L, I una estructura de L y {x1, . . . , xn} el conjunto de las
      variables libres de F .
                 a                                      a
         – F es v´lida en I syss (∀x1) . . . (∀xn)F es v´lida en I
         – F es satisfacible en I syss (∃x1) . . . (∃xn)F es satisfacible en I




LI 2004–05                     Cc Ia                                   a             o
                                                         Sintaxis y sem´ntica de la l´gica de primer orden   6.51




     a                      o
  Sem´ntica: Modelo de una f´rmula
 •                  o
     Modelo de una f´rmula:
     • Def.:               o
               Sean F una f´rmula de L e I una estructura de L.
         – I es un modelo de F si I |= F .
         – I no es un modelo de F si I |= F .
     • Ejemplos:    Sea I = (N, I) una estructura tal que I(R) =<. Entonces
             I |= (∃y)R(x, y).      I |= (∀y)R(x, y).
     • Ejemplos:             o
                   Sea F la f´rmula (∀x)f (x, e) = x. Las siguientes estructuras son modelos
      de F .
         – (U, I) con U = N, I(e) = 0 e I(f ) como la suma.
         – (U, I) con U = {0, 1}∗, I(e) =                           o
                                              e I(f ) la concatenaci´n.
         – (U, I) con U = B, I(e) = 1 e I(f ) = H∧
      Las siguientes estructuras no son modelo de F
         – (U, I) con U = N, I(e) = 5 e I(f ) como la suma.
         – (U, I) con U = N, I(e) = 0 e I(f ) como el producto.

LI 2004–05                     Cc Ia                                   a             o
                                                         Sintaxis y sem´ntica de la l´gica de primer orden   6.52
92                                           José A. Alonso


     a                                o
  Sem´ntica: Satisfacibilidad de una f´rmula

 •                            o
     Satisfacibilidad de una f´rmula:
     • Def.:               o
                Sea F una f´rmula de L.
                                                      o
         – F es satisfacible si tiene alguna realizaci´n
                                                         o
           (i.e. existe una estructura I y una asignaci´n A en I tales que IA(F ) = 1).
                                                            o
         – F es insatisfacible si no tiene ninguna realizaci´n
                                                         o
           (i.e. para toda estructura I y toda asignaci´n A se tiene que IA(F ) = 0).

     • Ejemplos:


         – (∀y)R(x, y) es satisfacible
                 IA((∀y)R(x, y)) = 1, siendo I = (N, I), I(R) = ≤ y A(x) = 0.
         – (∃x)P (x) ∧ (∀x)¬P (x) es insatisfacible.




LI 2004–05                      Cc Ia                                  a             o
                                                         Sintaxis y sem´ntica de la l´gica de primer orden   6.53




     a
  Sem´ntica: Satisfacibilidad y modelo

 •   Propiedades:
     • Sea           o
              F una f´rmula cerrada. Son equivalentes:
         – F es satisfacible.
         – F tiene modelo.
     • Si                                               u
             F es insatisfacible, entonces no tiene ning´ n modelo.
     • Existen     o
                  f´rmulas satisfacibles que tienen realizaciones, pero no tienen modelos.
                             o
      Por ejemplo, sea F la f´rmula x = y.
                  o
              La f´rmula F es satisfacible
                 IA(F ) = 1, siendo I = ({p, q}, I), A(x) = p, A(y) = q
                  o
              La f´rmula F no tiene modelo
                                                          o
                 Sea I una estructura. Existe una asignaci´n A en I tal que A(x) = A(y).
                 Luego, IA(F ) = 0 y I |= F .



LI 2004–05                      Cc Ia                                  a             o
                                                         Sintaxis y sem´ntica de la l´gica de primer orden   6.54
                                    Lógica informática (2004–05)                                                 93


     a                       o
  Sem´ntica: Validez de una f´rmula

 •                   o
     Validez de una f´rmula:
     • Def.:               o
                Sea F una f´rmula de L.
                   a
          – F es v´lida si toda estructura de L es modelo de F
                                                        o
            (i.e. para toda estructura I y toda asignaci´n A se tiene que IA(F ) = 1). Se
            representa por |= F .
                       a
          – F no es v´lida si alguna estructura de L no es modelo de F
                                                              o
            (i.e. existe alguna estructura I y alguna asignaci´n A tales que IA(F ) = 0). Se
            representa por |= F .

     • Ejemplos:


                                       a
          – (∃x)P (x) ∨ (∀x)¬P (x) es v´lida.
                               a
          – (∀y)R(x, y) no es v´lida.
                  IA((∀y)R(x, y)) = 0, siendo I = (N, I), I(R) = ≤ y A(x) = 5.
                                        a
          – (∃x)(P (x) → (∀y)P (y)) es v´lida.


LI 2004–05                       Cc Ia                                  a             o
                                                          Sintaxis y sem´ntica de la l´gica de primer orden   6.55




     a
  Sem´ntica: Satisfacibilidad y validez
 •   Relaciones entre satisfacibilidad y validez:
     • Prop.:          a
                 F es v´lida syss ¬F es insatisfacible.
               F es    a
                      v´lida
               ⇐⇒                                           o
                      para toda estructura I y toda asignaci´n A se tiene que IA(F ) = 1
               ⇐⇒                                           o
                      para toda estructura I y toda asignaci´n A se tiene que IA(¬F ) = 0
               ⇐⇒     ¬F es insatisfacible.
     • Si          a
             F es v´lida, entonces F es satisfacible.
                     a
               F es v´lida
                                                        o
               =⇒ para toda estructura I y toda asignaci´n A se tiene que IA(F ) = 1
                                                        o
               =⇒ existe una estructura I y una asignaci´n A tales que IA(F ) = 1
               =⇒ F es satisfacible.
     •F                       /
             es satisfacible =⇒ ¬F es insatisfacible.
              (∀x)P (x) es satisfacible.
                 modelo I = (U, I) con U = {1, 2} e I(P ) = {a}
              ¬(∀x)P (x) es satisfacible.
                 modelo I = (U, I) con U = {1, 2} e I(P ) = {a}

LI 2004–05                       Cc Ia                                  a             o
                                                          Sintaxis y sem´ntica de la l´gica de primer orden   6.56
94                                                José A. Alonso


     a                o                     o
  Sem´ntica: Realizaci´n de un conjunto de f´rmulas

 •         o
     Notaci´n:
     • S, S
              1 , S2 , . . .              a                o
                               representar´n conjuntos de f´rmulas.

 •            o                     o
     Realizaci´n de un conjunto de f´rmulas:
     • Def.:                       o
            Sean S un conjunto de f´rmulas de L, I una estructura de L y A una
              o
      asignaci´n en I.
                                  o
         – (I, A) es una realizaci´n de S si para toda F ∈ S se tiene que IA(F ) = 1.
               Se representa por IA |= S.
                                     o
         – (I, A) no es una realizaci´n de S si para alguna F ∈ S se tiene que IA(F ) = 0.
               Se representa por IA |= S.

     • Ejemplos:          Sea S = {(∀y)R(x, y), (∀y)f (x, y) = y}.
      – (I, A) con I = (U, I), U = N, RI = ≤, f I = +, A(x) = 0 es realizaci´n de S.
                                                                            o
      – (I, A) con I = (U, I), U = N, RI = <, f I = +, A(x) = 0 no es realizaci´n de S.
                                                                               o
      – (I, A) con I = (U, I), U = N, RI = ≤, f I = ∗, A(x) = 0 no es realizaci´n de S.
                                                                               o

LI 2004–05                              Cc Ia                                a             o
                                                               Sintaxis y sem´ntica de la l´gica de primer orden   6.57




     a                                       o
  Sem´ntica: Consistencia de un conjunto de f´rmulas

 •                                   o
     Consistencia de un conjunto de f´rmulas:
     • Def.:                           o
                 Sea S un conjunto de f´rmulas de L.
                                                       o
         – S es consistente si S tiene alguna realizaci´n
                                                                  o
           (i.e. existe alguna estructura I de L y alguna asignaci´n A en I tales que, para
           toda F ∈ S, IA(F ) = 1).
                                                              o
         – S es inconsistente si S no tiene ninguna realizaci´n
                                                            o
           (i.e. para toda estructura I de L y toda asignaci´n A en I, existe alguna F ∈ S,
           tal que IA(F ) = 0).

     • Ejemplos:


         – S = {(∀y)R(x, y), (∀y)f (x, y) = y} es consistente .
                    (I, A) con I = (N, I), RI = ≤, f I = +, A(x) = 0 es realizaci´n de S.
                                                                                 o
         – S = {P (x) → Q(x), (∃y)P (y), ¬Q(x)} es inconsistente.




LI 2004–05                              Cc Ia                                a             o
                                                               Sintaxis y sem´ntica de la l´gica de primer orden   6.58
                                   Lógica informática (2004–05)                                                95


     a                                 o
  Sem´ntica: Modelo de un conjunto de f´rmulas

 •                             o
     Modelo de un conjunto de f´rmulas:
     • Def.:                           o
                Sean S un conjunto de f´rmulas de L e I una estructura de L.
         – I es un modelo de S si para toda F ∈ S se tiene que I |= F
                                                o
           (i.e. para toda F ∈ S y toda asignaci´n A en I se tiene IA(F ) = 1).
           Se representa por I |= S.
         – I no es un modelo de S si para alguna F ∈ S se tiene que I |= F
                                                    o
           (i.e. para alguna F ∈ S y alguna asignaci´n A en I se tiene IA(F ) = 0).
           Se representa por I |= S.

     • Ejemplos:     Sea S = {R(e, y), f (e, y) = y}.
      – I = (N, I) con RI = ≤, f I = +, eI = 0 es modelo de S.
      – I = (N, I) con RI = <, f I = +, eI = 0 no es modelo de S.
      – I = (N, I) con RI = ≤, f I = ∗, eI = 0 no es modelo de S.
      – I = ({0, 1}∗, I) con RI = prefijo, f I = concatenaci´n y eI =
                                                           o                       es modelo de S.


LI 2004–05                      Cc Ia                                 a             o
                                                        Sintaxis y sem´ntica de la l´gica de primer orden   6.59




     a
  Sem´ntica: Consistencia y modelo

 •   Propiedades:
     • Sea                      o
              S un conjunto de f´rmulas cerradas. Son equivalentes:
         – S es consistente.
         – S tiene modelo.
     • Si                                              u
             S es inconsistente, entonces no tiene ning´ n modelo.
             conjuntos de f´rmulas consistentes que tienen realizaciones, pero no tienen
     • Existen             o
      modelos.
      Por ejemplo, sea S = {x = y}.
              El conjunto S es consistente
                 IA |= S, siendo I = ({p, q}, I), A(x) = p, A(y) = q
              El conjunto S no tiene modelo
                                                          o
                 Sea I una estructura. Existe una asignaci´n A en I tal que A(x) = A(y).
                 Luego, IA(x = y) = 0 y I |= F .

LI 2004–05                      Cc Ia                                 a             o
                                                        Sintaxis y sem´ntica de la l´gica de primer orden   6.60
96                                       José A. Alonso


     a                     o
  Sem´ntica: Consecuencia l´gica

 •                 o
     Consecuencia l´gica:
     • Def.:               o                               o
               Sean F una f´rmula de L y S un conjunto de f´rmulas de L.
                                o
         – F es consecuencia l´gica de S si todas las realizaciones de S lo son de F .
                                                             o
           (i.e. para toda estructura I de L y toda asignaci´n A en I,
                 si IA |= S entonces IA |= F ).
                                                             o
           (i.e. para toda estructura I de L y toda asignaci´n A en I,
                 si, para todo G ∈ S, IA(G) = 1 entonces IA(F ) = 1).
           Se representa por S |= F .
                                   o
         – F no es consecuencia l´gica de S si                   o
                                                 alguna realizaci´n de S no lo es de F .
           (i.e. para alguna estructura I de L                     o
                                                 y alguna asignaci´n A en I se tiene que
                 IA |= S y IA |= F ).
           (i.e. para alguna estructura I de L                    o
                                                 y alguna asignaci´n A en I se tiene que,
                 para todo G ∈ S, IA(G) = 1 y    IA(F ) = 0).
           Se representa por S |= F .
         – Se escribe G |= F en lugar de {G} |= F .
         – Se escribe G |= F en lugar de {G} |= F .
LI 2004–05                      Cc Ia                                 a             o
                                                        Sintaxis y sem´ntica de la l´gica de primer orden   6.61




     a                     o
  Sem´ntica: Consecuencia l´gica

     • Ejemplos:


         – (∀x)P (x) |= P (y)
         – P (y) |= (∀x)P (x)
                (I, A) con I = (U, I), U = {1, 2}, P I = {1}, A(y) = 1.
         – (∀x)P (x) |= (∃y)P (y)
         – (∃x)P (x) |= (∀y)P (y)
                I = (U, I) con U = {1, 2}, P I = {1}
                I = (U, I) con U = N y P I = {n ∈ N : n es par
         – (∃x)(∀y)Q(x, y) |= (∀y)(∃x)Q(x, y)
         – (∀y)(∃x)Q(x, y) |= (∃x)(∀y)Q(x, y)
                I = (U, I) con U = {1, 2}, QI = {(1, 1), (2, 2)}
                I = (U, I) con U = N, QI = <



LI 2004–05                      Cc Ia                                 a             o
                                                        Sintaxis y sem´ntica de la l´gica de primer orden   6.62
                                 Lógica informática (2004–05)                                                97


     a                     o
  Sem´ntica: Consecuencia l´gica
     • Ejemplos:


          – {P (x) → Q(x), P (c)} |= Q(c)
          – {P (x) → Q(x), Q(c)} |= P (c)
          – {P (x) → Q(x), ¬Q(c)} |= ¬P (c)
          – {P (c), ¬P (d)} |= c = d

     • Ejemplos:                       o
                    Se consideran las f´rmulas
                F1 : (∀x)R(x, x),
                F2 : (∀x)(∀y)(R(x, y) → R(y, x)).
                F3 : (∀x)(∀y)(R(x, y) ∧ R(y, x) → x = y),
          – {F2, F3} |= F1
                   Contraejemplo: I = (U, I) con U = {a, b} y RI = {(a, a)}
          – {F1, F2} |= F3
                   Contraejemplo: I = (U, I) con U = {a, b} y RI = U 2
          – {F1, F3} |= F2

LI 2004–05                    Cc Ia                                 a             o
                                                      Sintaxis y sem´ntica de la l´gica de primer orden   6.63




     a                     o
  Sem´ntica: Consecuencia l´gica

 •   Propiedades:
     •S   |= F syss S ∪ {¬F } es inconsistente.
              S |= F
                                                            o
              ⇐⇒ para toda estructura I de L y toda asignaci´n A en I,
                      si, para todo G ∈ S, IA(G) = 1 entonces IA(F ) = 1.
                                                            o
              ⇐⇒ para toda estructura I de L y toda asignaci´n A en I,
                      si, para todo G ∈ S, IA(G) = 1 entonces IA(¬F ) = 0.
                                                            o
              ⇐⇒ para toda estructura I de L y toda asignaci´n A en I,
                      existe alguna H ∈ S ∪ {¬F } tal que IA(¬H) = 0.
              ⇐⇒ S ∪ {¬F } es inconsistente.
     • Sean        o                                           o
           F una f´rmula cerrada de L y S un conjunto de f´rmulas cerradas de L.
                                   o
      Entonces, F es consecuencia l´gica de S syss todos los modelos de S lo son de F .




LI 2004–05                    Cc Ia                                 a             o
                                                      Sintaxis y sem´ntica de la l´gica de primer orden   6.64
98                                       José A. Alonso


     a                     o
  Sem´ntica: Equivalencia l´gica
 •                 o
     Equivalencia l´gica
     • Def.:            o
            Sean F y G f´rmulas de L. F y G son equivalentes si para toda estructura I
                          o
      de L y toda asignaci´n A en I, IA(F ) = IA(G).
      Se representa por F ≡ G.
     • Ejemplos:


         – P (x) ≡ P (y).
                 I = ({1, 2}, I) con P I = {1} y A(x) = 1, A(y) = 2.
         – (∀x)P (x) ≡ (∀y)P (y).
         – (∀x)(P (x) ∧ Q(x)) ≡ (∀x)P (x) ∧ (∀x)Q(x).
         – (∃x)(P (x) ∧ Q(x)) ≡ (∃x)P (x) ∧ (∃x)Q(x).
                 I = ({1, 2}, I) con P I = {1} y QI = {2}.

     • Propiedades:                o
                       Sean F y G f´rmulas cerradas de L.
         – F ≡ G syss |= F ↔ G.
         – F ≡ G syss F |= G y G |= F .
LI 2004–05                     Cc Ia                                 a             o
                                                       Sintaxis y sem´ntica de la l´gica de primer orden   6.65




            ıa
  Bibliograf´

     • C.              e                            o
         Badesa, I. Jan´ y R. Jansana Elementos de l´gica formal. (Ariel, 2000) pp.
      195–259 y 323–326.
     • M.L.                                      e               n
               Bonet Apuntes de LPO. (Univ. Polit´cnica de Catalu˜ a, 2003) pp. 17–26.
           Chang y R.C.–T. Lee Symbolic logic and mechanical theorem proving (Aca-
     • C.–L.

      demic Press, 1973) pp. 26–35.
          Fern´ndez, A. Manjarr´s y F.J. D´ L´gica computacional. (UNED, 2003)
     • J.L.   a                e          ıez o
      pp. 64–87.
     • J.H.Gallier Logic for computer science (foundations of automatic theorem Prov-
      ing) (June 2003) pp. 146–186.
     • M. Huth y M. Ryan Logic in computer science: modelling and reasoning about
      systems. (Cambridge University Press, 2000) pp. 90–109 y 128–140.
     • M.            e            a    o                    o            o
         Ojeda e I. P´rez de Guzm´n L´gica para la computaci´n (Vol. 2: L´gica de
                     ´
      primer orden) (Agora, 1997) pp. 1–37 y 49–51.
     • L.    Paulson Logic and proof (U. Cambridge, 2002) pp. 22–29.


LI 2004–05                     Cc Ia                                 a             o
                                                       Sintaxis y sem´ntica de la l´gica de primer orden   6.66
Capítulo 7

Deducción natural en lógica de primer
orden




                   99
100                                             José A. Alonso
 ´           ´
Logica informatica                                                                                  Curso 2004–05




                                           o
                           Tema 7: Deducci´n natural en
                               o
                              l´gica de primer orden




                                                e              e
                                             Jos´ A. Alonso Jim´nez
                                                  e       o
                                             Andr´s Cord´n Franco




                                                o
                                    Grupo de L´gica Computacional
                                                        o
                       Dpto. de Ciencias de la Computaci´n e Inteligencia Artificial

                                         Universidad de Sevilla




LI 2004–05                           Cc Ia                                   o              o
                                                                      Deducci´n natural en l´gica de primer orden   7.1




  Reglas del cuantificador universal

 •                     o
     Regla de eliminaci´n del cuantificador universal
      • Regla              o
               de eliminaci´n del cuantificador universal:
             (∀x)F
                      ∀e
              F [x/t]
       donde [x/t] es libre para F .
      • Nota:         ıa
                Analog´ con ∧e1 y ∧e2.
      • Ejemplo   1: P (c), (∀x)(P (x) → ¬Q(x))           ¬Q(c)
             1 : actual y , P(y) ,     x.(P(x)        Q(x))      premisas
             2 : P(y)      Q(y)                                   e 1.3,1.1
             3 : Q(y)                                               e 2,1.2
      • Nota:   (∀x)(∃y)(x < y)        (∃y)(y < y).




LI 2004–05                           Cc Ia                                   o              o
                                                                      Deducci´n natural en l´gica de primer orden   7.2
                                            Lógica informática (2004–05)                                             101


  Reglas del cuantificador universal
 •                      o
     Regla de introducci´n del cuantificador universal
     • Regla                      o
                     de introducci´n del cuantificador universal:
             x0
                          .
                          .
                          .
                      F [x/x0]
                      ∀i
            (∀x)F
      donde x0 es una variable nueva, que no aparece fuera de la caja.
     • Nota:               ıa
                     Analog´ con ∧i.
     • Ejemplo         2: (∀x)(P (x) → Q(x)), (∀x)P (x)            (∀x)Q(x)
             1:       x.(P(x)    Q(x)) ,     x.P(x)     premisas
             2   :    actual i                          supuesto
             3   :    P(i) Q(i)                          e 1.1,2
             4   :    P(i)                               e 1.2,2
             5   :    Q(i)                                 e 3,4
             6:       x.Q(x)                             i 2 5

LI 2004–05                                 Cc Ia                              o              o
                                                                       Deducci´n natural en l´gica de primer orden   7.3




  Reglas del cuantificador existencial

 •                      o
     Regla de introducci´n del cuantificador existencial
     • Regla                 o
                de introducci´n del cuantificador existencial:
             F [x/t]
                     ∃i
             (∃x)F
      donde [x/t] es libre para F .
     • Nota:               ıa
                     Analog´ con ∨i1 y ∨i2.
     • Ejemplo         3: (∀x)P (x)        (∃x)P (x)
             1 : actual j ,       x.P(x)           premisas
             2 : P(j)                               e 1.2,1.1
             3 : x.P(x)                             i 2,1.1




LI 2004–05                                 Cc Ia                              o              o
                                                                       Deducci´n natural en l´gica de primer orden   7.4
102                                                  José A. Alonso


  Reglas del cuantificador existencial
 •                     o
     Regla de eliminaci´n del cuantificador existencial
      • Regla                    o
                     de eliminaci´n del cuantificador existencial:
                            x0 F [x/x0]
                                   .
                                   .
                                   .
             (∃x)F                  G
                                ∃e
                    G
       donde x0 es una variable nueva, que no aparece fuera de la caja.
      • Nota:              ıa
                     Analog´ con ∨e.
      • Ejemplo        4: (∀x)(P (x) → Q(x)), (∃x)P (x)            (∃x)Q(x)
             1:       x.(P(x)   Q(x)) ,     x.P(x)    premisas
             2   :    actual i , P(i)                 supuestos
             3   :    P(i) Q(i)                        e 1.1,2.1
             4   :    Q(i)                               e 3,2.2
             5   :     x.Q(x)                          i 4,2.1
             6:       x.Q(x)                           e 1.2,2 5


LI 2004–05                                Cc Ia                               o              o
                                                                       Deducci´n natural en l´gica de primer orden   7.5




  Reglas del cuantificador existencial

      • Ejemplo        5: (∀x)(Q(x) → R(x)), (∃x)(P (x) ∧ Q(x))             (∃x)(P (x) ∧ R(x))

             1:        x.(Q(x)          R(x)) ,      x.(P(x) Q(x))         premisas
             2   :      actual i , P(i) Q(i)                               supuestos
             3   :      Q(i) R(i)                                           e 1.1,2.1
             4   :      Q(i)                                                 e 2.2
             5   :      P(i)                                                 e 2.2
             6   :      R(i)                                                  e 3,4
             7   :      P(i) R(i)                                            i 5,6
             8   :       x.(P(x) R(x))                                      i 7,2.1
             9:        x.(P(x) R(x))                                          e 1.2,2 8




LI 2004–05                                Cc Ia                               o              o
                                                                       Deducci´n natural en l´gica de primer orden   7.6
                                    Lógica informática (2004–05)                                            103


  Reglas del cuantificador existencial

     • Ejemplo       6: (∃x)P (x), (∀x)(∀y)(P (x) → Q(y))    (∀y)Q(y)

             1:      x.P(x) ,   x. y.(P(x)    Q(y))         premisas
             2:      actual i                               supuesto
             3   :     actual i1 , P(i1)                    supuestos
             4   :      y.(P(i1) Q(y))                       e 1.2,3.1
             5   :     P(i1) Q(i)                            e 4,2
             6   :     Q(i)                                    e 5,3.2
             7:      Q(i)                                    e 1.1,3 6
             8:      y.Q(y)                                  i 2 7




LI 2004–05                         Cc Ia                             o              o
                                                              Deducci´n natural en l´gica de primer orden   7.7




  Equivalencias

 •   Equivalencias:
     • Sean             o
                 F y G f´rmulas.
             [1(a)] ¬(∀x)F ≡ (∃x)¬F
             [1(b)] ¬(∃x)F ≡ (∀x)¬F

     • Sean             o
                 F y G f´rmulas y x una varible no libre en G.
             [2(a)] (∀x)F ∧ G ≡ (∀x)(F ∧ G)
             [2(b)] (∀x)F ∨ G ≡ (∀x)(F ∨ G)
             [2(c)] (∃x)F ∧ G ≡ (∃x)(F ∧ G)
             [2(d)] (∃x)F ∨ G ≡ (∃x)(F ∨ G)




LI 2004–05                         Cc Ia                             o              o
                                                              Deducci´n natural en l´gica de primer orden   7.8
104                                        José A. Alonso


  Equivalencias

      • Sean          o
               F y G f´rmulas.
             [3(a)] (∀x)F ∧ (∀x)G ≡ (∀x)(F ∧ G)
             [3(b)] (∃x)F ∨ (∃x)G ≡ (∃x)(F ∨ G)

      • Sean          o
               F y G f´rmulas.
             [4(a)] (∀x)(∀y)F ≡ (∀y)(∀x)F
             [4(b)] (∃x)(∃y)F ≡ (∃y)(∃x)F




LI 2004–05                       Cc Ia                              o              o
                                                             Deducci´n natural en l´gica de primer orden    7.9




  Equivalencias

      • Equivalencia   1(a): ¬(∀x)F      (∃x)¬F

               1:    x.P(x)                premisa
               2:      x. P(x)             supuesto
               3:    actual i              supuesto
               4:        P(i)              supuesto
               5:        x. P(x)            i 4,3
               6:                            e 5,2
               7:    P(i)                  RAA 4 6
               8:    x.P(x)                 i 3 7
               9:                           e 8,1
             10 :   x. P(x)                RAA 2 9
LI 2004–05                       Cc Ia                             o              o
                                                            Deducci´n natural en l´gica de primer orden    7.10
                                 Lógica informática (2004–05)                                             105


  Equivalencias

     • Equivalencia   1(a): (∃x)¬F      ¬(∀x)F

             1:   x. P(x)                   premisa
             2:       x.P(x)                supuesto
             3:    x.P(x)                      e 2
             4:    actual i ,    P(i)       supuestos
             5:    P(i)                      e 3,4.1
             6:                               e 5,4.2
             7:                              e 1,4 6
             8:    x.P(x)                   RAA 2 7




LI 2004–05                      Cc Ia                             o              o
                                                           Deducci´n natural en l´gica de primer orden   7.11




  Equivalencias

     • Equivalencia   1(a): ¬(∀x)F ≡ (∃x)¬F


             1:      x.P(x)                  supuesto
             2:    x. P(x)                   Conjecture      x.P(x)           x. P(x) 1
             3:    x.P(x)       x. P(x)          i 1 2
             4:    x. P(x)                   supuesto
             5:      x.P(x)                  Theorem      x. P(x)            x.P(x) 4
             6:   x. P(x)         x.P(x)         i 4 5
             7:     x.P(x)      x. P(x)          i 3,6




LI 2004–05                      Cc Ia                             o              o
                                                           Deducci´n natural en l´gica de primer orden   7.12
106                                            José A. Alonso


  Equivalencias

      • Equivalencia     3(a): (∀x)(F ∧ G)       (∀x)F ∧ (∀x)G

                 1:    x.(P(x) Q(x))          premisa
                 2:    actual i1              supuesto
                 3:    P(i1) Q(i1)             e 1,2
                 4:    P(i1)                    e1 3
                 5:    x.P(x)                  i 2 4
                 6:    actual i               supuesto
                 7:    P(i) Q(i)               e 1,6
                 8:    Q(i)                     e2 7
              9:       x.Q(x)                  i 6 8
             10 :      x.P(x)     x.Q(x)       i 5,9



LI 2004–05                           Cc Ia                              o              o
                                                                 Deducci´n natural en l´gica de primer orden   7.13




  Equivalencias

      • Equivalencia     3(a): (∀x)F ∧ (∀x)G       (∀x)(F ∧ G)

             1:       x.P(x)    x.Q(x)       premisa
             2   :    actual i               supuesto
             3   :     x.P(x)                  e 1
             4   :    P(i)                    e 3,2
             5   :     x.Q(x)                  e 1
             6   :    Q(i)                    e 5,2
             7   :    P(i) Q(i)                i 4,6
             8:       x.(P(x) Q(x))           i 2 7




LI 2004–05                           Cc Ia                              o              o
                                                                 Deducci´n natural en l´gica de primer orden   7.14
                                       Lógica informática (2004–05)                                               107


  Equivalencias

     • Equivalencia    3(a): (∀x)(F ∧ G) ≡ (∀x)F ∧ (∀x)G

       1:      x.(P(x) Q(x))                             supuesto
       2:      x.P(x) x.Q(x)                             Theorem      x.(P(x) Q(x))           x.P(x)      x.Q(x)        1
       3:    x.(P(x) Q(x))        x.P(x)    x.Q(x)         i 1 2
       4:      x.P(x) x.Q(x)                             supuesto
       5:      x.(P(x) Q(x))                             Theorem      x.P(x)      x.Q(x)        x.(P(x) Q(x))           4
       6:    x.P(x) x.Q(x)         x.(P(x) Q(x))           i 4 5
       7:    x.(P(x) Q(x))        x.P(x) x.Q(x)            i 3,6




LI 2004–05                          Cc Ia                                 o              o
                                                                   Deducci´n natural en l´gica de primer orden   7.15




  Equivalencias

     • Equivalencia    3(b): (∃x)F ∨ (∃x)G           (∃x)(F ∨ G)
              1:    x.P(x)    x.Q(x)         premisa
              2:     x.P(x)                  supuesto
              3:     actual i , P(i)         supuestos
              4:     P(i) Q(i)                 i1 3.2
              5:      x.(P(x) Q(x))           i 4,3.1
              6:     x.(P(x) Q(x))            e 2,3 5

              7:     x.Q(x)                  supuesto
              8:     actual i1 , Q(i1)       supuestos
              9:     P(i1) Q(i1)               i2 8.2
             10 :     x.(P(x) Q(x))           i 9,8.1
             11 :    x.(P(x) Q(x))            e 7,8 10
             12 :   x.(P(x) Q(x))             e 1,2 6,7 11


LI 2004–05                          Cc Ia                                 o              o
                                                                   Deducci´n natural en l´gica de primer orden   7.16
108                                            José A. Alonso


  Equivalencias

      • Equivalencia     3(b): (∃x)(F ∨ G)        (∃x)F ∨ (∃x)G
              1:     x.(P(x) Q(x))                premisa
              2:     actual i , P(i) Q(i)         supuestos
              3:       P(i)                       supuesto
              4:        x.P(x)                     i 3,2.1
              5:        x.P(x)     x.Q(x)           intro 4

              6:       Q(i)                       supuesto
              7:        x.Q(x)                     i 6,2.1
              8:        x.P(x)     x.Q(x)           intro 7
              9:       x.P(x)     x.Q(x)            e 2.2,3 5,6 8
             10 :    x.P(x)     x.Q(x)             e 1,2 9




LI 2004–05                             Cc Ia                              o              o
                                                                   Deducci´n natural en l´gica de primer orden   7.17




  Equivalencias

      • Equivalencia     3(b): (∃x)F ∨ (∃x)G ≡ (∃x)(F ∨ G)

             1:      x.P(x) x.Q(x)                          supuesto
             2:      x.(P(x) Q(x))                          Theorem      x.P(x)   x.Q(x)      x.(P(x) Q(x)) 1
             3:     x.P(x)    x.Q(x)     x.(P(x) Q(x))        i 1 2
             4:      x.(P(x) Q(x))                          supuesto
             5:      x.P(x) x.Q(x)                          Conjecture    x.(P(x) Q(x))       x.P(x)     x.Q(x) 4
             6:     x.(P(x) Q(x))       x.P(x) x.Q(x)         i 4 5
             7:     x.P(x) x.Q(x)        x.(P(x) Q(x))        i 3,6




LI 2004–05                             Cc Ia                              o              o
                                                                   Deducci´n natural en l´gica de primer orden   7.18
                                     Lógica informática (2004–05)                                                109


  Equivalencias

     • Equivalencia    4(b): (∃x)(∃y)F      (∃y)(∃x)F
             1:   x. y.P(x,y)                 premisa
             2:   actual i ,    y.P(i,y)      supuestos
             3:    actual i1 , P(i,i1)        supuestos
             4:     x.P(x,i1)                  i 3.2,2.1
             5:     y. x.P(x,y)                i 4,3.1
             6:    y. x.P(x,y)                    e 2.2,3 5
             7:   y. x.P(x,y)                     e 1,2 6




LI 2004–05                         Cc Ia                                 o              o
                                                                  Deducci´n natural en l´gica de primer orden   7.19




  Equivalencias

     • Equivalencia    4(b): (∃x)(∃y)F ≡ (∃y)(∃x)F

             1:    x. y.P(x,y)                       supuesto
             2:    y. x.P(x,y)                       Conjecture     x. y.P(x,y)          y. x.P(x,y) 1
             3:   x. y.P(x,y)       y. x.P(x,y)         i 1 2
             4:    y. x.P(x,y)                       supuesto
             5:    x. y.P(x,y)                       Conjecture     x. y.P(x,y)          y. x.P(x,y) 4
             6:   y. x.P(x,y)       x. y.P(x,y)         i 4 5
             7:   x. y.P(x,y)       y. x.P(x,y)         i 3,6




LI 2004–05                         Cc Ia                                 o              o
                                                                  Deducci´n natural en l´gica de primer orden   7.20
110                                           José A. Alonso


  Reglas de la igualdad

      • Regla               o
                de eliminaci´n de la igualdad:
             t1 = t2 F [x/t1]
                              =e
                  F [x/t2]
       donde [x/t1] y [x/t2] son libres para F .
      • Ejemplo:

             1 (x + 1) = (1 + x)         premisa
             2 (x + 1 > 1) → (x + 1 > 0) premisa
             3 (1 + x > 1) → (1 + x > 0) =e 1,2
      • Ejemplo:   t1 = t2 , t 2 = t3   t1 = t3
             1 t1 = t2 premisa
             2 t2 = t3 premisa
             3 t1 = t3 =e 2,1




LI 2004–05                          Cc Ia                             o              o
                                                               Deducci´n natural en l´gica de primer orden   7.21




  Reglas de la igualdad

      • Regla              o
              de introducci´n de la igualdad:
                 =i
             t=t
      • Ejemplo:   t1 = t2    t2 = t1
             1 t1 = t2 premisa
             2 t1 = t1 =i
             3 t2 = t1 =e 1,2




LI 2004–05                          Cc Ia                             o              o
                                                               Deducci´n natural en l´gica de primer orden   7.22
                                  Lógica informática (2004–05)                                           111


            ıa
  Bibliograf´

     • C.              e                            o
         Badesa, I. Jan´ y R. Jansana Elementos de l´gica formal. (Ariel, 2000) pp.
      259–287.
     • R.    Bornat Using ItL Jape with X (Department of Computer Science, QMW, 1998)
     • J.    Dingel Propositional and predicate logic: a review. (2000) pp. 28–33.
          Fern´ndez, A. Manjarr´s y F.J. D´ L´gica computacional. (UNED, 2003)
     • J.L.   a                e          ıez o
      pp. 88–94.
     • M. Huth y M. Ryan Logic in computer science: modelling and reasoning about
      systems. (Cambridge University Press, 2000) pp. 109-127.




LI 2004–05                       Cc Ia                           o              o
                                                          Deducci´n natural en l´gica de primer orden   7.23
112   José A. Alonso
Capítulo 8

Formas normales. Cláusulas




                  113
114                                           José A. Alonso
 ´           ´
Logica informatica                                                                            Curso 2004–05




                                Tema 8: Formas normales.
                                          a
                                        Cl´usulas




                                              e              e
                                           Jos´ A. Alonso Jim´nez
                                                e       o
                                           Andr´s Cord´n Franco




                                                  o
                                      Grupo de L´gica Computacional
                                                          o
                         Dpto. de Ciencias de la Computaci´n e Inteligencia Artificial

                                        Universidad de Sevilla




LI 2004–05                                 Cc Ia                                                   a
                                                                                Formas normales. Cl´usulas   8.1




  Equivalencias

 •                 o
     Equivalencia l´gica
      • Prop.:   F ≡ G syss |= F ↔ G.

 •                a                          o
     Propiedades b´sicas de la equivalencia l´gica:
      • Reflexiva:     F ≡F
           e
      • Sim´trica:    Si F ≡ G, entonces G ≡ F
      • Transitiva:   Si F ≡ G y G ≡ H, entonces F ≡ H

 •                         o      o
     Principio de sustituci´n de f´rmulas equivalentes:
      • Prop.:           o                                   o                  o
              Si en la f´rmula F se sustituye una de sus subf´rmulas G por una f´rmula
           o                                        o                       o
       G l´gicamente equivalente a G, entonces la f´rmula obtenida, F , es l´gicamente
       equivalente a F .
      • Ejemplo:     F   =   (∀x)P (x) → (∃x)Q(x)
                     G   =   (∀x)P (x)
                     G   =   (∀y)P (y)
                     F   =   (∀y)P (y) → (∃x)Q(x)
LI 2004–05                                 Cc Ia                                                   a
                                                                                Formas normales. Cl´usulas   8.2
                                   Lógica informática (2004–05)                                     115


  Forma rectificada

 •    o
     F´rmula en forma rectificada:
     • Def.:     a
            F est´ en forma rectificada si ninguna variable aparece libre y ligada y cada
      cuantificador se refiere a una variable diferente.
     • Ejemplos:                                a
                     (∀x)P (x) → (∀y)Q(z, y) est´ en forma rectificada
                                                   a
                     (∀x)P (x) → (∀y)Q(x, y) no est´ en forma rectificada
                                                   a
                     (∀x)P (x) → (∀x)Q(z, x) no est´ en forma rectificada
     • Prop.:              o                    o
                Para toda f´rmula F existe una f´rmula equivalente G en forma rectificada.
     • Lema     del renombramiento: Si y no aparece libre en F , entonces
             (∀x)F ≡ (∀y)F [x/y]
             (∃x)F ≡ (∃y)F [x/y].
     • Ejemplos                 o
                   de rectificaci´n:
             (∀x)P (x) → (∀x)Q(z, x) ≡ (∀x)P (x) → (∀u)Q(z, u)
             (∀x)P (x) → (∀y)Q(x, y) ≡ (∀z)P (z) → (∀y)Q(x, y)



LI 2004–05                             Cc Ia                                              a
                                                                       Formas normales. Cl´usulas   8.3




  Forma normal prenexa

 •    o
     F´rmula en forma normal prenexa
           La f´rmula F est´ en forma normal prenexa (FNP) si es de la forma
     • Def.:      o           a
      (Q1x1) . . . (Qnxn)G, donde Qi ∈ {∀, ∃}, n ≥ 0 y G no tiene cuantificadores.
             (Q1x1) . . . (Qnxn) se llama el prefijo de F y G se llama la matriz de F .
     • Ejemplos:

       o
      F´rmula                                                                         a
                                                                                  ¿est´ en FNP?
      ¬(∃x)[P (x) → (∀x)P (x)]                                                          no
      (∀x)(∃y)[P (x) ∧ ¬P (y)]                                                               ı
                                                                                            s´
      (∀x)P (x) ∨ (∃y)Q(y)                                                                 no
      (∀x)(∃y)[P (x) ∨ Q(y)]                                                                 ı
                                                                                            s´
      (∃y)(∀x)[P (x) ∨ Q(y)]                                                                 ı
                                                                                            s´
      ¬((∀x)[P (x) → Q(x)] ∧ (∀x)[Q(x) → R(x)] → (∀x)[P (x) → R(x)])                       no
      (∃z)(∀x)(∀y)[((¬P (x) ∨ Q(x)) ∧ (¬Q(y) ∨ R(y))) ∧ (P (z) ∧ ¬R(z))]                     ı
                                                                                            s´



LI 2004–05                             Cc Ia                                              a
                                                                       Formas normales. Cl´usulas   8.4
116                                     José A. Alonso


                         a
  Forma normal prenexa: C´lculo de forma normal prenexa

 •                 a
     Algoritmo de c´lculo de forma normal prenexa:
      • Algoritmo:                   o                                           o
                   Aplicando a una f´rmula los siguientes pasos se obtiene otra f´rmula
                            a
       equivalente y que est´ en forma normal prenexa rectificada:
                         o
        1. Rectificar la f´rmula usando las equivalencias
              (∀x)F ≡ (∀y)F [x/y]                                                                  (1)
              (∃x)F ≡ (∃y)F [x/y]                                                                  (2)
           donde y es una variable que no ocurre libre en F .
        2. Eliminar los bicondicionales usando la equivalencia
               F ↔ G ≡ (F → G) ∧ (G → F )                                                          (3)
        3. Eliminar los condicionales usando la equivalencia
               F → G ≡ ¬F ∨ G                                                                      (4)




LI 2004–05                           Cc Ia                                               a
                                                                      Formas normales. Cl´usulas    8.5




                         a
  Forma normal prenexa: C´lculo de forma normal prenexa

      • Algoritmo    (cont.)
        4. Interiorizar las negaciones usando las equivalencias
               ¬(F ∧ G) ≡ ¬F ∨ ¬G                                                                  (5)
               ¬(F ∨ G) ≡ ¬F ∧ ¬G                                                                  (6)
               ¬¬F ≡ F                                                                             (7)
               ¬(∀x)F ≡ (∃x)¬F                                                                     (8)
               ¬(∃x)F ≡ (∀x)¬F                                                                     (9)
        5. Exteriorizar los cuantificadores usando las equivalencias
              (∀x)F ∧ G ≡ (∀x)(F ∧ G)         con x no libre en G.                            (11)
              (∀x)F ∨ G ≡ (∀x)(F ∨ G)         con x no libre en G.                            (12)
              (∃x)F ∧ G ≡ (∃x)(F ∧ G)         con x no libre en G.                            (13)
              (∃x)F ∨ G ≡ (∃x)(F ∨ G)         con x no libre en G.                            (14)
              G ∧ (∀x)F ≡ (∀x)(G ∧ F )        con x no libre en G.                            (15)
              G ∨ (∀x)F ≡ (∀x)(G ∨ F )        con x no libre en G.                            (16)
              G ∧ (∃x)F ≡ (∃x)(G ∧ F )        con x no libre en G.                            (17)
              G ∨ (∃x)F ≡ (∃x)(G ∨ F )        con x no libre en G.                            (18)


LI 2004–05                           Cc Ia                                               a
                                                                      Formas normales. Cl´usulas    8.6
                                Lógica informática (2004–05)                                 117


                         a
  Forma normal prenexa: C´lculo de forma normal prenexa

     • Ejemplo        a
                  de c´lculo de una forma normal prenexa de
             ¬(∃x)[P (x) → (∀x)P (x)]
       ≡     ¬(∃x)[P (x) → (∀y)P (y)]    [por (1)]
       ≡     ¬(∃x)[¬P (x) ∨ (∀y)P (y)] [por (4)]
       ≡     (∀x)[¬(¬P (x) ∨ (∀y)P (y))] [por (9)]
       ≡     (∀x)[¬¬P (x) ∧ ¬(∀y)P (y)] [por (6)]
       ≡     (∀x)[P (x) ∧ (∃y)¬P (y)]    [por (7 y 8)]
       ≡     (∀x)(∃y)[P (x) ∧ ¬P (y)]    [por (17)]
     • Ejemplo    a
              de c´lculo de una forma normal prenexa de
         (∀x)P (x) ∨ (∃y)Q(y)
       ≡ (∀x)[P (x) ∨ (∃y)Q(y)] [por (12)]
       ≡ (∀x)(∃y)[P (x) ∨ Q(y)] [por (18)]
     • Ejemplo    a
              de c´lculo de otra forma normal prenexa de
         (∀x)P (x) ∨ (∃y)Q(y)
       ≡ (∃y)[(∀x)P (x) ∨ Q(y)] [por (18)]
       ≡ (∃y)(∀x)[P (x) ∨ Q(y)] [por (12)]

LI 2004–05                           Cc Ia                                         a
                                                                Formas normales. Cl´usulas   8.7




                         a
  Forma normal prenexa: C´lculo de forma normal prenexa

     • Ejemplo        a
                  de c´lculo de una forma normal prenexa de
       ¬((∀x)[P (x) → Q(x)] ∧ (∀x)[Q(x) → R(x)] → (∀x)[P (x) → R(x)])
   ≡ ¬((∀x)[P (x) → Q(x)] ∧ (∀y)[Q(y) → R(y)] → (∀z)[P (z) → R(z)])             [por (1)]
   ≡ ¬(¬((∀x)[¬P (x) ∨ Q(x)] ∧ (∀y)[¬Q(y) ∨ R(y)]) ∨ (∀z)[¬P (z) ∨ R(z)]) [por (4)]
   ≡ ¬¬((∀x)[¬P (x) ∨ Q(x)] ∧ (∀y)[¬Q(y) ∨ R(y)]) ∧ ¬(∀z)[¬P (z) ∨ R(z)] [por (6)]
   ≡ ((∀x)[¬P (x) ∨ Q(x)] ∧ (∀y)[¬Q(y) ∨ R(y)]) ∧ (∃z)[¬(¬P (z) ∨ R(z))]        [por (7, 8)]
   ≡ ((∀x)[¬P (x) ∨ Q(x)] ∧ (∀y)[¬Q(y) ∨ R(y)]) ∧ (∃z)[¬¬P (z) ∧ ¬R(z)]         [por (6)]
   ≡ ((∀x)[¬P (x) ∨ Q(x)] ∧ (∀y)[¬Q(y) ∨ R(y)]) ∧ (∃z)[P (z) ∧ ¬R(z)]           [por (7)]
   ≡ (∃z)[((∀x)[¬P (x) ∨ Q(x)] ∧ (∀y)[¬Q(y) ∨ R(y)]) ∧ (P (z) ∧ ¬R(z))]         [por (17)]
   ≡ (∃z)[(∀x)[(¬P (x) ∨ Q(x)) ∧ (∀y)[¬Q(y) ∨ R(y)]] ∧ (P (z) ∧ ¬R(z))]         [por (11)]
   ≡ (∃z)(∀x)[((¬P (x) ∨ Q(x)) ∧ (∀y)[¬Q(y) ∨ R(y)]) ∧ (P (z) ∧ ¬R(z))]         [por (11)]
   ≡ (∃z)(∀x)[(∀y)[(¬P (x) ∨ Q(x)) ∧ (¬Q(y) ∨ R(y))] ∧ (P (z) ∧ ¬R(z))]         [por (15)]
   ≡ (∃z)(∀x)(∀y)[((¬P (x) ∨ Q(x)) ∧ (¬Q(y) ∨ R(y))) ∧ (P (z) ∧ ¬R(z))]         [por (11)]

LI 2004–05                           Cc Ia                                         a
                                                                Formas normales. Cl´usulas   8.8
118                                        José A. Alonso


  Forma normal prenexa conjuntiva

 •    o
     F´rmula en forma normal prenexa conjuntiva
      • Def.:    o              a
             La f´rmula F est´ en forma normal prenexa conjuntiva (FNPC) si es de la
       forma (Q1x1) . . . (Qnxn)G, donde Qi ∈ {∀, ∃}, n ≥ 0, G no tiene cuantificadores y
            a
       G est´ en forma normal conjuntiva.

 •                 a
     Algoritmo de c´lculo de forma normal prenexa conjuntiva:
      • Algoritmo:                   o                                           o
                   Aplicando a una f´rmula los siguientes pasos se obtiene otra f´rmula
                            a
       equivalente y que est´ en forma normal prenexa conjuntiva rectificada:
        1. Calcular una forma normal prenexa rectificada usando las equivalencias (1)–(18)
        2. Interiorizar las disyunciones usando las equivalencias
               A ∨ (B ∧ C) ≡ (A ∨ B) ∧ (A ∨ C)                                                 (19)
               (A ∧ B) ∨ C ≡ (A ∨ C) ∧ (B ∨ C)                                                 (20)

      • Ejemplo       a
                  de c´lculo de una FNPC de (∀x)(∃y)[P (x) ∨ (Q(y) ∧ ¬R(y))]:
               (∀x)(∃y)[P (x) ∨ (Q(y) ∧ ¬R(y))]
             ≡ (∀x)(∃y)[(P (x) ∨ Q(y)) ∧ (P (x) ∨ ¬R(y))] [por (19)]

LI 2004–05                              Cc Ia                                             a
                                                                       Formas normales. Cl´usulas    8.9




  Forma de Skolem

 •   Forma de Skolem:
      • Def.:       o          a
             La f´rmula F est´ en forma de Skolem (FS) si es de la forma
       (∀x1) . . . (∀xn)G, donde n ≥ 0 y G no tiene cuantificadores.
      • Ejemplos:    (∀x)(∃y)P (x, y)          a
                                        no est´ en forma de Skolem
                     (∀x)P (x, f (x))    ı    a
                                        s´ est´ en forma de Skolem
                     (∃x)Q(x)                  a
                                        no est´ en forma de Skolem
                     Q(a)                ı    a
                                        s´ est´ en forma de Skolem

 •   Equisatisfacibilidad:
      • Def.:     o
             Las f´rmulas F y G son equisatisfacible si:
           F es satisfacible syss G es satisfacible.
       Se representa por F ≡sat G
      • Ejemplos:    (∃x)Q(x)           ≡sat    Q(a)
                     (∃x)Q(x)           ≡       Q(a)
                     (∀x)(∃y)P (x, y)   ≡sat    (∀x)P (x, f (x))
                     (∀x)(∃y)P (x, y)   ≡       (∀x)P (x, f (x))

LI 2004–05                              Cc Ia                                           a
                                                                     Formas normales. Cl´usulas     8.10
                                     Lógica informática (2004–05)                                      119


  Forma de Skolem
 •   Propiedades:
     • Si    a es una constante que no ocurre en F , entonces (∃x)F ≡sat F [x/a].
        g es un s´
     • Si                          o
                    ımbolo de funci´n n–aria que no ocurre en F , entonces
      (∀x1) . . . (∀xn)(∃x)F ≡sat (∀x1) . . . (∀xn)F [x/g(x1, . . . , xn)].

 •                 a
     Algoritmo de c´lculo de forma de Skolem:
     • Algoritmo:            o
                  Sea F una f´rmula en forma normal prenexa rectificada, la forma de
      Skolem de F es
                
                 Sko(G[x/a]),
                                               si F es (∃x)G y a es una nueva constante
                
                
                
                                                  que no ocurre en F (constante de Skolem);
                
                
                
                                                                                          ımbolo
                  Sko(G[x/f (x1, . . . , xn)]), si F es (∀x1) . . . (∀xn)(∃x)G y f es un s´
      Sko(F ) =
                
                                                          o
                                                   de funci´n n–aria que no ocurre en F
                
                
                
                                                        o
                                                   (funci´n de Skolem);
                
                
                 F,                                    a
                                                si F est´ en forma de Skolem
     • Propiedad:               o
                   Si F es una f´rmula en forma normal prenexa rectificada, entonces
                 a
      Sko(F ) est´ en forma de Skolem y Sko(F ) ≡sat F .

LI 2004–05                                Cc Ia                                             a
                                                                         Formas normales. Cl´usulas   8.11




                    a
  Forma de Skolem: C´lculo de forma de Skolem
     • Ejemplos         a
                    de c´lculo de forma de Skolem:
      – Ejemplo 1:
               Sko((∃x)(∀y)(∀z)(∃u)(∀v)(∃w)P (x, y, z, u, v, w))
               = Sko((∀y)(∀z)(∃u)(∀v)(∃w)P (a, y, z, u, v, w))
               = Sko((∀y)(∀z)(∀v)(∃w)P (a, y, z, f (y, z), v, w))
               = Sko((∀y)(∀z)(∀v)P (a, y, z, f (y, z), v, g(y, z, v)))
               = (∀y)(∀z)(∀v)P (a, y, z, f (y, z), v, g(y, z, v))

      – Ejemplo 2:
               Sko((∀x)(∃y)(∀z)(∃w)[¬P (a, w) ∨ Q(f (x), y)])
               = Sko((∀x)(∀z)(∃w)[¬P (a, w) ∨ Q(f (x), h(x))])
               = Sko((∀x)(∀z)[¬P (a, g(x, z)) ∨ Q(f (x), h(x))])
               = (∀x)(∀z)[¬P (a, g(x, z)) ∨ Q(f (x), h(x))]




LI 2004–05                                Cc Ia                                             a
                                                                         Formas normales. Cl´usulas   8.12
120                                          José A. Alonso


                    a
  Forma de Skolem: C´lculo de forma de Skolem
      • Ejemplo       a
                  de c´lculo de una forma de Skolem de
               ¬(∃x)[P (x) → (∀x)P (x)]
       ≡                                      a
               (∀x)(∃y)[P (x) ∧ ¬P (y)] [por p´gina ??]
       ≡sat    (∀x)[P (x) ∧ ¬P (f (x))]
      • Ejemplo       a
                  de c´lculo de una forma de Skolem de
               (∀x)P (x) ∨ (∃y)Q(y)
       ≡                                    a
               (∀x)(∃y)[P (x) ∨ Q(y)] [por p´gina ??]
       ≡sat    (∀x)[P (x) ∨ Q(f (x))]
      • Ejemplo       a
                  de c´lculo de otra forma de Skolem de
               (∀x)P (x) ∨ (∃y)Q(y)
       ≡                                    a
               (∃y)(∀x)[P (x) ∨ Q(y)] [por p´gina ??]
       ≡sat    (∀x)[P (x) ∨ Q(a)]
      • Ejemplo       a
                  de c´lculo de una forma de Skolem de
               ¬((∀x)[P (x) → Q(x)] ∧ (∀x)[Q(x) → R(x)] → (∀x)[P (x) → R(x)])
       ≡       (∃z)(∀x)(∀y)[((¬P (x) ∨ Q(x)) ∧ (¬Q(y) ∨ R(y))) ∧ (P (z) ∧ ¬R(z))] [por p. ??]
       ≡sat    (∀x)(∀y)[((¬P (x) ∨ Q(x)) ∧ (¬Q(y) ∨ R(y))) ∧ (P (a) ∧ ¬R(a))]

LI 2004–05                               Cc Ia                                              a
                                                                         Formas normales. Cl´usulas   8.13




   o
  L´gica clausal: sintaxis

 •                   o
     Sintaxis de la l´gica clausal
      • Un   a             o        o
             ´tomo es una f´rnula at´mica.
                             a
             Variables sobre ´tomos: A, B, C, . . . , A1, A2, . . ..
      • Un                 a                    o        a
             literal es un ´tomo (A) o la negaci´n de un ´tomo (¬A).
             Variables sobre literales: L, L1, L2, . . ..
      • Una     a
              cl´usula es un conjunto finito de literales.
                               a
             Variables sobre cl´usulas: C, C1, C2, . . ..
      • La     a         ıa                  ıo
             cl´usula vac´ es el conjunto vac´ de literales.
                  a         ıa
             La cl´usula vac´ se representa por        .
      • Conjuntos               a
                    finitos de cl´usulas.
                                                   a
             Variables sobre conjuntos finitos de cl´usulas: S, S1, S2, . . ..




LI 2004–05                               Cc Ia                                              a
                                                                         Formas normales. Cl´usulas   8.14
                                      Lógica informática (2004–05)                                                 121


   o                 a
  L´gica clausal: sem´ntica
 •    o
     F´rmulas correspondientes:
     • Def.:       o                             a
               La f´rmula correspondiente a la cl´usula {L1, . . . , Ln} es
             (∀x1) . . . (∀xp)[L1 ∨ . . . ∨ Ln],
      donde x1, . . . , xp son las variables libres de L1 ∨ . . . ∨ Ln.
     • Def.:       o                             a
               La f´rmula correspondiente a la cl´usula                es ⊥.
     • Def.:       o                                       a
               La f´rmula correspondiente al conjunto de cl´usulas
      {{L1, . . . , L1 1 }, . . . , {Lm, . . . , Lm }} es
         1           n                 1          nm
                                     1
         (∀x1) . . . (∀xp)[(L1 ∨ . . . ∨ L1 1 ) ∧ . . .
                                                   n        ∧ (Lm ∨ . . . ∨ Lm )],
                                                                1            nm
      donde x1, . . . , xp son las variables libres de (L1 ∨ . . . ∨ L1 1 ) ∧ . . . ∧ (Lm ∨ . . . ∨ Lm ).
                                                         1            n                 1            nm

     • Def.:       o                                       a
               La f´rmula correspondiente al conjunto de cl´usulas ∅ es                    .

 •      a
     Sem´ntica:
     • Def.:                            o
               En cualquier interpretaci´n I = (U, I), I( ) = 1 e I(⊥) = 0.
     • Def.:                     a                        a
             Los conceptos sem´nticos relativos a las cl´usulas y a los conjuntos de
        a                                        o
      cl´usulas son los de sus correspondientes f´rmulas.
LI 2004–05                                 Cc Ia                                                        a
                                                                                     Formas normales. Cl´usulas   8.15




                        o
  Forma clausal de una f´rmula

 •                         o
     Forma clausal de una f´rmula
           Una forma clausal de una f´rmula F es un conjunto de cl´usulas S tal que
     • Def.:                         o                            a
      F ≡sat S.
     • Algoritmo:                 o
                  Aplicando a la f´rmula F los siguientes pasos se obtiene S que una
      forma clausal de F :
        1. Sea F1 = (∃y1) . . . (∃yn)F , donde y1, . . . , yn son las variables libres de F .
        2. Sea F2 una forma normal prenexa conjuntiva rectificada de F1 calculada medi-
                                    a
           ante el algoritmo de la p´gina ??.
        3. Sea F3 = Sko(F2), que tiene la forma
                 (∀x1) . . . (∀xp)[(L1 ∨ . . . ∨ L1 1 ) ∧ . . . ∧ (Lm ∨ . . . ∨ Lm )],
                                     1            n                 1            nm

        4. Sea S = {{L1, . . . , L1 1 }, . . . , {Lm, . . . , Lm }}.
                      1           n                1           nm

     • Prop.:   F ≡sat F1 ≡ F2 ≡sat F3 ≡ S.



LI 2004–05                                 Cc Ia                                                        a
                                                                                     Formas normales. Cl´usulas   8.16
122                                     José A. Alonso


                          o
    Forma clausal de una f´rmula: Ejemplos

      • Ejemplo      a
                 de c´lculo de una forma clausal de
              ¬(∃x)[P (x) → (∀x)P (x)]
       ≡sat   (∀x)[P (x) ∧ ¬P (f (x))]   a
                                       [p´g. ??]
       ≡      {{P (x)}, {¬P (f (x))}}
      • Ejemplo      a
                 de c´lculo de una forma clausal de
              (∀x)P (x) ∨ (∃y)Q(y)
       ≡sat                            a
              (∀x)[P (x) ∨ Q(f (x))] [p´g. ??]
       ≡      {{P (x), Q(f (x))}}
      • Ejemplo      a
                 de c´lculo de otra forma clausal de
              (∀x)P (x) ∨ (∃y)Q(y)
       ≡sat   (∀x)[P (x) ∨ Q(a)]       a
                                     [p´g. ??]
       ≡      {{P (x), Q(a)}}
      • Ejemplo      a
                 de c´lculo de una forma clausal de
              ¬((∀x)[P (x) → Q(x)] ∧ (∀x)[Q(x) → R(x)] → (∀x)[P (x) → R(x)])
       ≡sat   (∀x)(∀y)[((¬P (x) ∨ Q(x)) ∧ (¬Q(y) ∨ R(y))) ∧ (P (a) ∧ ¬R(a))]   a
                                                                             [p´g. ??]
       ≡      {{¬P (x), Q(x)}, {¬Q(y), R(y)}, {P (a)}, {¬R(a)}}

LI 2004–05                           Cc Ia                                                a
                                                                       Formas normales. Cl´usulas     8.17




                          o
    Forma clausal de una f´rmula: Ejemplos

      • Ejemplo     a
               de c´lculo de una forma clausal de
      ¬(∃x)[P (x, z) ∨ (∀y)Q(x, f (y))] ∨ (∀y)P (g(x, y), z)
≡sat (∃z)[¬(∃x)[P (x, z) ∨ (∀y)Q(x, f (y))] ∨ (∀y)P (g(x, y), z)]                               [1]
≡     (∃z)[¬(∃x)[P (x, z) ∨ (∀y)Q(x, f (y))] ∨ (∀w)P (g(x, w), z)]                              [(1)]
≡     (∃z)[(∀x)[¬(P (x, z) ∨ (∀y)Q(x, f (y)))] ∨ (∀w)P (g(x, w), z)]                            [(9)]
≡     (∃z)[(∀x)[¬P (x, z) ∧ ¬(∀y)Q(x, f (y))] ∨ (∀w)P (g(x, w), z)]                             [(6)]
≡     (∃z)[(∀x)[¬P (x, z) ∧ (∃y)¬Q(x, f (y))] ∨ (∀w)P (g(x, w), z)]                             [(8)]
≡     (∃z)(∀x)[(¬P (x, z) ∧ (∃y)¬Q(x, f (y))) ∨ (∀w)P (g(x, w), z)]                             [(12)]
≡     (∃z)(∀x)[(∃y)[¬P (x, z) ∧ ¬Q(x, f (y))] ∨ (∀w)P (g(x, w), z)]                             [(17)]
≡     (∃z)(∀x)(∃y)[(¬P (x, z) ∧ ¬Q(x, f (y))) ∨ (∀w)P (g(x, w), z)]                             [(14)]
≡     (∃z)(∀x)(∃y)(∀w)[(¬P (x, z) ∧ ¬Q(x, f (y))) ∨ P (g(x, w), z)]                             [(16)]
≡     (∃z)(∀x)(∃y)(∀w)[(¬P (x, z) ∨ P (g(x, w), z)) ∧ (¬Q(x, f (y)) ∨ P (g(x, w), z))] [(20)]
≡sat (∀x)(∃y)(∀w)[(¬P (x, a) ∨ P (g(x, w), a)) ∧ (¬Q(x, f (y)) ∨ P (g(x, w), a))]               [Sko]
≡sat (∀x)(∀w)[(¬P (x, a) ∨ P (g(x, w), a)) ∧ (¬Q(x, f (h(x))) ∨ P (g(x, w), a))]                [Sko]
≡     {{¬P (x, a), P (g(x, w), a)}, {¬Q(x, f (h(x))), P (g(x, w), a))}}
LI 2004–05                           Cc Ia                                                a
                                                                       Formas normales. Cl´usulas     8.18
                                 Lógica informática (2004–05)                                          123


                        o
  Forma clausal de una f´rmula: Ejemplos

     • Ejemplo        a
                  de c´lculo de una forma clausal de
               ¬((∀x)[P (x) → Q(x)] ∧ (∃x)P (x) → (∃x)Q(x))
       ≡       ¬((∀x)[P (x) → Q(x)] ∧ (∃y)P (y) → (∃z)Q(z))          [(2)]
       ≡       ¬(¬((∀x)[P (x) → Q(x)] ∧ (∃y)P (y)) ∨ (∃z)Q(z)) [(4)]
       ≡       ¬(¬((∀x)[¬P (x) ∨ Q(x)] ∧ (∃y)P (y)) ∨ (∃z)Q(z)) [(4)]
       ≡       ¬¬((∀x)[¬P (x) ∨ Q(x)] ∧ (∃y)P (y)) ∧ ¬(∃z)Q(z) [(6)]
       ≡       ((∀x)[¬P (x) ∨ Q(x)] ∧ (∃y)P (y)) ∧ ¬(∃z)Q(z)         [(7)]
       ≡       ((∀x)[¬P (x) ∨ Q(x)] ∧ (∃y)P (y)) ∧ (∀z)¬Q(z)         [(9)]
       ≡       (∃y)[(∀x)[¬P (x) ∨ Q(x)] ∧ P (y)] ∧ (∀z)¬Q(z)         [(17)]
       ≡       (∃y)[((∀x)[¬P (x) ∨ Q(x)] ∧ P (y)) ∧ (∀z)¬Q(z)]       [(13)]
       ≡       (∃y)[(∀x)[(¬P (x) ∨ Q(x)) ∧ P (y))] ∧ (∀z)¬Q(z)       [(11)]
       ≡       (∃y)(∀x)[((¬P (x) ∨ Q(x)) ∧ P (y)) ∧ (∀z)¬Q(z)]       [(11)]
       ≡       (∃y)(∀x)(∀z)[(¬P (x) ∨ Q(x)) ∧ P (y) ∧ ¬Q(z)]         [(15)]
       ≡sat (∀x)(∀z)[(¬P (x) ∨ Q(x) ∧ P (a)) ∧ ¬Q(z)]                [(15)]
       ≡       {{¬P (x), Q(x)}, {P (a)}, {¬Q(z)}}
LI 2004–05                            Cc Ia                                                 a
                                                                         Formas normales. Cl´usulas   8.19




                                   o
  Forma clausal de un conjunto de f´rmulas

 •                                         o
     Equisatisfacibilidad de conjuntos de f´rmulas:
     • Def.:                    o
            Los conjuntos de f´rmulas S1 y S2 son equisatisfacible si:
          S1 es satisfacible syss S2 es satisfacible.
      Se representa por S1 ≡sat S2

 •                                    o
     Forma clausal de un conjunto de f´rmulas
     • Def.:                                     o                             a
            Una forma clausal de un conjunto de f´rmulas S es un conjunto de cl´usulas
      equisatisfacible con S.
     • Prop.:Si S1, . . . , Sn son formas clausales de F1, . . . , Fn, entonces S1 ∪ . . . ∪ Sn es
      una forma clausal de {F1, . . . , Fn}.
     • Ejemplo:   Una forma clausal de
             {(∀x)[P (x) → Q(x)], (∃x)P (x), ¬(∃x)Q(x)}
      es
             {{¬P (x), Q(x)}, {P (a)}, {¬Q(z)}}.



LI 2004–05                            Cc Ia                                                 a
                                                                         Formas normales. Cl´usulas   8.20
124                                        José A. Alonso


         o                                            a
  Reducci´n de consecuencia a insatisfacibilidad de cl´usulas

 •          o                                            a
     Reducci´n de consecuencia a insatisfacibilidad de cl´usulas:
      • Prop:                                              o
              Sean S1, . . . , Sn formas clausales de las f´rmulas F1, . . . , Fn. Si S es una
       forma clausal de ¬G, entonces son equivalentes
        1. {F1, . . . , Fn} |= G.
        2. {F1, . . . , Fn, ¬G} es inconsistente.
        3. S1 ∪ . . . ∪ Sn ∪ S es inconsistente.

      • Ejemplos:

       – Ejemplo 1:
               {(∀x)[P (x) → Q(x)], (∃x)P (x)} |= (∃x)Q(x)
            syss {{¬P (x), Q(x)}, {P (a)}, {¬Q(z)}} es inconsistente.
       – Ejemplo 2:
               {(∀x)[P (x) → Q(x)], (∀x)[Q(x) → R(x)]} |= (∀x)[P (x) → R(x)]
               syss {{¬P (x), Q(x)}, {¬Q(y), R(y)}, {P (a)}, {¬R(a)}} es inconsistente.


LI 2004–05                             Cc Ia                                             a
                                                                      Formas normales. Cl´usulas   8.21




            ıa
  Bibliograf´

      • M.L.                                      e               n
                Bonet Apuntes de LPO. (Univ. Polit´cnica de Catalu˜ a, 2003) pp. 26–31.
           Chang y R.C.T. Lee Symbolic logic and mechanical theorem proving (Aca-
      • C.L.

       demic Press, 1973) pp. 35–39 y 46–51.
           Fern´ndez, A. Manjarr´s y F.J. D´ L´gica computacional. (UNED, 2003)
      • J.L.   a                e          ıez o
       pp. 101–106.
      • S.    o
             H¨lldobler Computational logic. (U. de Dresden, 2004) pp. 62–67.
      • R.             o                               e              n
          Nieuwenhuis L´gica de primer orden. (U. Polit´nica de Catalu˜ a, 2003) pp.
       16–17
      • M.            e     o                      o            o
          Ojeda e I. P´rez L´gica para la computaci´n (Vol. 2: L´gica de Primer Orden)
        ´
       (Agora, 1997) pp. 37–49
         Paniagua, J.L. S´nchez y F. Mart´ L´gica computacional (Thomson, 2003) pp.
      • E.               a               ın o
       153–160.
      • L.   Paulson Logic and proof (U. Cambridge, 2002) pp. 43–47.
      • U.      o                                        a
             Sch¨ning Logic for computer scientists (Birk¨user, 1989) pp. 51–61.

LI 2004–05                             Cc Ia                                             a
                                                                      Formas normales. Cl´usulas   8.22
Capítulo 9

Resolución en lógica de primer orden




                  125
126                                         José A. Alonso
 ´           ´
Logica informatica                                                                           Curso 2004–05




                                        o      o
                        Tema 9: Resoluci´n en l´gica de
                                primer orden




                                           e              e
                                        Jos´ A. Alonso Jim´nez
                                             e       o
                                        Andr´s Cord´n Franco




                                               o
                                   Grupo de L´gica Computacional
                                                       o
                      Dpto. de Ciencias de la Computaci´n e Inteligencia Artificial

                                     Universidad de Sevilla




LI 2004–05                          Cc Ia                                     o      o
                                                                      Resoluci´n en l´gica de primer orden   9.1




            o
  Introducci´n

 •                                             o
     Ejemplos de consecuencia mediante resoluci´n:
      • Ejemplo   1: {(∀x)[P (x) → Q(x)], (∃x)P (x)} |= (∃x)Q(x)
             syss {{¬P (x), Q(x)}, {P (a)}, {¬Q(z)}} es inconsistente.
                                       o
                 1 {¬P (x), Q(x)} Hip´tesis
                 2 {P (a)}             o
                                   Hip´tesis
                 3 {¬Q(z)}             o
                                   Hip´tesis
                 4 {Q(a)}          Resolvente de 1 y 2 con σ = [x/a]
                 5                 Resolvente de 3 y 4 con σ = [z/a]
      • Ejemplo   2: {(∀x)[P (x) → Q(x)], (∀x)[Q(x) → R(x)]} |= (∀x)[P (x) → R(x)]
             syss {{¬P (x), Q(x)}, {¬Q(y), R(y)}, {P (a)}, {¬R(a)}} es inconsistente.
                                      o
                 1 {¬P (x), Q(x)} Hip´tesis
                                      o
                 2 {¬Q(y), R(y)} Hip´tesis
                 3 {P (a)}            o
                                   Hip´tesis
                 4 {¬R(a)}            o
                                   Hip´tesis
                 5 {Q(a)}          Resolvente de 1 y 2 con σ = [x/a]
                 6 {R(a)}          Resolvente de 2 y 5 con σ = [y/a]
                 5                 Resolvente de 3 y 4 con σ =
LI 2004–05                          Cc Ia                                     o      o
                                                                      Resoluci´n en l´gica de primer orden   9.2
                                     Lógica informática (2004–05)                                            127


          o
  Unificaci´n: Unificadores
 •   Unificador:
     • Def.:               o                            e
               La sustituci´n σ es un unificador de los t´rminos t1 y t2 si t1σ = t2σ.
     • Def.:        e                                           u
               Los t´rminos t1 y t2 son unificables si tienen alg´ n unificador.
     • Def.:                      u                                     o
            t es una instancia com´ n de t1 y t2 si existe una sustituci´n σ tal que t =
      t1σ = t2σ.
     • Ejemplos:

             t1            t2            Unificador                      u
                                                         Instancia com´ n
             f (x, g(z))   f (g(y), x)   [x/g(z), y/z]   f (g(z), g(z))
             f (x, g(z))   f (g(y), x)   [x/g(y), z/y]   f (g(y), g(y))
             f (x, g(z))   f (g(y), x)   [x/g(a), y/a]   f (g(a), g(a))
             f (x, y)      f (y, x)      [x/a, y/a]      f (a, a)
             f (x, y)      f (y, x)      [y/x]           f (x, x)
             f (x, y)      g(a, b)       No tiene        No tiene
             f (x, x)      f (a, b)      No tiene        No tiene
             f (x)         f (g(x))      No tiene        No tiene
     • Nota:                                                           e
               Las anteriores definiciones se extienden a conjuntos de t´rminos y de literales.

LI 2004–05                               Cc Ia                                o      o
                                                                      Resoluci´n en l´gica de primer orden   9.3




          o            o
  Unificaci´n: Composici´n de sustituciones

 •            o
     Composici´n de sustituciones:
     • Def.:            o                                              o
            La composici´n de las sustituciones σ1 y σ2 es la sustituci´n σ1σ2 definida
      por x(σ1σ2) = (xσ1)σ2, para toda variable x.
     • Ejemplo:    Si σ1 = [x/f (z, a), y/w] y σ2 = [x/b, z/g(w)], entonces
         – xσ1σ2 = (xσ1)σ2 = f (z, a)σ2 = f (zσ2, aσ2) = f (g(w), a)
         – yσ1σ2 = (yσ1)σ2 = wσ2 = w
         – zσ1σ2 = (zσ1)σ2 = zσ2 = g(w)
         – wσ1σ2 = (wσ1)σ2 = wσ2 = w
      Por tanto, σ1σ2 = [x/f (g(w), a), y/w, z/g(w)].
     • Def.:                o                           o
               La substituci´n identidad es la sustituci´n        tal que, para todo x, x = x.
     • Propiedades:


        1. Asociativa: σ1(σ2σ3) = (σ1σ2)σ3
        2. Neutro: σ = σ = σ.
LI 2004–05                               Cc Ia                                o      o
                                                                      Resoluci´n en l´gica de primer orden   9.4
128                                         José A. Alonso


          o            o
  Unificaci´n: Comparaci´n de sustituciones

 •            o
     Comparaci´n de sustituciones:
            La sustituci´n σ1 es m´s general que la σ2 si existe una sustituci´n σ3 tal que
      • Def.:           o         a                                           o
       σ2 = σ1σ3, Se representa por σ2 ≤ σ1.
            Las sustituciones σ1 y σ2 son equivalentes si σ1 ≤ σ2 y σ2 ≤ σ1. Se representa
      • Def.:

       por σ1 ≡ σ2.
      • Ejemplos:    Sean σ1 = [x/g(z), y/z], σ2 = [x/g(y), z/y] y σ3 = [x/g(a), y/a]. En-
       tonces,
        1. σ1 = σ2[y/z]
        2. σ2 = σ1[z/y]
        3. σ3 = σ1[z/a]
        4. σ1 ≡ σ2
        5. σ3 ≤ σ1

      • Ejemplo:    [x/a, y/a] ≤ [y/x], ya que [x/a, y/a] = [y/x][x/a, y/a].

LI 2004–05                          Cc Ia                                o      o
                                                                 Resoluci´n en l´gica de primer orden   9.5




          o                 a
  Unificaci´n: Unificador de m´xima generalidad

 •                 a
     Unificador de m´xima generalidad:
      • Def.:              o                      a
             La sustituci´n σ es un unificador de m´xima generalidad (UMG) de los
        e
       t´rminos t1 y t2 si
         – σ es un unificador de t1 y t2.
                 a
         – σ es m´s general que cualquier unificador de t1 y t2.

      • Ejemplos:


        1. [x/g(z), y/z] es un UMG de f (x, g(z)) y f (g(y), x).
        2. [x/g(y), z/y] es un UMG de f (x, g(z)) y f (g(y), x).
        3. [x/g(a), y/a] no es un UMG de f (x, g(z)) y f (g(y), x).

      • Nota:                       o                               e
                Las anterior definici´n se extienden a conjuntos de t´rminos y de literales.




LI 2004–05                          Cc Ia                                o      o
                                                                 Resoluci´n en l´gica de primer orden   9.6
                                      Lógica informática (2004–05)                                               129


          o                        o
  Unificaci´n: Algoritmo de unificaci´n
 •         o
     Notaci´n de lista:
     • (a , . . . , a ) representa una lista cuyos elementos       son a1, . . . , an.
         1           n
     • (a|R) representa una lista cuyo primer elemento             es a y resto es R.
     • ()                           ıa.
             representa la lista vac´

 •                             e
     Unificadores de listas de t´rminos:
     • Def.: σ es un unificador de (s1 . . . , sn) y (t1 . . . , tn) si s1σ = t1σ, . . . , snσ = tnσ.
     • Def.:                                                               u
             (s1 . . . , sn) y (t1 . . . , tn) son unificables si tienen alg´ n unificador.
                                               a
     • Def.: σ es un unificador de m´xima generalidad (UMG) de (s . . . , s ) y (t . . . , t )
                                                                                1       n      1     n
                                                                    a
       si σ es un unificador de (s1 . . . , sn) y (t1 . . . , tn) m´s general que cualquier otro.

 •           o                  o
     Aplicaci´n de una sustituci´n a una lista de ecuaciones:
     • (s     = t1, . . . , sn = tn)σ = (s1σ = t1σ, . . . , snσ = tnσ).
         1

 •                        o                e
     Algoritmo de unificaci´n de listas de t´rminos:
     • Entrada:                                                                              o
                    Una lista de ecuaciones L = (s1 = t1, . . . , sn = tn) y una sustituci´n σ.
     • Salida:    Un UMG de las listas (s1 . . . , sn) y (t1 . . . , tn), si son unificables;
                  “No unificables”, en caso contrario.


LI 2004–05                               Cc Ia                                    o      o
                                                                          Resoluci´n en l´gica de primer orden   9.7




          o                        o
  Unificaci´n: Algoritmo de unificaci´n

     • Procedimiento       unif(L, σ):
        1. Si L = (), entonces unif(L, σ) = σ.
        2. Si L = (t = t|L ), entonces unif(L, σ) = unif(L , σ).
        3. Si L = (f (t1, . . . , tm) = f (t1 . . . , tm)|L ), entonces
                  unif(L, σ) = unif((t1 = t1, . . . , tm = tm|L ), σ).
                              o
        4. Si L = (x = t|L ) (´ L = (t = x|L )) y x no aparece en t, entonces
                  unif(L, σ) = unif(L [x/t], σ[x/t]).
                              o
        5. Si L = (x = t|L ) (´ L = (t = x|L )) y x aparece en t, entonces
                  unif(L, σ) = “No unificables”.
        6. Si L = (f (t1, . . . , tm) = g(t1 . . . , tm)|L ), entonces
                  unif(L, σ) = “No unificables”.
        7. Si L = (f (t1, . . . , tm) = f (t1 . . . , tp)|L ) y m = p, entonces
                  unif(L, σ) = “No unificables”.

LI 2004–05                               Cc Ia                                    o      o
                                                                          Resoluci´n en l´gica de primer orden   9.8
130                                           José A. Alonso


          o                        o
  Unificaci´n: Algoritmo de unificaci´n

 •                        o          e
     Algoritmo de unificaci´n de dos t´rminos:
      • Entrada:         e
                    Dos t´rminos t1 y t2.
      • Salida:   Un UMG de t1 y t2, si son unificables;
                  “No unificables”, en caso contrario.
      • Procedimiento:     unif((t1 = t2), ).
      • Ejemplo    1: Unificar f (x, g(z)) y f (g(y), x):
                  unif((f (x, g(z)) = f (g(y), x)), )
             =    unif((x = g(y), g(z) = x), )            por 3
             =    unif((g(z) = x)[x/g(y)], [x/g(y)])      por 4
             =    unif((g(z) = g(y)), [x/g(y)])
             =    unif((z = y), [x/g(y)])                 por 3
             =    unif((), [x/g(y)][z/y])                 por 4
             =    unif((), [x/g(y), z/y])
             =    [x/g(y), z/y]                           por 1



LI 2004–05                            Cc Ia                                o      o
                                                                   Resoluci´n en l´gica de primer orden    9.9




          o                        o
  Unificaci´n: Algoritmo de unificaci´n
      • Ejemplo     2: Unificar f (x, b) y f (a, y):
                  unif((f (x, b) = f (a, y), )
             =    unif((x = a, b = y), )              por 3
             =    unif((b = y)[x/a], [x/a])           por 4
             =    unif((b = y), [x/a])
             =    unif((), [x/a][y/b])                por 4
             =    [x/a, y/b])                         por 1
      • Ejemplo    3: Unificar f (x, x) y f (a, b):
                  unif((f (x, x) = f (a, b)), )
             =    unif((x = a, x = b), )              por 3
             =    unif((x = b)[x/a], [x/a])           por 4
             =    unif((a = b), [x/a])
             =    “No unificable”                      por 6
      • Ejemplo    4: Unificar f (x, g(y)) y f (y, x):
                  unif((f (x, g(y)) = f (y, x)), )
             =    unif((x = y, g(y) = x), )              por 3
             =    unif((g(y) = x)[x/y], [x/y])           por 4
             =    unif((g(y) = y), [x/y])
             =    “No unificable”                         por 5
LI 2004–05                            Cc Ia                               o      o
                                                                  Resoluci´n en l´gica de primer orden    9.10
                                  Lógica informática (2004–05)                                           131


          o                        o
  Unificaci´n: Algoritmo de unificaci´n

     • Ejemplo    5: Unificar j(w, a, h(w)) y j(f (x, y), x, z)
                 unif((j(w, a, h(w)) = j(f (x, y), x, z)) )
             =   unif((w = f (x, y), a = x, h(w) = z), )                  por 3
             =   unif((a = x, h(w) = z)[w/f (x, y)], [w/f (x, y)])        por 4
             =   unif((a = x, h(f (x, y)) = z), [w/f (x, y)])
             =   unif((h(f (x, y)) = z)[x/a], [w/f (x, y)][x/a])          por 4
             =   unif((h(f (a, y)) = z), [w/f (a, y), x/a])
             =   unif((), [w/f (a, y), x/a][z/h(f (a, y))])               por 4
             =   [w/f (a, y), x/a, z/h(f (a, y)))                         por 1
     • Ejemplo    6: Unificar j(w, a, h(w)) y j(f (x, y), x, y)
                 unif((j(w, a, h(w)) = j(f (x, y), x, y)) )
             =   unif((w = f (x, y), a = x, h(w) = y), )                  por 3
             =   unif((a = x, h(w) = y)[w/f (x, y)], [w/f (x, y)])        por 4
             =   unif((a = x, h(f (x, y)) = y), [w/f (x, y)])
             =   unif((h(f (x, y)) = y)[x/a], [w/f (x, y)][x/a])          por 4
             =   unif((h(f (a, y)) = y), [w/f (a, y), x/a])
             =   “No unificable”                                           por 5
LI 2004–05                          Cc Ia                                o      o
                                                                 Resoluci´n en l´gica de primer orden   9.11




          o           o
  Resoluci´n: Separaci´n de variables

 •           o
     Separaci´n de variables
     • Def.:            o
            La sustituci´n [x1/t1, . . . , xn/tn] es un renombramiento si todos los ti son
      variables.
     • Prop.:    Si θ es un renombramiento, entonces C ≡ Cθ.
     • Def.:         a                  a                                              u
               Las cl´usulas C1 y C2 est´n separadas sin no tienen ninguna variable com´ n.
     • Def.:              o
             Una separaci´n de las variables de C1 y C2 es un par de renombramientos
                                        a
      (θ1, θ2) tales que C1θ1 y C2θ2 est´n separadas.
     • Ejemplo:               o
                Una separaci´n de variables de C1 = {P (x), Q(x, y)} y C2 = {R(f (x, y))}
      es (θ1 = [x/x1, y/y1], θ2 = [x/x2, y/y2]).




LI 2004–05                          Cc Ia                                o      o
                                                                 Resoluci´n en l´gica de primer orden   9.12
132                                           José A. Alonso


          o
  Resoluci´n: Resolvente binaria

 •           o
     Resoluci´n binaria:
            La cl´usula C es una resolvente binaria de las cl´usulas C1 y C2 si existen una
      • Def.:    a                                            a
               o
       separaci´n de variables (θ1, θ2) de C1 y C2, un literal L1 ∈ C1, un literal L2 ∈ C2 y
       un UMG σ de L1θ1 y Lc θ2 tales que
                               2

             C = (C1θ1σ       {L1θ1σ1}) ∪ (C2θ2σ     {L2θ2σ}).
      • Ejemplo:     Sean
             C1      = {¬P (x), Q(f (x))},
             C2      = {¬Q(x), R(g(x))},
             L1      = Q(f (x)),
             L2      = ¬Q(x),
             θ1      = [x/x1],
             θ2      = [x/x2],
             L1θ1    = Q(f (x1)),
             Lc θ2
               2     = Q(x2),
             σ       = [x2/f (x1)]
       Entonces, C = {¬P (x1), R(g(f (x1)))} es una resolvente binaria de C1 y C2.

LI 2004–05                            Cc Ia                              o      o
                                                                 Resoluci´n en l´gica de primer orden   9.13




          o              o
  Resoluci´n: Factorizaci´n

 •              o
     Factorizaci´n:
            La cl´usula C es un factor de la cl´usula D si existen dos literales L1 y L2 en
      • Def.:    a                             a
       D que son unificables y C = Dσ {L2σ} donde σ es un UMG de L1 y L2.
      • Ejemplo:     Sean
             D    =   {P (x, y), P (y, x), Q(a)}
             L1   =   P (x, y)
             L2   =   P (y, x)
             σ    =   [y/x]
       Entonces,
             C = {P (x, x), Q(a)} es un factor de D.




LI 2004–05                            Cc Ia                              o      o
                                                                 Resoluci´n en l´gica de primer orden   9.14
                                   Lógica informática (2004–05)                                            133


          o
  Resoluci´n
 •                       o              o
     Ejemplos de refutaci´n por resoluci´n:
               o
     • Refutaci´n     de S = {{¬P (x, f (x, y))}, {P (a, z), ¬Q(z, v)}, {Q(u, a)}}
             1   {¬P (x, f (x, y))}      o
                                      Hip´tesis
             2                           o
                 {P (a, z), ¬Q(z, v)} Hip´tesis
             3   {Q(u, a)}               o
                                      Hip´tesis
             4   {¬Q(f (a, y), v)}    Resolvente de 1 y 2 con σ = [x/a, z/f (a, y)]
             5                        Resolvente de 3 y 4 con σ = [u/f (a, y), v/a]

               o
     • Refutaci´n   de S = {{P (x)}, {¬P (f (x))}}
             1 {P (x)}          o
                            Hip´tesis
                                o
             2 {¬P (f (x))} Hip´tesis
             3              Resolvente de 1 y 2 con θ1 = , θ2 = [x/x ], σ = [x/f (x )]

               o
     • Refutaci´n     de S = {{P (x, y), P (y, x)}, {¬P (u, v), ¬P (v, u)}}
             1   {P (x, y), P (y, x)}       o
                                        Hip´tesis
             2                              o
                 {¬P (u, v), ¬P (v, u)} Hip´tesis
             3   {P (x, x)}             Factor de 1 con [y/x]
             4   {¬P (u, u)}            Factor de 2 con [v/u]
             5                          Resolvente de 3 y 4 con [x/u]

LI 2004–05                           Cc Ia                                 o      o
                                                                   Resoluci´n en l´gica de primer orden   9.15




          o
  Resoluci´n

 •   Definiciones
     • Sea                      a
             S un conjunto de cl´usulas.
     • La      o                                    o              o          a
         sucesi´n (C1, . . . , Cn) es una demostraci´n por resoluci´n de la cl´usula C a
      partir de S si C = Cn y para todo i ∈ {1, ..., n} se verifica una de las siguientes
      condiciones:
         – Ci ∈ S;
         – existen j, k < i tales que Ci es una resolvente de Cj y Ck
         – existe j < i tal que Ci es un factor de Cj

     • La  a                                   o                                        o
         cl´usula C es demostrable por resoluci´n a partir de S si existe una demostraci´n
                  o
      por resoluci´n de C a partir de S.
     • Una         o              o                        o              o          a
           refutaci´n por resoluci´n de S es una demostraci´n por resoluci´n de la cl´usula
         ıa
      vac´ a partir de S.
     • Se                                    o                        o              o
         dice que S es refutable por resoluci´n si existe una refutaci´n por resoluci´n a
      partir de S.

LI 2004–05                           Cc Ia                                 o      o
                                                                   Resoluci´n en l´gica de primer orden   9.16
134                                          José A. Alonso


          o
  Resoluci´n

 •                              o
     Demostraciones por resoluci´n
      • Def.:                                             o
             Sean S1, . . . , Sn formas clausales de las f´rmulas F1, . . . , Fn y S una forma
                                         o               o
       clausal de ¬F . Una demostraci´n por resoluci´n de F a partir de {F1, . . . , Fn} es
                   o                 o
       una refutaci´n por resoluci´n de S1 ∪ . . . ∪ Sn ∪ S.
      • Def.:    o                                   o
             La f´rmula F es demostrable por resoluci´n a partir de {F1, . . . , Fn} si existe
                      o                  o
       una demostraci´n por resoluci´n de F a partir de {F1, . . . , Fn}.
       Se representa por {F1, . . . , Fn} Res F .
      • Ejemplo:    (tema 8 p. 21) {(∀x)[P (x) → Q(x)], (∃x)P (x)}                 (∃x)Q(x)
                                                                             Res
             1                      o
                 {¬P (x), Q(x)} Hip´tesis
             2   {P (a)}            o
                                Hip´tesis
             3   {¬Q(z)}            o
                                Hip´tesis
             4   {Q(a)}         Resolvente de 1 y 2 con [x/a]
             5                  Resolvente de 3 y 4 con [z/a]




LI 2004–05                          Cc Ia                                     o      o
                                                                      Resoluci´n en l´gica de primer orden   9.17




          o
  Resoluci´n
      • Ejemplo:   (tema 8 p. 21)
       {(∀x)[P (x) → Q(x)], (∀x)[Q(x) → R(x)]           Res   (∀x)[P (x) → R(x)]}
             1   {¬P (x), Q(x)}      o
                                  Hip´tesis
             2   {¬Q(y), R(y)}       o
                                  Hip´tesis
             3   {P (a)}             o
                                  Hip´tesis
             4   {¬R(a)}             o
                                  Hip´tesis
             5   {Q(a)}           Resolvente de 1 y 2 con [x/a]
             6   {R(a)}           Resolvente de 2 y 5 con [y/a]
             5                    Resolvente de 6 y 4 con
      • Ejemplo:   (tema 6 p. 55)           (∃x)[P (x) → (∀y)P (y)]
                                     Res

             1 {P (x)}         o
                            Hip´tesis
                               o
             2 {¬P (f (x))} Hip´tesis
             3              Resolvente de 1 y 2 con θ2 = [x/x ], σ = [x/f (x )]




LI 2004–05                          Cc Ia                                     o      o
                                                                      Resoluci´n en l´gica de primer orden   9.18
                                   Lógica informática (2004–05)                                           135


          o
  Resoluci´n
     • Ejemplo:           (∀x)(∃y)¬(P (y, x) ↔ ¬P (y, y))
                    Res

      – Forma clausal:
               ¬(∀x)(∃y)¬(P (y, x) ↔ ¬P (y, y))
          ≡    ¬(∀x)(∃y)¬((P (y, x) → ¬P (y, y)) ∧ (¬P (y, y) → P (y, x)))
          ≡    ¬(∀x)(∃y)¬((¬P (y, x) ∨ ¬P (y, y)) ∧ (¬¬P (y, y) ∨ P (y, x)))
          ≡    ¬(∀x)(∃y)¬((¬P (y, x) ∨ ¬P (y, y)) ∧ (P (y, y) ∨ P (y, x)))
          ≡    (∃x)(∀y)¬¬((¬P (y, x) ∨ ¬P (y, y)) ∧ (P (y, y) ∨ P (y, x)))
          ≡    (∃x)(∀y)((¬P (y, x) ∨ ¬P (y, y)) ∧ (P (y, y) ∨ P (y, x)))
          ≡sat (∀y)((¬P (y, a) ∨ ¬P (y, y)) ∧ (P (y, y) ∨ P (y, a)))
          ≡    {{¬P (y, a), ¬P (y, y)}, {P (y, y), P (y, a)}}
                o
      – Refutaci´n:
          1 {¬P (y, a), ¬P (y, y)}        o
                                       Hip´tesis
          2 {P (y, y), P (y, a)}          o
                                       Hip´tesis
          3 {¬P (a, a)}                Factor de 1 con [y/a]
          4 {¬P (a, a)}                Factor de 2 con [y/a]
          5                            Resolvente de 3 y 4


LI 2004–05                          Cc Ia                                 o      o
                                                                  Resoluci´n en l´gica de primer orden   9.19




          o
  Resoluci´n
     • Ejemplo                                                      n        o
               (Paradoja del barbero de Russell): En una isla peque˜ a hay s´lo un bar-
      bero. El gobernador de la isla ha publicado la siguiente norma: “El barbero afeita
                                                ı            o
      a todas las personas que no se afeitan a s´ misma y s´lo a dichas personas”. De-
      mostrar que la norma es inconsistente.
                     o
      – Representaci´n:
             (∀x)[afeita(b, x) ↔ ¬afeita(x, x)]
      – Forma clausal:
                 (∀x)[afeita(b, x) ↔ ¬afeita(x, x)]
             ≡   (∀x)[(afeita(b, x) → ¬afeita(x, x)) ∧ (¬afeita(x, x) → afeita(b, x))]
             ≡   (∀x)[(¬afeita(b, x) ∨ ¬afeita(x, x)) ∧ (¬¬afeita(x, x) ∨ afeita(b, x))]
             ≡   (∀x)[(¬afeita(b, x) ∨ ¬afeita(x, x)) ∧ (afeita(x, x) ∨ afeita(b, x))]
             ≡   {{¬afeita(b, x), ¬afeita(x, x)}, {afeita(x, x), afeita(b, x)}}
                o
      – Refutaci´n:
          1 {¬afeita(b, x), ¬afeita(x, x)}        o
                                               Hip´tesis
          2 {afeita(x, x), afeita(b, x)}          o
                                               Hip´tesis
          3 {¬afeita(b, b)}                    Factor de 1 con [x/b]
          4 {afeita(b, b)}                     Factor de 2 con [x/b]
          5                                    Resolvente de 3 y 4
LI 2004–05                          Cc Ia                                 o      o
                                                                  Resoluci´n en l´gica de primer orden   9.20
136                                              José A. Alonso


          o                              o
  Adecuaci´n y completitud de la resoluci´n

 •   Propiedades:
      • Si   C es una resolvente de C1 y C2, entonces {C1, C2} |= C.
      • Si   D es un factor de C entonces C |= D.
      • Si      ∈ S, entonces S es inconsistente.
      • Si                    a                                  o
             el conjunto de cl´usulas S es refutable por resoluci´n, entonces S es inconsistente.
             El c´lculo de resoluci´n (para la l´gica de primer orden sin igualdad) es
      • Teor.:   a                 o            o
       adecuado y completo; es decir,
               Adecuado: S     Res   F      =⇒      S |= F
               Completo: S |= F             =⇒      S   Res   F




LI 2004–05                               Cc Ia                                 o      o
                                                                       Resoluci´n en l´gica de primer orden   9.21




  Interpretaciones de Herbrand

      • Def.:                                                    e        a
             El universo de Herbrand de L es el conjunto de los t´rminos b´sicos de L. Se
       representa por UH(L).
      • Def.:                   o                                    o
                Una interpretaci´n I = (U, I) de L es una intepretaci´n de Herbrand si
         – U es el universo de Herbrand de L;
         – I(c) = c, para cada constante c de L;
                                  ımbolo de funci´n f de L.
         – I(f ) = f , para cada s´              o

      • Def.:                                               a       a
             La base de Herbrand de L es el conjunto de los ´tomos b´sicos de L. Se
       representa por BH(L).
      • Prop.:                  o
               Una interpretaci´n de Herbrand queda determinada por un subconjunto de
                                           a       a                                    o
       la base de Herbrand, el conjunto de ´tomos b´sicos verdaderos en esa interpretaci´n.
      • Ejemplo:Si C = {a, b, c}, F = ∅ y R = {P/1}, entonces las interpretaciones de
       Herbrand de L son
        n       1  2     3          4           5          6              7                 8
        In (P ) ∅ {c}  {b}        {b, c}      {a}        {a, c}         {a, b}          {a, b, c}
        IHn ∅ {P (c)} {P (b)} {P (b), P (c)} {P (a)} {P (a), P (c)} {P (a), P (b)} {P (a), P (b), P (c)}

LI 2004–05                               Cc Ia                                 o      o
                                                                       Resoluci´n en l´gica de primer orden   9.22
                                   Lógica informática (2004–05)                                         137


  Modelos de Herbrand

 •   Modelos de Herbrand:
     • Nota:Las definiciones de universo de Herbrand, base de Herbrand e interpretaci´n o
                                                                o
      de Herbrand definidas para un lenguaje se extienden a f´rmulas y conjuntos de
       o                                                 ımbolos no l´gicos que aparecen.
      f´rmulas considerando el lenguaje formado por los s´           o
           Un modelo de Herbrand de una f´rmula F es una interpretaci´n de Herbrand
     • Def.:                             o                           o
      de F que es modelo de F .
           Un modelo de Herbrand de un conjunto de f´rmulas S es una interpretaci´n
     • Def.:                                        o                            o
      de Herbrand de S que es modelo de S.
     • Ejemplo: Los modelos de Herbrand de {P (a) ∨ P (b), ¬P (b) ∨ P (c), P (a) → P (c)}
      son {P (b), P (c)}, {P (a), P (c)} y {P (a), P (b), P (c)}.
     • Ejemplo:Sea S = {(∀x)(∀y)[Q(b, x) → P (a) ∨ R(y)], P (b) → ¬(∃z)(∃u)Q(z, u)}.
      Entonces, UH(S) = {a, b}
                BH(S) = {P (a), P (b), Q(a, a), Q(a, b), Q(b.a), Q(b, b), R(a), R(b)}
      Un modelo de Herbrand de S es {P (a)}.



LI 2004–05                          Cc Ia                               o      o
                                                                Resoluci´n en l´gica de primer orden   9.23




   a
  C´lculo de modelo de Herbrand

 •    a
     C´lculo de modelo de Herbrand
     • Ejemplo        a
                  1: C´lculo de modelo de Herbrand de {(∀x)[P (x) → Q(x)], P (a), ¬Q(b)}
             1   {¬P (x), Q(x)}      o
                                  Hip´tesis
             2   {P (a)}             o
                                  Hip´tesis
             3   {¬Q(b)}             o
                                  Hip´tesis
             4   {Q(a)}           Resolvente de 1 y 2
             5   {¬P (b)}         Resolvente de 1 y 3
      Modelo de Herbrand: U = {a, b}, I(P ) = {a}, I(Q) = {a}.
     • Ejemplo        a
                  2: C´lculo de modelo de Herbrand de {(∀x)[P (x) → P (s(x))], P (0)}
         1   {¬P (x), P (s(x))}      o
                                  Hip´tesis
         2   {P (0)}                 o
                                  Hip´tesis
         3   {P (s(0))}           Resolvente de 1 y 2
         4   {P (s(s(0)))}        Resolvente de 1 y 3
         .
         .
         .   .
             .
             .                    .
                                  .
                                  .
      Modelo de Herbrand: U = {0, s(0), s(s(0)), . . .}
                          I(P ) = {P (0), P (s(0)), P (s(s(0))), . . . , }
LI 2004–05                          Cc Ia                               o      o
                                                                Resoluci´n en l´gica de primer orden   9.24
138                                           José A. Alonso


             o                                 o
  Determinaci´n de no–consecuencia por resoluci´n

 •                         o                                 o
     Ejemplo de determinaci´n de no consecuencia por resoluci´n
      • Enunciado:                             o
                      Comprobar, por resoluci´n, que
              (∀x)[P (x) ∨ Q(x)] |= (∀x)P (x) ∨ (∀x)Q(x).
               o
      • Reducci´n    1: Comprobar que es consistente
              {(∀x)[P (x) ∨ Q(x)], ¬((∀x)P (x) ∨ (∀x)Q(x))}
               o
      • Reducci´n    2: Comprobar que es consistente
              {{P (x), Q(x)}, {¬P (a)}, {¬Q(b)}}
                o
      • Resoluci´n:

              1   {P (x), Q(x)}      o
                                  Hip´tesis
              2   {¬P (a)}           o
                                  Hip´tesis
              3   {¬Q(b)}            o
                                  Hip´tesis
              4   {Q(a)}          Resolvente de 1 y 2
              5   {P (b)}         Resolvente de 1 y 3
      • Modelo:     U = {a, b}, I(P ) = {b}, I(Q) = {a}.


LI 2004–05                            Cc Ia                            o      o
                                                               Resoluci´n en l´gica de primer orden   9.25




              a
  Tableros sem´nticos

 •    o
     F´rmulas gamma y beta
      • Las    o
              f´rmulas gamma, junto con sus componentes, son
              (∀x)F                      e       a
                     F [x/t] (con t un t´rmino b´sico)
                                         e       a
              ¬(∃x)F ¬F [x/t] (con t un t´rmino b´sico)
      • Las    o
              f´rmulas beta, junto con sus componentes, son
              (∃x)F  F [x/a] (con a una nueva constante)
              ¬(∀x)F ¬F [x/a] (con a una nueva constante)




LI 2004–05                            Cc Ia                            o      o
                                                               Resoluci´n en l´gica de primer orden   9.26
                                 Lógica informática (2004–05)                                                 139


              a
  Tableros sem´nticos
     • Ejemplo   de consecuencia mediante tablero:
             {(∀x)[P (x) → Q(x)], (∃x)P (x)}     T ab   (∃x)Q(x)

                                    1     (∀x)[P (x) → Q(x)]
                                    2     (∃x)P (x)
                                    3     ¬(∃x)Q(x)
                                    4     P (a) (2)
                                    5     P (a) → Q(a) (1)


                                6 ¬P (a) (5)             7 Q(a) (5)
                                  Cerrada                8 ¬Q(a) (3)
                                  (6 y 4)                Cerrada
                                                         (7 y 8)




LI 2004–05                        Cc Ia                                       o      o
                                                                      Resoluci´n en l´gica de primer orden   9.27




              a
  Tableros sem´nticos
     • Ejemplo   de consecuencia mediante tablero:
             {(∀x)[P (x) → Q(x)], (∀x)[Q(x) → R(x)]}         T ab   (∀x)[P (x) → R(x)]
                                    1     (∀x)[P (x) → Q(x)]
                                    2     (∀x)[Q(x) → R(x)]
                                    3     ¬(∀x)[P (x) → R(x)]
                                    4     ¬(P (a) → R(a)) (3)
                                    5     P (a) (4)
                                    6     ¬R(a) (4)
                                    7     P (a) → Q(a) (1)
                                    8     Q(a) → R(a) (2)


                               9 ¬P (a) (7)         10 Q(a) (7)
                                 Cerrada
                                 (5 y 9)    11 ¬Q(a) (8) 12 R(a) (8)
                                               Cerrada      Cerrada
                                              (10 y 11)     (6 y 12)

LI 2004–05                        Cc Ia                                       o      o
                                                                      Resoluci´n en l´gica de primer orden   9.28
140                                         José A. Alonso


              a
  Tableros sem´nticos
      • Ejemplo    de no consecuencia mediante tablero:
               (∀x)[P (x) ∨ Q(x)] |= (∀x)P (x) ∨ (∀x)Q(x).
                                   1   (∀x)[P (x) ∨ Q(x)]
                                   2   ¬((∀x)P (x) ∨ (∀x)Q(x))
                                   3   ¬(∀x)P (x) (2)
                                   4   ¬(∀x)Q(x) (2)
                                   5   ¬P (a) (3)
                                   6   ¬Q(b) (4)
                                   7   P (a) ∨ Q(a) (1)
                                   8   P (b) ∨ Q(b) (1)


                                 9 P (a) (6)          10 Q(a) (7)
                                  Cerrada
                                   (5 y 9)
                                                11 P (b) (8)     12 Q(b) (8)
                                                 Abierta         Cerrada
                                                                 (6 y 12)
       Contramodelo: U = {a, b}, I(P ) = {b}, I(Q) = {a}.
LI 2004–05                          Cc Ia                                  o      o
                                                                   Resoluci´n en l´gica de primer orden   9.29




            ıa
  Bibliograf´

      • Fitting,M. First-Order Logic and Automated Theorem Proving (2nd ed.)
       (Springer, 1996) pp. 137–141.
      • M.L.                                      e               n
                Bonet Apuntes de LPO. (Univ. Polit´cnica de Catalu˜ a, 2003) pp. 34–40.
           Chang y R.C.T. Lee Symbolic logic and mechanical theorem proving (Aca-
      • C.L.

       demic Press, 1973) pp. 70–99.
          Garc´ P.A. Garc´ y J.M. Urbano Fundamentos l´gicos de la programaci´n.
      • J.I.    ıa,        ıa                         o                      o
       (Universidad de Granada, 2002) pp. 45–66
      • M.Genesereth Computational Logic (Chapter 9: Relational Resolution) (Stanford
       University, 2003)
      • S.    o
             H¨lldobler Computational logic. (U. de Dresden, 2004) pp. 71–74.
      • M.            e     o                      o            o
          Ojeda e I. P´rez L´gica para la computaci´n (Vol. 2: L´gica de Primer Orden)
        ´
       (Agora, 1997) pp. 138–164.
      • L.   Paulson Logic and proof (U. Cambridge, 2002) pp. 50–61.
      • U.      o                                        a
             Sch¨ning Logic for computer scientists (Birk¨user, 1989) pp. 79–96.

LI 2004–05                          Cc Ia                                  o      o
                                                                   Resoluci´n en l´gica de primer orden   9.30

								
To top