introducciÓn a la programaciÓn lÓgica

Post on 06-Jul-2015

144 Views

Category:

Education

4 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Introduccion a la Programacion Logica

Dirigido por:

Ricardo Neftalı Ramırez OsorioMatematico - Universidad del Valle

Institucion Universitaria Antonio Jose CamachoDepartamento de Ciencias Basicas

2013

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Alfabeto y Lenguaje de Primer Orden

Definicion

El alfabeto de Primer Orden, consiste de los siguientesconjuntos de sımbolos:

• Variables: (x, y, z, . . .)

• Cuantificadores: (∀,∃)• Conectivos: (∧,∨,→,↔,¬)

Definicion

Un lenguaje de primer orden esta determinado por:

• Constantes: (a, b, c, . . . )

• Sımbolos de relacion:(P,Q,R, . . .)

• Sımbolos de funcion: (f, g, h, . . .)

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Alfabeto y Lenguaje de Primer Orden

Definicion

El alfabeto de Primer Orden, consiste de los siguientesconjuntos de sımbolos:

• Variables: (x, y, z, . . .)

• Cuantificadores: (∀,∃)• Conectivos: (∧,∨,→,↔,¬)

Definicion

Un lenguaje de primer orden esta determinado por:

• Constantes: (a, b, c, . . . )

• Sımbolos de relacion:(P,Q,R, . . .)

• Sımbolos de funcion: (f, g, h, . . .)

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Alfabeto y Lenguaje de Primer Orden

Definicion

El alfabeto de Primer Orden, consiste de los siguientesconjuntos de sımbolos:

• Variables: (x, y, z, . . .)

• Cuantificadores: (∀,∃)• Conectivos: (∧,∨,→,↔,¬)

Definicion

Un lenguaje de primer orden esta determinado por:

• Constantes: (a, b, c, . . . )

• Sımbolos de relacion:(P,Q,R, . . .)

• Sımbolos de funcion: (f, g, h, . . .)

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Alfabeto y Lenguaje de Primer Orden

Definicion

El alfabeto de Primer Orden, consiste de los siguientesconjuntos de sımbolos:

• Variables: (x, y, z, . . .)

• Cuantificadores: (∀,∃)• Conectivos: (∧,∨,→,↔,¬)

Definicion

Un lenguaje de primer orden esta determinado por:

• Constantes: (a, b, c, . . . )

• Sımbolos de relacion:(P,Q,R, . . .)

• Sımbolos de funcion: (f, g, h, . . .)

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Termino y ejemplos de terminos

Definicion

Un termino de un lenguaje de P.O se forma unicamentede la siguiente manera:

• Variable

• Constante

• f(t1, . . . , tn), donde f es un sımbolo de funcion dearidad n y los t1, . . . , tn son terminos.

EJEMPLO

Si f, g, h son sımbolos de funcion 1-aria, 2-aria, 3-aria,respectivamente, v, w son variables y a, b, c constantes;algunos terminos son:

• a

• g(a, v)

• w

• h(f(c), a, w)

• f(b)

• g(a, f(g(b, c)))

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Termino y ejemplos de terminos

Definicion

Un termino de un lenguaje de P.O se forma unicamentede la siguiente manera:

• Variable

• Constante

• f(t1, . . . , tn), donde f es un sımbolo de funcion dearidad n y los t1, . . . , tn son terminos.

EJEMPLO

Si f, g, h son sımbolos de funcion 1-aria, 2-aria, 3-aria,respectivamente, v, w son variables y a, b, c constantes;algunos terminos son:

• a

• g(a, v)

• w

• h(f(c), a, w)

• f(b)

• g(a, f(g(b, c)))

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Termino y ejemplos de terminos

Definicion

Un termino de un lenguaje de P.O se forma unicamentede la siguiente manera:

• Variable

• Constante

• f(t1, . . . , tn), donde f es un sımbolo de funcion dearidad n y los t1, . . . , tn son terminos.

EJEMPLO

Si f, g, h son sımbolos de funcion 1-aria, 2-aria, 3-aria,respectivamente, v, w son variables y a, b, c constantes;algunos terminos son:

• a

• g(a, v)

• w

• h(f(c), a, w)

• f(b)

• g(a, f(g(b, c)))

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Termino y ejemplos de terminos

Definicion

Un termino de un lenguaje de P.O se forma unicamentede la siguiente manera:

• Variable

• Constante

• f(t1, . . . , tn), donde f es un sımbolo de funcion dearidad n y los t1, . . . , tn son terminos.

EJEMPLO

Si f, g, h son sımbolos de funcion 1-aria, 2-aria, 3-aria,respectivamente, v, w son variables y a, b, c constantes;algunos terminos son:

• a

• g(a, v)

• w

• h(f(c), a, w)

• f(b)

• g(a, f(g(b, c)))

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Atomo y Formulas

Definicion

Un atomo de un lenguaje de P.O es cualquier expresion dela forma

R(t1, . . . , tn)

donde R es un sımbolo de relacion y t1, . . . , tn son terminos.

Definicion

Las formulas de un lenguaje de P.O. son ası:

• Todo atomo es una formula,

• Si F es una formula, entonces la negacion ¬F lo es.

• Si F y G son formulas, entonces F ~ G es una formula,donde ~ es un conectivo binario (∧,∨,→,↔,¬).

• Si F es una formula y v es una variable, entonces(∀v)F y (∃v)F tambien lo son.

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Atomo y Formulas

Definicion

Un atomo de un lenguaje de P.O es cualquier expresion dela forma

R(t1, . . . , tn)

donde R es un sımbolo de relacion y t1, . . . , tn son terminos.

Definicion

Las formulas de un lenguaje de P.O. son ası:

• Todo atomo es una formula,

• Si F es una formula, entonces la negacion ¬F lo es.

• Si F y G son formulas, entonces F ~ G es una formula,donde ~ es un conectivo binario (∧,∨,→,↔,¬).

• Si F es una formula y v es una variable, entonces(∀v)F y (∃v)F tambien lo son.

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Ejemplos de formulas

EJEMPLO

Si Q,R son sımbolos de relacion 1-aria, 3-aria (respect.), fun sımbolo de funcion 2-aria, v, w son variables y a, b, cconstantes; entonces algunas formulas son:

• Q(a)

• ¬R(b, w, c)

• ¬R(v, f(a), b)

• (∃v)(Q(f(v)))

• (∀v)(∃w)(¬Q(f(w)) ∧R(w, f(a), v))

• ¬(¬P(w) ∨R(w, c, v))

• (∃w)(Q(f(w), v)→ P(g(w, v)))

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Ejemplos de formulas

EJEMPLO

Si Q,R son sımbolos de relacion 1-aria, 3-aria (respect.), fun sımbolo de funcion 2-aria, v, w son variables y a, b, cconstantes; entonces algunas formulas son:

• Q(a)

• ¬R(b, w, c)

• ¬R(v, f(a), b)

• (∃v)(Q(f(v)))

• (∀v)(∃w)(¬Q(f(w)) ∧R(w, f(a), v))

• ¬(¬P(w) ∨R(w, c, v))

• (∃w)(Q(f(w), v)→ P(g(w, v)))

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Ejemplos de formulas

EJEMPLO

Si Q,R son sımbolos de relacion 1-aria, 3-aria (respect.), fun sımbolo de funcion 2-aria, v, w son variables y a, b, cconstantes; entonces algunas formulas son:

• Q(a)

• ¬R(b, w, c)

• ¬R(v, f(a), b)

• (∃v)(Q(f(v)))

• (∀v)(∃w)(¬Q(f(w)) ∧R(w, f(a), v))

• ¬(¬P(w) ∨R(w, c, v))

• (∃w)(Q(f(w), v)→ P(g(w, v)))

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Ejemplos de formulas

EJEMPLO

Si Q,R son sımbolos de relacion 1-aria, 3-aria (respect.), fun sımbolo de funcion 2-aria, v, w son variables y a, b, cconstantes; entonces algunas formulas son:

• Q(a)

• ¬R(b, w, c)

• ¬R(v, f(a), b)

• (∃v)(Q(f(v)))

• (∀v)(∃w)(¬Q(f(w)) ∧R(w, f(a), v))

• ¬(¬P(w) ∨R(w, c, v))

• (∃w)(Q(f(w), v)→ P(g(w, v)))

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Ejemplos de formulas

EJEMPLO

Si Q,R son sımbolos de relacion 1-aria, 3-aria (respect.), fun sımbolo de funcion 2-aria, v, w son variables y a, b, cconstantes; entonces algunas formulas son:

• Q(a)

• ¬R(b, w, c)

• ¬R(v, f(a), b)

• (∃v)(Q(f(v)))

• (∀v)(∃w)(¬Q(f(w)) ∧R(w, f(a), v))

• ¬(¬P(w) ∨R(w, c, v))

• (∃w)(Q(f(w), v)→ P(g(w, v)))

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Ejemplos de formulas

EJEMPLO

Si Q,R son sımbolos de relacion 1-aria, 3-aria (respect.), fun sımbolo de funcion 2-aria, v, w son variables y a, b, cconstantes; entonces algunas formulas son:

• Q(a)

• ¬R(b, w, c)

• ¬R(v, f(a), b)

• (∃v)(Q(f(v)))

• (∀v)(∃w)(¬Q(f(w)) ∧R(w, f(a), v))

• ¬(¬P(w) ∨R(w, c, v))

• (∃w)(Q(f(w), v)→ P(g(w, v)))

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Forma Normal Conjuntiva y Teorema

Definicion

Una formula esta en forma normal conjuntiva (FNC)(o forma clausal) si es una conjuncion de disyuncion deatomos.

Teorema

Toda formula puede ser transformada en una formulaequivalente en forma normal conjuntiva.

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Forma Normal Conjuntiva y Teorema

Definicion

Una formula esta en forma normal conjuntiva (FNC)(o forma clausal) si es una conjuncion de disyuncion deatomos.

Teorema

Toda formula puede ser transformada en una formulaequivalente en forma normal conjuntiva.

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Demostracion: Algoritmo F.N.C.

Demostracion.

La demostracion es constructiva, ya que nos da el algoritmopara hallar la forma normal conjuntiva de una formuladada. Sean F ,G y H formulas.

Algoritmo FNC

Basta aplicar los siguientes pasos, que consisten en emplearequivalencias logicas, tantas veces como sea posible:

Paso 1 Eliminar las ocurrencias de los conectivoslogicos → y ↔ aplicando:

F ↔ G ≡ (F → G) ∧ (G → F)

F → G ≡ ¬F ∨ G

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Demostracion: Algoritmo F.N.C.

Demostracion.

La demostracion es constructiva, ya que nos da el algoritmopara hallar la forma normal conjuntiva de una formuladada. Sean F ,G y H formulas.

Algoritmo FNC

Basta aplicar los siguientes pasos, que consisten en emplearequivalencias logicas, tantas veces como sea posible:

Paso 1 Eliminar las ocurrencias de los conectivoslogicos → y ↔ aplicando:

F ↔ G ≡ (F → G) ∧ (G → F)

F → G ≡ ¬F ∨ G

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Demostracion: Algoritmo F.N.C.

Demostracion.

La demostracion es constructiva, ya que nos da el algoritmopara hallar la forma normal conjuntiva de una formuladada. Sean F ,G y H formulas.

Algoritmo FNC

Basta aplicar los siguientes pasos, que consisten en emplearequivalencias logicas, tantas veces como sea posible:

Paso 1 Eliminar las ocurrencias de los conectivoslogicos → y ↔ aplicando:

F ↔ G ≡ (F → G) ∧ (G → F)

F → G ≡ ¬F ∨ G

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Demostracion: Algoritmo F.N.C.

Demostracion.

Paso 2 Para “introducir” el conectivo ¬, aplicar lasleyes de Morgan y para eliminar negacionescontinuas la siguiente equivalencia:

¬¬F ≡ F¬(F ∨ G) ≡ ¬F ∧ ¬G¬(F ∧ G) ≡ ¬F ∨ ¬G

Paso 3 Aplicar las leyes distributivas de izquierda aderecha:

F ∨ (G ∧ H) ≡ (F ∨ G) ∧ (F ∨H)

F ∧ (G ∨ H) ≡ (F ∧ G) ∨ (F ∧H)

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Demostracion: Algoritmo F.N.C.

Demostracion.

Paso 2 Para “introducir” el conectivo ¬, aplicar lasleyes de Morgan y para eliminar negacionescontinuas la siguiente equivalencia:

¬¬F ≡ F¬(F ∨ G) ≡ ¬F ∧ ¬G¬(F ∧ G) ≡ ¬F ∨ ¬G

Paso 3 Aplicar las leyes distributivas de izquierda aderecha:

F ∨ (G ∧ H) ≡ (F ∨ G) ∧ (F ∨H)

F ∧ (G ∨ H) ≡ (F ∧ G) ∨ (F ∧H)

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Demostracion: Algoritmo F.N.C.

Demostracion.

Paso 2 Para “introducir” el conectivo ¬, aplicar lasleyes de Morgan y para eliminar negacionescontinuas la siguiente equivalencia:

¬¬F ≡ F¬(F ∨ G) ≡ ¬F ∧ ¬G¬(F ∧ G) ≡ ¬F ∨ ¬G

Paso 3 Aplicar las leyes distributivas de izquierda aderecha:

F ∨ (G ∧ H) ≡ (F ∨ G) ∧ (F ∨H)

F ∧ (G ∨ H) ≡ (F ∧ G) ∨ (F ∧H)

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Demostracion: Algoritmo F.N.C.

Demostracion.

Paso 2 Para “introducir” el conectivo ¬, aplicar lasleyes de Morgan y para eliminar negacionescontinuas la siguiente equivalencia:

¬¬F ≡ F¬(F ∨ G) ≡ ¬F ∧ ¬G¬(F ∧ G) ≡ ¬F ∨ ¬G

Paso 3 Aplicar las leyes distributivas de izquierda aderecha:

F ∨ (G ∧ H) ≡ (F ∨ G) ∧ (F ∨H)

F ∧ (G ∨ H) ≡ (F ∧ G) ∨ (F ∧H)

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Ejemplo: aplicacion Algoritmo F.N.C.

EJEMPLO

Encontraremos la forma normal conjuntiva de la formula

(¬P(v)→ ¬Q(w))→ (P(w)→ Q(v))

aplicando los tres pasos del Algoritmo FNC, donde P y Qson sımbolos de relacion, veamos:

(¬P(v)→ ¬Q(w))→ (P(w)→ Q(v))

↔ (¬¬P(v) ∨ ¬Q(w))→ (¬P(w) ∨Q(v))

↔ ¬(¬¬P(v) ∨ ¬Q(w)) ∨ (¬P(w) ∨Q(v))

↔ (¬¬¬P(v) ∧ ¬¬Q(w)) ∨ (¬P(w) ∨Q(v))

↔ (¬P(v) ∧Q(w)) ∨ (¬P(w) ∨Q(v))

↔ (¬P(v) ∨ ¬P(w) ∨Q(v)) ∧ (Q(w) ∨ ¬P(w) ∨Q(v))

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Ejemplo: aplicacion Algoritmo F.N.C.

EJEMPLO

Encontraremos la forma normal conjuntiva de la formula

(¬P(v)→ ¬Q(w))→ (P(w)→ Q(v))

aplicando los tres pasos del Algoritmo FNC, donde P y Qson sımbolos de relacion, veamos:

(¬P(v)→ ¬Q(w))→ (P(w)→ Q(v))

↔ (¬¬P(v) ∨ ¬Q(w))→ (¬P(w) ∨Q(v))

↔ ¬(¬¬P(v) ∨ ¬Q(w)) ∨ (¬P(w) ∨Q(v))

↔ (¬¬¬P(v) ∧ ¬¬Q(w)) ∨ (¬P(w) ∨Q(v))

↔ (¬P(v) ∧Q(w)) ∨ (¬P(w) ∨Q(v))

↔ (¬P(v) ∨ ¬P(w) ∨Q(v)) ∧ (Q(w) ∨ ¬P(w) ∨Q(v))

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Ejemplo: aplicacion Algoritmo F.N.C.

EJEMPLO

Encontraremos la forma normal conjuntiva de la formula

(¬P(v)→ ¬Q(w))→ (P(w)→ Q(v))

aplicando los tres pasos del Algoritmo FNC, donde P y Qson sımbolos de relacion, veamos:

(¬P(v)→ ¬Q(w))→ (P(w)→ Q(v))

↔ (¬¬P(v) ∨ ¬Q(w))→ (¬P(w) ∨Q(v))

↔ ¬(¬¬P(v) ∨ ¬Q(w)) ∨ (¬P(w) ∨Q(v))

↔ (¬¬¬P(v) ∧ ¬¬Q(w)) ∨ (¬P(w) ∨Q(v))

↔ (¬P(v) ∧Q(w)) ∨ (¬P(w) ∨Q(v))

↔ (¬P(v) ∨ ¬P(w) ∨Q(v)) ∧ (Q(w) ∨ ¬P(w) ∨Q(v))

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Ejemplo: aplicacion Algoritmo F.N.C.

EJEMPLO

Encontraremos la forma normal conjuntiva de la formula

(¬P(v)→ ¬Q(w))→ (P(w)→ Q(v))

aplicando los tres pasos del Algoritmo FNC, donde P y Qson sımbolos de relacion, veamos:

(¬P(v)→ ¬Q(w))→ (P(w)→ Q(v))

↔ (¬¬P(v) ∨ ¬Q(w))→ (¬P(w) ∨Q(v))

↔ ¬(¬¬P(v) ∨ ¬Q(w)) ∨ (¬P(w) ∨Q(v))

↔ (¬¬¬P(v) ∧ ¬¬Q(w)) ∨ (¬P(w) ∨Q(v))

↔ (¬P(v) ∧Q(w)) ∨ (¬P(w) ∨Q(v))

↔ (¬P(v) ∨ ¬P(w) ∨Q(v)) ∧ (Q(w) ∨ ¬P(w) ∨Q(v))

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Ejemplo: aplicacion Algoritmo F.N.C.

EJEMPLO

Encontraremos la forma normal conjuntiva de la formula

(¬P(v)→ ¬Q(w))→ (P(w)→ Q(v))

aplicando los tres pasos del Algoritmo FNC, donde P y Qson sımbolos de relacion, veamos:

(¬P(v)→ ¬Q(w))→ (P(w)→ Q(v))

↔ (¬¬P(v) ∨ ¬Q(w))→ (¬P(w) ∨Q(v))

↔ ¬(¬¬P(v) ∨ ¬Q(w)) ∨ (¬P(w) ∨Q(v))

↔ (¬¬¬P(v) ∧ ¬¬Q(w)) ∨ (¬P(w) ∨Q(v))

↔ (¬P(v) ∧Q(w)) ∨ (¬P(w) ∨Q(v))

↔ (¬P(v) ∨ ¬P(w) ∨Q(v)) ∧ (Q(w) ∨ ¬P(w) ∨Q(v))

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Ejemplo: aplicacion Algoritmo F.N.C.

EJEMPLO

Encontraremos la forma normal conjuntiva de la formula

(¬P(v)→ ¬Q(w))→ (P(w)→ Q(v))

aplicando los tres pasos del Algoritmo FNC, donde P y Qson sımbolos de relacion, veamos:

(¬P(v)→ ¬Q(w))→ (P(w)→ Q(v))

↔ (¬¬P(v) ∨ ¬Q(w))→ (¬P(w) ∨Q(v))

↔ ¬(¬¬P(v) ∨ ¬Q(w)) ∨ (¬P(w) ∨Q(v))

↔ (¬¬¬P(v) ∧ ¬¬Q(w)) ∨ (¬P(w) ∨Q(v))

↔ (¬P(v) ∧Q(w)) ∨ (¬P(w) ∨Q(v))

↔ (¬P(v) ∨ ¬P(w) ∨Q(v)) ∧ (Q(w) ∨ ¬P(w) ∨Q(v))

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Ejemplo: aplicacion Algoritmo F.N.C.

EJEMPLO

Encontraremos la forma normal conjuntiva de la formula

(¬P(v)→ ¬Q(w))→ (P(w)→ Q(v))

aplicando los tres pasos del Algoritmo FNC, donde P y Qson sımbolos de relacion, veamos:

(¬P(v)→ ¬Q(w))→ (P(w)→ Q(v))

↔ (¬¬P(v) ∨ ¬Q(w))→ (¬P(w) ∨Q(v))

↔ ¬(¬¬P(v) ∨ ¬Q(w)) ∨ (¬P(w) ∨Q(v))

↔ (¬¬¬P(v) ∧ ¬¬Q(w)) ∨ (¬P(w) ∨Q(v))

↔ (¬P(v) ∧Q(w)) ∨ (¬P(w) ∨Q(v))

↔ (¬P(v) ∨ ¬P(w) ∨Q(v)) ∧ (Q(w) ∨ ¬P(w) ∨Q(v))

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Clausula

Definicion

Un clausula es una disyuncion finita en la cual cadamiembro es un atomo.

EJEMPLO

Las dos disyunciones calculadas en el ejemplo anterior sonclausulas, a saber:

• (¬P(v) ∨ ¬P(w) ∨Q(v))

• (Q(w) ∨ ¬P(w) ∨Q(v))

Observacion

Con base en la definicion anterior, una forma normalconjuntiva sera entonces una conjuncion de clausulas.

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Clausula

Definicion

Un clausula es una disyuncion finita en la cual cadamiembro es un atomo.

EJEMPLO

Las dos disyunciones calculadas en el ejemplo anterior sonclausulas, a saber:

• (¬P(v) ∨ ¬P(w) ∨Q(v))

• (Q(w) ∨ ¬P(w) ∨Q(v))

Observacion

Con base en la definicion anterior, una forma normalconjuntiva sera entonces una conjuncion de clausulas.

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Clausula

Definicion

Un clausula es una disyuncion finita en la cual cadamiembro es un atomo.

EJEMPLO

Las dos disyunciones calculadas en el ejemplo anterior sonclausulas, a saber:

• (¬P(v) ∨ ¬P(w) ∨Q(v))

• (Q(w) ∨ ¬P(w) ∨Q(v))

Observacion

Con base en la definicion anterior, una forma normalconjuntiva sera entonces una conjuncion de clausulas.

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Clausula

Definicion

Un clausula es una disyuncion finita en la cual cadamiembro es un atomo.

EJEMPLO

Las dos disyunciones calculadas en el ejemplo anterior sonclausulas, a saber:

• (¬P(v) ∨ ¬P(w) ∨Q(v))

• (Q(w) ∨ ¬P(w) ∨Q(v))

Observacion

Con base en la definicion anterior, una forma normalconjuntiva sera entonces una conjuncion de clausulas.

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Clausula

Definicion

Un clausula es una disyuncion finita en la cual cadamiembro es un atomo.

EJEMPLO

Las dos disyunciones calculadas en el ejemplo anterior sonclausulas, a saber:

• (¬P(v) ∨ ¬P(w) ∨Q(v))

• (Q(w) ∨ ¬P(w) ∨Q(v))

Observacion

Con base en la definicion anterior, una forma normalconjuntiva sera entonces una conjuncion de clausulas.

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Sustitucion y sustitucion identidad

Definicion

Una sustitucion es una funcion σ : V → T y serepresenta por el conjunto finito de parejas

{v1|t1 , . . . ,vn |tn}

donde cada vi(∈ V) es una variable diferente y cadati(∈ T) 6= vi , i = 1, . . . , n.

La sustitucion que deja las variables identicas, es decir, queno modifica ninguna variable de cualquier expresion, lallamaremos sustitucion identidad y se denota porε = { }.

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Resolucion Lineal

Un conjunto de criterios selectivos articulados de formasistematica constituye una estrategia de resolucion.

Estudiaremos una estrategia de “refinamiento” llamadaresolucion lineal.

Esta estrategia fue propuesta por Loveland (1970) yLuckham (1970) de manera independiente.

Es exitosamente implementable y consiste en tomar unaclausula central (o de cabecera) y resolverla con otraclausula, luego la clausula resuelta se resuelve con otraclausula y se aplica reiteradamente este proceso.

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Resolucion Lineal

Un conjunto de criterios selectivos articulados de formasistematica constituye una estrategia de resolucion.

Estudiaremos una estrategia de “refinamiento” llamadaresolucion lineal.

Esta estrategia fue propuesta por Loveland (1970) yLuckham (1970) de manera independiente.

Es exitosamente implementable y consiste en tomar unaclausula central (o de cabecera) y resolverla con otraclausula, luego la clausula resuelta se resuelve con otraclausula y se aplica reiteradamente este proceso.

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Resolucion Lineal

Un conjunto de criterios selectivos articulados de formasistematica constituye una estrategia de resolucion.

Estudiaremos una estrategia de “refinamiento” llamadaresolucion lineal.

Esta estrategia fue propuesta por Loveland (1970) yLuckham (1970) de manera independiente.

Es exitosamente implementable y consiste en tomar unaclausula central (o de cabecera) y resolverla con otraclausula, luego la clausula resuelta se resuelve con otraclausula y se aplica reiteradamente este proceso.

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Ejemplo: Resolucion Lineal

EJEMPLO

Sean a, b, c constantes, u, x, y, z variables, P,Q,R sımbolosde relacion 1-ario, 3-ario, 2-ario, respectivamente, y f unsımbolo de funcion 1-ario.

Sea S el conjunto de clausulas,

S =

• ¬R(a, b)

• Q(x, x, f(x))

• ¬Q(x, y, z) ∨Q(x, y, z)

• ¬Q(x, y, z) ∨R(x, z)

• P(a)

• Q(a, f(c), f(b))

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Ejemplo: Resolucion Lineal

EJEMPLO

Una Refutacion Lineal de S con clausula de cabecera

O0 : ¬P(x) ∨ ¬Q(y, z, u) ∨ ¬R(x, u) ∨R(x, y) ∨R(x, z)

esta representada en la siguiente grafica.

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

Ejemplo: Resolucion Lineal

Introducciona la

ProgramacionLogica

Ricardo NeftalıRamırez Osorio

Logica dePrimer Orden

Sintaxis

Formas normales

Sustitucion

Resolucion

GRACIAS.

top related