programación lógica inductiva148.206.53.84/tesiuami/uam5311.pdf · proposición atómica consiste...

29
Programación Lógica Inductiva Marisela Vieyra Cordova Universidad Autónoma Metropolitana m. c k?,, . 2 , Septiembre 1996 Unidad Iztapalapa Licenciatura en Computación Reporte de Proyecto Terminal I y 11 Asesor: René Mac Kinney Romero

Upload: dodien

Post on 29-Oct-2018

218 views

Category:

Documents


0 download

TRANSCRIPT

Programación Lógica Inductiva

Marisela Vieyra Cordova

Universidad Autónoma Metropolitana m. c k?,, . 2 ,

Septiembre 1996

Unidad Iztapalapa Licenciatura en Computación

Reporte de Proyecto Terminal I y 11 Asesor: René Mac Kinney Romero

Capítulo 1

Prolog

1.1 Introducción

El lenguaje de programación Prolog fue inventado por Alain Colmerauer y sus socios alrededor de 1970. Este fue el priemr esfuerzo en el diseo de un lenguaje de programación práctico que pudiera facilitar a un programador especificar sus tareas en lógica! en lugar de en términos de la programación convencional construir acerca de lo que puede hacer la máquina y cuando. Esta motivación explica el nombre del lenguaje de programación. Prolog debido a Programación Lógica.

1.2 Fundamentos Teóricos

1.2.1 Introducción al cálculo de predicados

La lógica fue originalmente vista como un camino para representar la forma de argumentos ~ de tal manera que fuera posible observar de manera formal cuando era o no válido. Es posible usar la lógica para expresar proposi- ciones: las relaciones entre proposiciones y como alguna proposición puede inferir sobre otras. Existe una forma particular de lógica llamada Cálculo de Predicados .

Si deseamos expresar proposiciones acerca del mundo. es posible describir los objetos envueltos en él. En cálculo de predicados. se representan objetos por medio de términos. Un término tiene una de las siguientes formas

1

o Un símbolo constante. Este es un símbolo que representa a un individuo o conceptos.

o Un símbolo variable. Que puede representar distintos individuos en tiempos distintos.

o Un término compuesto. Consiste de un símbolo para una función se- guido de un grupo ordenado de terminos como sus argumentos.

Para expresar proposiciones acerca de objetos es necesario expresar re- laciones entre objetos. Esto se hace con los símbolos de predicados Una proposición atómica consiste de un símbolo de predicado! seguido de una secuencia ordenada de términos! los cuales son sus argumentos.

Es posible hacer proposiciones compuestas a partir de proposiciones a- tómicas. Para ello se emplean los conectivos lógicos. La siguiente tabla muestra cuales son y sus significados.

Conectivo Sintaxis A Sintaxis B Significado Negación l a - a “cy negada”

Conjunción QAP a&P “a y p” Disyunción Q V P Q # P (la o p” Implicación a 3 Q + P “a implica P” Equivalencia a = P Q e ,O “a es equivalente a P”

Es difícil algunas veces entender las nociones de implicación y equivalen- cia. Decimos que a implica p si. cada que a es verdadero @ es verdadero. Decimos que a es equivalente a P si a es verdadero exactamente en las mis- mas circunstancias en que P es verdadero. De hecho. estas nociones pueden estar definidas en términos de “A”. “V” y “1”.

Q-,P Tiene el mismo significado que (,” a)#@ a*P Tiene el mismo significado que (a&P>#(- N P> a t) /3 además tiene el mismo significado que ( a -+ ,O)&(@ + a )

2

Es posible saber el significado claro de las variables dentro de una pro- posición. De hecho, el significado es solamente definido cuando las variables son introducidas por cuantificadores. Los cuantificadores proveen un signi- ficado cuando se habla de conjuntos de individuos y qué es verdad en ellos. E l cálculo de predicados provee de dos cuantificadores. Si u representa una variable y P una proposición. podemos decir lo siguiente :

Sintaxis A Sintaxis B Significado vu. P Toda (u: P ) “ P es verdadero para cualquier u” 3u.P Existe (u. P ) “Existe una u para la cual P es verdadero”

E l primero es llamado cuantificador universal , el segundo cuantificador existencial.

1.2.2 Forma Clausal

Como resultado de la redundancia. existen diversas formas de escribir la misma proposición. Si se desea hacer manipulaciones formales sobre fórmulas en cálculo de predicados! esto resulta muy inconveniente. Es mejor si todo lo que se desea decir se expresa en una sola forma. Las proposiciones en cálculo de predicados pueden ser transformadas en una forma especial . la forma clausal, donde existen pocas formas de decir la misma cosa.

La conversión de fórmulas en cálculo de predicados a forma normal se hace en seis pasos.

Paso l. Remover implicaciones. Se comienza reemplazando “+” y “e’’ de acuerdo con las definiciones

dadas. Como resultado de esta definición: esperaríamos que :

Toda( X : hombre( X ) -+ humano( X ) )

sea transformado a :

Toda( X! (hombre( X)#humano( X))

3

Paso 2. Mover la negación hacia el interior. Este paso esta involucrado en casos donde “N)) es aplicado a una fórmula

que no es atómica. En el caso que ocurra lo anterior. se obtiene una apropiada reescripción empleando las siguientes identidades:

- (cy&@) tiene el mismo significado que (- a)#( N p ) - Existe(v, P) tiene el mismo significado que Toda(v, - P ) - Toda(v. P) tiene el mismo significado que Existe(v, - P)

Paso 3. Skolemizar. El siguiente paso es remover los cuantificadores exitenciales. Esto es hecho

introduciendo nuevos símbolos constantes. constantes de Skolem. en lugar de las variables introducidas por el cuantificador existencial. Hay una interpre- tación para los símbolos de una fórmula que hace a la fórmula verdadera si y solo sí hay una interpretación para la Skolemizada versión de la fórmula. Por ejemplo ,

Existe(X: mujer(X)&hija(X, Laura))

es cambiado por la Skolemización a

mujer(gw)&hija(gw. Laura)

La constante 9197 representa a una mujer cuya mamá es Laura.

Paso 4. Mover los cuantificadores universales hacia el exterior. Se mueve el cuantificador universal hacia fuera de la fórmula. esto no

afecta el significado. Por ejemplo :

Toda(X. hombre(X) + Toda(Y. rnujer(Y) -+ le-gusta(X. Y ) ) )

es transformado en

Toda(X. Toda(Y: hombre(X) -+ (mujer(Y) + le-gusta(X, Y ) ) ) )

4

Paso 5. Distribuir "&" sobre "#". E l paso a seguir es poner esto en una especial forma normal: forma normal

conjuntiva . donde las conjunciones aparecen dentro de las disyunciones. Dadas A. B: C compuestas por literales. Es posible hacer uso de las siguientes identidades :

(A&B)#C es equivalente a (A#C)&(B#C) (A#B)&C es equivalente a (A&C)#(B&C)

Como ejemplo de lo que sucede. La fórmula :

día-fiesta(X)#(trabajo(Luis, X)&(enfado(Luis)#triste(Luis)))

es equivalente a:

(día-fiesta(X)#trabajo(Luis, X))&(día-fiesta(X)#(enfado(Luis)#triste(Luis)))

Paso 6. Colocar dentro de claúsulas. La fórmula que se tiene ahora es en general una colección de &S relacio-

nando cosas. Podríamos tener algo como:

(A&B)&(C&(D&E))

Que informalmente puede escribirse en la siguiente forma :

A&B&C&D&E

El orden en el cual se escribe esta fórmula no tiene importancia. Es posible se más conciso acerca de la importancia de la fórmula cuando decimos que esta consiste del conjunto A: B: C? D: E. Llamando esto un conjunto, podemos decir que el orden no importa. La fórmula que se obtiene en este conjunto. cuando se convierte a Forma clausal, es llamada claúsula. Así que cualquier fórmula en cálculo de predicados es equivalente a un conjunto de claúsulas.

5

1.2.3 U n a notación para claúsulas

Una claúsula con n literales negadas Q1: Q2! ...: Q?,, y m literales no nega- das PI! P2: ...! P, podrá ser escrita de la siguiente forma: Pl; P2; ...; P, :

- & I : Q 2 - ... : &,T.

Si se escribe una claúsula incluyendo las disyunciones. con las literales negadas separadas de las no negadas: esto aparecera como

que es equivalente a

que es equivalente a

Siguiendo la convención de Prolog la claúsula será

1.2.4 Resolución y demostración de teoremas

Llamamos a las proposiciones que tomamos como verdaderas axiomas o hipótesis y a las que se obtienen a partir de estas teoremas. Demostrar un teorema es la actividad de derivar consecuencias a partir de proposiciones dadas.

En la década de 1960 mucha gente comenzó a estudiar la posibilidad de que las computadoras digitales pudieran ser programadas para demostrar teoremas automáticamente. Uno de los principales adelantos hechos en esa época fue el descubrimiento del principio de resolución por J . Alan Robinson. Resolución es una regla de inferencia. Esta nos dice como una proposición puede generarse a partir de otras. Empleando el principio de resolución. podemos demostrar teoremas en una forma puramente mecánica a partir de nuestros axiomas. Sólo es necesario decidir a cuáles proposiciones se le aplica esta! y las conclusiones válidas serán producidas automáticamente.

La resolución trabaja sobre fórmulas en forma clausal. Dadas dos claúsu- las relacionadas de forma adecuada. se generará una nueva claúsula a partir

6

de estas. La idea básica es que si la misma fórmula atómica aparece en am- bas sobre el lado izquierdo en una y el lado derecho en la otra, entonces la claúsula obtenida olvidando la fórmula duplicada continua a partir de ellas. Por ejemplo:

A partir de:

triste(Luis); molesto(Luis) : -día-trabajo(hoy). lloviendo(hoy)

Y

se obtiene:

indispuesto( Luis) : -molesto( Luis)! cansado( Luis)

triste( Luis); indispuesto( Luis) : - día-trabajo(hoy), lloviendo(hoy).

cansado( Luis)

En general la resolución permite relacionar más de una literal en el lado derecho con más de una sobre el lado izquierdo. Ahora se presenta un ejemplo utilizando variables.

1. persona(fl(X)) ; rey(X) :-

2. rey(Y) :- respeta(fl(Y), Y)

3. respeta( 2, Arthur) :- persona( 2) relacionando (2) y ( 3 )

{ Y / Arthur}

4. rey(Arthur) :- persona(fl(Arthur)) relacionando (4) y (1)

5. rey(Arthur) ; rey(Arthur) :-

7

En la definición formal de resolución, el proceso de relacionar al cual se

Una importante propiedad formal que tiene la resolución es la completa refutación. Esto significa que. si un conjunto de claúsulas son inconsistentes entonces a la resolución le será posible derivar a partir de ellas la claúsula

ha rferido informalmente es llamado unificación.

vacía : -

Un conjunto de fórmulas es inconsistente si no hay una posible inter- pretación para los predicados. símbolos constantes y símbolos de funciones que haga que ellas expresen proposiciones verdaderas. La claúsula vacía es la lógica expresión de falsedad. esta representa una proposición que no es posible sea verdadera. As í que la resolución puede garantizar cuando una fórmula es inconsistente derivando esta expresión de una contradicción.

Es un hecho que : En la fórmula {Al , A2. ...: A?],} son consistentes! entonces la fórmula B

es una consecuencia de la fórmula {Al . A2: .... A?],} exactamente cuando la fórmula { A l : A2: .... A , , , ' B } es inconsistente.

Así que. si nuestras hipótesis son consistentes. se adiciona a ellas la claúsula negada de lo que se desea probar. La resolución derivará la claúsula vacía exactamente cuando la proposición siga a partir de la hipótesis. La claúsula que se adiciona a la hipótesis es llamada meta declarada. Todas ellas son claúsulas.

La completnes de resolución es una propiedad matemática que significa que si algún hechoes determinado a partir de nuestras hipótesis. es posible demostrar que es verdadera empleando resolución.

1.2.5 Claúsulas de Horn

Una claúsula de horn es una claúsula con más de una literal no negada. Si se emplea un teorema clausal para determinar los valores de funciones computables! es estrictamente necesario emplear claúsulas de Horn. Porque la resolución con claúsulas de Horn es relativamente simple.

De hecho: cuando consideramos conjuntos de claúsulas de Horn (inclu- yendo metas declaradas), necesitamos considerar estos conjuntos donde sólo una de las claúsulas es la cabeza. Esto es. cualquier problema soluble que puede ser expresado en claúsulas de Horn puede ser expresado como:

8

o Sólo una claúsula es la cabeza

o El resto de las claúsulas estan encabezadas

1.3 El lenguaje de programación

Prolog es un lenguaje de programación hecho para representar y utilizar el conocimiento que se tiene sobre un determinado dominio. Más exactamente. el dominio es un conjunto de objetos y el conocimiento se representa por un conjunto de relaciones que describen las propiedades de los’objetos y sus interrelaciones.

Un programa que describe estas propiedades y estas relaciones es un pro- grama Prolog.

Por ejemplo. decir “Juan es el padre de Pablo” no es más que afirmar que una relación (ser padre) liga dos objetos (designados por su nombre: Juan y Pablo), y que puede escribirse como:

es-padre-de(Pab1o. Juan)

Igualmente la respuesta a una pregunta del tipo ‘“?Quien es el padre de Pablo?” se deduce al comprobar si la relación es-padre-de liga a Pablo con otro objeto que será la respuesta a la pregunta.

1.3.1 Aspectos carecterísticos de Prolog

o Definición de relación entre objetos.

o Preguntas relativas a estas relaciones.

o Noción de variable.

o Representación de conjunciones y disyunciones de relaciones.

o Ejecución no determinística.

o No distinción entre argumentos, datos y resultados.

9

Capítulo 2

Programación Lógica Inductiva (Inductive Logic Programing (ILP))

2.1 Introducción

La Programación Lógica Inductiva esta formada por la intersección de la pro- gramación Lógica y el Aprendizaje Maquinal. Esta nueva área esta dividida en tres relativamente aisladas areas de invesidación: teoría. implementación y experimentación.

Es necesario que la Programación Lógica Inductiva este basada en princi- pios sólidos tanto de lógica como de estadística. Por parte de la justificación estadística de hipótesis se discute la posible relación entre la Teoría de la Complejidad Algoritmica (Algorithmic Complexity Theory) y el Aprendi- zaje de la Probabilidad Aproximadamente Correcta (Probably Approxima- tely Correct (PAC) Learning). En términos de lógica se provee una estructura unificada por la Resolución Inversa (Inverse Resolution (IR)) de Muggleton y Buntine y la Ultima Relativa Generalización General (Relative Least Ge- neral Generalization (RLGG)) de Plotkin. Esto condujo a la probabilidad de extender la estructura de la RLGG para permitir la invención de nuevos predicados. previamente discutidos solamente dentro del contexto de la IR.

10

2.2 Pasado y presente en la investigación

En su tesis Plotkin cimentó las bases para mucha de la presente actividad. Plotkin no restringió la claúsula lógica de Horn. Esto resulta sorprendente dado que la programación lógica aún no existía. Sus mayores contribuciones fueron: 1) la introducción de la subsunción relativa (relative subsumption); una relación de generalidad entre claúsulas, y 2) el mecanismo inductivo de la RLGG. El principal resultado teórico de Plotkin fue negativo. Esto fue porque había en general no finita RLGG de dos claúsulas. Su implementación de RLGG estaba severamente restringida. El resultado negativo de Plotkin impulsó a Shapiro a investigar una aproximación a la claúsula de inducción de Horn donde el descubrimiento de hipótesis va de lo general a lo específico. Shapiro investigó además una técnica llamada depuramiento algoritmico (al- gorithmic debugging). Dado un programa de Prolog incompleto, incorrecto o no finalizado, el sistema de diagnósis de Shapiro reemplza la claúsula que es defectuosa.

Plotkin Y Shapiro trataron de provar que sus sistemas de aprendizaje podían identificar teorias de primer orden en el limite. de acuerdo a la defi- nición de Gold. Hoy día la definición de Valiant de Aprendizaje-PAC provee una mejor aproximación a la identificación que la metodología de Gold. Sin embargo! los métodos PAC han sido largamente aplicados al aprendizaje en el plano proposicional y aún no se ha demostrado que sean capaces de re- lacionarse con el aprendizaje inductivo en lógica de primer orden. Esto no es nada meritorio ya que a pesar de las garantias de identificación en el li- mite para los sistemas de Plotkin y Shappiro. ambos eran muy ineficientes y estaban en práctica solamente demostrados sobre problemas muy limitados.

Sammut y Banerji describen un sistema llamado MARVIN donde genera- lizan un ejemplo sencillo a tiempo con referencia a un conjunto de claúsulas finales. Para cada estado un conjunto de átomos fundados F representando el ejemplo hacen pareja nuevamente con el cuerpo de la claúsula final H t B. Al unir hechos BO es reemplazada por H8 dentro de F, donde 8 es una sustitución base. Esta fue la única operación de generalización usada. El método fue demostrado sobre un ancho conjunto de problemas. Muggleton y Buntine mas tarde demostraron que la operación de generalización de Sam- mut y Banerji fue un caso especial al invertir un paso en la demostración de resolución. Un conjunto de esfuerzos más generales fueron derivados. y dos operaciones relacionadas fueron llamadas los operadores 'V'. Otro par de

11

operadores (‘W‘), basados en la resolución inversa: se demostro eran capaces de “inventar” predicados donde no eran disponibles dentro del conocimiento final. Banerji, Wirth, Ishizaka, Ling y Dawes y Roveriol y Puget han además descrito métodos relacionados para la “invención” de nuevos predicados. Sin embargo, si bien la invención de predicados ha sido demostrada sobre una larga escala de problemas dentro de un conjunto proposicional este no es aún el caso para algún sistema de aprendizaje de primer orden.

Recientemente Quinlan ha descrito un programa altamente eficiente. lla- mado FOIL, que induce claúsulas de Horn de primer orden. El método descansa sobre un general a específico registro heuristic0 que es guiado por un criterio de información relacionado a la entropía. Quinlan ve su apro- xamación como un comienzo natural a la extensión del ID3. El nota que el registro puede sr altamente myopic. y es incapaz de aprender predicados como una lista invertida y multiplicación entera.

Esfuerzos han sido hechos por Buntine. Frisch y Page y Muggleton y Feng para encontrar caminos alrededor de los resultados RLGG negativos de Plotkin. Usando como estructura una claúsula de Horn. Buntine trato res- tringiendo el modelo del conocimiento final a iniciar una búsqueda finita en el modelo de Herbrand. Las aproximaciones han limitado exitos dada la com- plejidad de las claúsulas construidas. Frish y Page han tratado restringiendo el lenguaje de hipotesis a comenzar una lógica estrictamente especificada con mas exitos. Muggleton y Feng aplican una “determinada” restricción a la hipotesis. Esto quiere decir que hay una única elección de sustitución fun- dada para cada resolución envuelta en la refutación de alguna meta fundada usando la claúsula hipothesized. El programa de aprendizaje de Muggleton y Feng, GOLEM, ha demostrado tener un grado de eficiencia similar a FOIL de Quilan, pero sin el acompañamiento de alcance perdido.

2.3 Fundamentos Teóricos

2.3.1 U n Conjunto General para Inducción

LO : el lenguaje de observacione Un conjunto general inductivo se compone por tres lenguajes: LB : el lenguaje de la bese de co

LH : el lenguaje de hipotesis

12

El problema general inductiva es: dado un conjunto consistente de ejem- plos u observaciones O LO y una base de conocimiento consistente B L B se encuentra una hipotesis H E LH tal que:

Como el problema esta muy forzado. Usualmente, se requiere que LO con- tenga sólo literales base. Esto permite hacer una no forzada eleccion de H. Con frecuencia H esta restringida a ser una claúsula sencilla.

2.3.2 Ley de Bayes

De acuerdo a la ley de Bayes:

P T ( H ) x PT(0IH)

PT-(O) P T ( H ( 0 ) =

Si intentamos descripciones codificadas en bits es posible reescribir la ley de Bayes en términos de información como sigue:

f ( H I 0 ) = f ( H ) + I (OIH) - f ( O )

Donde I ( X ) representa la mínima longitud de codificación de X . Para aproximar la probabiilidad PT-( HIO) a 1. I ( HIO) debe aproximarse a O. donde I ( H ) + f(O1H) será aproximadamente igual a I (O) . f (OlH) es la mínima codificación de la derivación o demostraciónde O desde H y I (HIO) es el conunto de hipotesis dadas las observaciones.

2.4 Formacion de Hipotesis

La óptima solución de Bayes fue derivada por el problema de elegir la mejor hipotesis H dada una base de conocimiento B y un conunto de observaciones O . Esto es proporcionado eligiendo una W adecuada y minimizando I ( B A HI B A O) donde

I ( B A HIB A O) = I ( B A H) + I(OlB A N ) - I ( B )

El conjunto de hipotesis adecuadas. “espacio de hipotesis” estara represen- tado por H(B. O).

13

Donde sólo las H para las cuales I ( B A HIO)I(B A O) son de interes. Teorema. El subconjunto H‘(B. O) de H(B. O) para el cual I ( B A H I 0 ) 5

I ( B A O) es finito. Cada elemento de H’(B: O) que minimice I (B A HIB A O) es la hipotesis

optima de Bayes. La fórmula de Bayes es derivada por una transformación algebraica de la

definició de la probabilidad de la evidencia dada una hipotesis. Esto permite derivar la probabilidad condicional de una hipotesis dada la probabilidad previa de la hipotesis y la probabilidad condicional de la evidencia.

Es preciso considerar que existe un camino análogo en el que la hipotesis puede derivarse por manipulación algebraica de la relación lógica entre el conocimiento previo? la hipotesis y la evidencia. Considerando la posterior condición de suficiencia

B A H + O +

El siguiente teorema demuestra como esta relación puede transformarse de tal manera que permita que el espacio de hipotesis sea logicamente deivado a partir de una base de conocimiento y ejemplos.

Teorema. Para cada hipotesis H tal que B A H + O+. -H puede ser derivada a partir de B A YO+ empleando un firme y completo método de derivación.

Ejemplo. “Generando a Piolin”

B = { t iene-a¿as(X) t es -ave(X) .

t i ene-p ico(X) t es -ave(X) :

e s -ave(X) t es-agui¿a(X): es-carnivora(X) t es-agui¿a(X)

} YO+ =t t iene-a¿as(Piol in) A

tiene-pico( Piolin) t tiene-alas( Piolin) A t i e n e - p i c o ( P i d i n )

t iene-a¿as(X) t es -ave(X)

{ X I P i o l i n }

t es-ave( Piolin)

14

es-ave(X) t es-aguila(X)

{ X I P i o l i n )

t es-aguila( Piolin) tiene-pico(X) t es-ave(X)

{X/ Piol in)

t es-ave(X)

es-ave(X) t es-aguila(X)

{ X I P i o l i n )

t es-aguila(X)

Si H es asumida como una claúsula simple entonces -H es una conjunción de las literales base. El conjunto de literales base utilizando resolución lineal a partir de B A -E+ es:

-IH = 1 es-ave( Piolin) A - es-aguda( Piolin)

de tal manera que

IH = es-ave( Piolin) V es-aguila(Piolin) t

El problema de generar una hipotesis de claúsula sencilla ha sido estu- diado extensivamente desde la literatura de Plotkin. Una noción central es la de la hipotesis relativa más específica de B A O+. Esta sera denotada p o r l H ( B! O+) y definida de la siguiente manera.

I H ( B ! O+) es la negación de la conjunción de literales derivables a partir de B A -O+.

Teorema. Sea B la base de conocimiento. O+ ejemplos. B- O+. - l H ( B ! O+) es la conjunción de literales derivados a partir de B A -O+ y H es una claúsula arbitraria.

En el ejemplo se encontro:

IH( B! O+) = es-ave( Piolin) v es-aguila(Pio1in) t

15

El siguiente es el conjunto de todas las claúsulas que lógicamente implican IH( B. O+).

HI = es -ave(Pio l in) Hz = es-aguda( Piolin) H3 = e s -ave (X) H4 = es-aguila(X)

Para cada i: 1 5 i 5 4:

Hi t I H ( B . 0')

Definición. H:(B. O+) es el conjunto de todas las claúsulas H tal que

Donde HF( B. O+) contiene todas las hipotesis de claúsula sencilla las cuales pasan la prueba de posterior suficiencia. No todas estas claúsulas pa- saran la prueba satisfactoriamente. Por lo tanto H( B, O) C HF(B. O+). Se asumira por el momento que - I H ( B . O+) es finito. El conjunto H:(B. O+) se ordenara de acuerdo a la siguiente definición. donde las claúsulas son tra- tadas como conjuntos.

Dadas una claúsula C y una D (conjuntos de literales). C subsume D: C 5 D si y solo si existe una substitución 8 tal que C8 D.

Teorema. 5 es un orden parcial sobre claúsulas. Definición. Dadas dos claúsulas C y D. C D si y solo si C 5 D y

Teorema. Dadas dos claúsulas C y D. C 5 D solo si C t D. Teorema. Dadas dos claúsulas C y D. C t D no implica que C 5 D. La subsumción impone una lattice sobre literales y claúsulas. Definición. Una lattice es un conjunto parcialmente ordenado en donde

cada par de elementos a: b tiene una máxima cota inferior (greatest lower bound! 'glb', representada por anb) y una mínima cota superior (least upper bound: 'lub'. representada por a U b) dentro del conjunto.

Definición. Lattice sobre literales. Dadas las literales 1 y m. 1 5 m si y solo si existe una substitución 8 tal que m = 18.

Lema. es un orden parcial sobre literales.

H t I H ( B , O + ) .

D 5 C.

16

Definición. 1 E m si y solo si 1 m y m 5 1. Definición. El conjunto de literales equivalente a 1 es denotado por [ l ] y

definido por [ I ] = q l ’ = 1

Definición. Las literales 1 y m son compatibles si tienen el mismo símbolo de predicado y signo.

Definición. El lgg (Least general generalisation) es el lub de literales dado el orden impuesto por 5 .

Lema. El lgg de dos literales compatibles 1 y I’ es Único dada la equiva- lencia de literales.

1 = member(3, cons(2: cons(3, nil))) Ejemplo. “lgg de literales” 1‘= member(5, cons(4: cons(5,cons(6,nil))))

m = lgg(1,l‘)

Por lo tanto:

m = member(v3,5! cons(v2,4! c o n s ( ~ 3 ~ 5, vnil. cons(6. ni l ) ) ) )

Que es equivalente a:

m’ = member(z. cons(y, cons(z. 2 ) ) )

Lema (Lema de unificación). Sean 1 y I’ dos literales. Si 10 = 1’0 para alguna substitución 0 (unificador) existe un unificador más general (mgu) p con las propiedades

1. 1p = l ’p

2. Para alguna a. si la = 1’0 existe una 6 tal que la = 1p6 = l’p6

17

Definición. Dadas las literales 1 y 1’ con mgu su instancia más general

Ejemplo. “Unificación de literales” (mgu) es l p = l’p.

1 = append(u.u,v) I’ = append(cons(z. nil). y. cons(z, cons(z! nzl)))

p = u/cons(z . nil), y / u , v/cons(z, cons(z . nil))

p = u/cons(z , nil): y/cons(z: nil)? v/cons(z: cons(z. nil))

lp = append(cons(J:.nil), cons(z. nil): cons(z. cons(z:n i l ) ) ) = l’p

El conjunto de literales ordenadas por se incrementa incorporando T y i elementos.

Definición. Literales+ = llles literal U T! I Ahora Literales+ es una lattice en donde n y U se definen a continuación:

1

( 4 [TI u V I = [[I u [TI = [TI (b) Si I y I’ tienen lggm entonces [l]U[l’] = [m] de otra forma [l]U[l.’] =

[TI ( 4 P I u P I = V I u P I = V I

2.

Con las siguientes propiedades: Conmutatividad. Asociatividad y Distri-

Plotkin provo que dadas dos claúsulas C y D tienen una lub en el or- denamiento por subsumción. Este es el lgg de claúsulas y es definido como sigue.

Lema. Dadas dos claúsulas C y D (conjuntos de literales). La lub de C y D en el ordenamiento por subsumción es

butividad.

18

/gg(C. 0) = lgg(l, m) : 1 E C y m E D y 1 y mson compatibles

La glb dentro de la lattice de subsumción es además llamada la instancia

Lema. Dadas C y D dos claúsulas donde no participan variables. La glb más general (mgi) de dos claúsulas.

de C y D en el ordenamiento por subsumción es

mgi(C: O) = C U D

Ahora se definira la lattice sobre H:(B1 O+) restringida por subsumción. Definición. Dado T = O y I = I H ( B , O+)

H';t(B,O+) = C : T k C k 1

Este es un subconjunto de If?( B. O+). Dada la definición de clases de equi- valencia

[C] = C' : C' f c Donde las claúsulas son estandarizadas separadamente (no tienen variables en comun) entonces Hi+(B. O+) es una lattice ordenada por subsumción como sigue

Definición

a.[C] n [DI = [mgi(C , O)]

Donde n y U son conmutativas y asociativas. U es distributiva sobre n sin embargo n no es distributiva sobre U.

Es posible deducir lgg de ejemplos a partir de la separación de espacios de hipotesis con la finalidad de proveer un método eficiente para generar hipotesis.

Definición (Subsumción relativa). La hipotesis de claúsula sencilla H subsume el ejemplo positivo e+ relativo a la base de conocimiento B si y solo si H 5 l H ( B , e + ) .

Definición (Relative Least General Generalisation rlgg). La hipotesis de claúsula sencilla H se dice es la rlggB de e t y e: si y solo si

19

Cada subconjunto de ejemplos tiene un unico rlgg. En particular. hay solo un rlgg que cubre todos los ejemplos posibles.

Ejemplo. “Familias”

B = abuelo(X, Y ) t p a p a ( X , 2) A hzjo(Y, 2) papa(Henry. June) t

mama(Jane. John) t

mama( June. Alice) t

e: = abuelo(Henry. John) t

e; = abuelo(Henry, Alice) t

t abuelo( Henry, John)

abuelo(X, Y ) t papa(X, 2) A hzjo(Y. 2) XIHenry. Y lJohn

t papa( Henry. 2) A hijo( John. 2) papa(Henry. Jane) t

Z / June

t hijo( John. June)

Empleando resolución lineal a partir de B A e t se obtiene 7 ~ H ( B . e t ) como

-abuelo( Henry, John) A -hijo( John. June) A

papa( Henry, June) A mama( June. John) A mama(Jane. Alice)

De tal forma que:

I H ( B . e:) = abuelo(Henry, John) V hijo( John. Jane) t

papa(Henry. June) A mama(Jane. John) A

mama( June. Alice)

t abuelo(Henry. Alice)

abuelo(X: Y ) t papa(X, 2) A hijo(Y. 2)

20

XIHenry, YIAl ice

t papa(Henry, 2) A hi jo(Al ice . 2) papa( Henry. Jane) t

Z/ Jane

t hi jo(Al ice . Jane)

Empleando resolución lineal a partir de B y e t se obtiene - I H ( B . e t ) como

labuelo(Henry. Alice) A lh i jo(Al ice , Jane)

Apapa(Henry. Jane) A mama( Jane. JohnjA

mama( Jane, Alice)

De tal forma que:

IH( B. e:) = abuelo( Henry! Alice) V hi jo(Al ice , Jane) t

papa( Henry? Jane) A mama( Jane, John) A

mama(Jane. Alice)

IH( B. e:) SI = Henry, John s2 = John, Jane

sg = Henry, Jane s4 = Jane, John s5 = Jane, John

= Jane, Alice s7 = Jane. Alice

Por lo tanto:

21

Que es equivalente a:

r¿ggB(e:, e;) = abue¿o(Henry, X ) V h i j o ( X , J u n e ) t papa( H e n r y , J u n e ) A m a m a ( J a n e ! J o h n )

A m a m a ( J u n e . X ) A m a m a ( J a n e , Y ) A m a m u ( June . A l ice)

2.5 Redundancia y Búsqueda

La relación de generalidad entre formulas puede ser defiinida como sigue: La fórmula A es más general que la fórmula B si y sólo si A + B y

B ( n o t ) + A. En términos de programación lógica el tope de la lattice es la claúsula

vacía y la base de la lattice es el programa vacío. Un número infinito de cam- bios ascendentes y descendentes ocurren dentro de la lattice. Los cambios ascendentes pueden ser Construidos por la conjunción de fórmulas. Inversa- mente, los cambios descendentes pueden ser Construidos por la disyunción de fórmulas.

La generalidad relativa es definida como sigue: La fórmula A es más general que la fórmula B relativa a la fórmula C si

La fórmula es dividida en un conjunto de clases de equivalencia usando

La fórmula A es logicamente equivalente a la fórmula B si y sólo si A + B Esta definición sugiere una propuesta general de métodos para encontrar

y sólo si C A A B y C A B ( n o t ) I= A.

la siguiente definición:

Y B t = A .

la redundancia dentro de la fórmula.

22

2.6 Reducción de Claúsulas

La redundancia lógica de literales en claúsulas es formalizada a continuación. La literal 1 es logicamente redundante dentro de la claúsula C V 1 relativa

a la base deconocimiento B si y solo si

E l siguiente teorema provee un eficiente método para examinar la redundan- cia de literales.

Teorema. La literal 1 es redundante en la claúsula C V 1 relativa a la base teorica B si y solo si

Definición. La claúsula C se dice es reducida con respecto a una base de

Las claúsulas son reducidas removiendo iterativamente todas las literales conocimiento B si y solo si ninguna literal en C es redundante.

redundantes. Ejemplo. “Reducción de Familias”

B = abuelo(X. Y ) t papa(X. Z ) A hijo(Y. 2) papa(Henry. June) t

mama(Jane. John) t

mama( Jane. Alice) t

C v 1 = rlgg(el + + . e2 )

= abuelo(Henry: X ) V hijo( Jane, X ) t papa(Henry: Jane)

Arnama(Jane. X ) A marna(Jane: Y ) A marna(Jane.

John) A mama( Jane. Alice)

1 = lrnarna(Jane. Y )

Es necesario demostrar que B A (C V 1) C. Esto es equivalente a demostrar

23

B A ( C V L ) A - C ~

Esto requiere una demostración de la meta mama(Jane: Y) utilizando B.

t mama( Jane. Y )

mama(Jane! John) t

Y / John

t

De esta forma

C-1 = abuelo(Henry: 2) V h i j o ( X , J a n e ) t

papa( Henry! Jane) A mama(Jane. X ) A

mama(Jane: John) A mama(Jane: Alice)

1 = -papa(Henry. June)

t papa(Henry, Jane)

papa( Henry: Jane) t

t

C-1 = abuelo( Henry. 2) V hi jo(X. Jane) t

mama( Jane. X ) A mama( JaneJohn) A

mama( Jane. Alice)

1 = -mama( Jane. John)

t mama(Jane. John)

mama(Jane. John) t

4"

C-1 = abuelo(Henry, 2) V hi jo(X. Jane) t

mama( Jane! X ) A mama(Jane. Alice)

1 = lmama(Jane. Alice)

24

t rnama(Jane. Alice)

mama( Jane. Alice) t

t

Una vez removidas todas las literales redundantes la claúsula rlgg es:

abuelo(Henry, X ) V hijo( Jane: X ) t rnarna(dane. X )

2.7 Reducción de Teorias

La aproximación desarrollada para reducir claúsulas puede ser aplicada para remover claúsulas redundantes en teorias clausales (conjunciones de claúsu- las).

Definición. La claúsula C es redundante en la teoria B A C si y solo si B A C E B .

Teorema. La claúsula C es redundante en B A C si y solo si

Definición.B se dice es reducida si y solo si ninguna claúsula en B es redun- dante.

Las teorias claúsulales son reducidas removiendo iterativamente todas las claúsulas redundantes.

Ejemplo. “numeros naturales”

B = natural( s u c c ( X ) ) t natural(X)

c = natural( succ( succ( Y ) ) ) t natural( Y )

Es necesario demostrar que R + C. Esto puede ser demostrado si B A -C 0 donde

B A -C = natural( s u c c ( X ) ) t naturul(X) natural($Y) t

25

t natural( succ( succ( $ Y ) ) )

t natural( succ( succ( $ Y ) ) )

natural( succ(X)) t natural( X) X/succ( $ Y ) t natural( X )

natural( $ Y ) t X/$Y t

B + C así que C es redundante. Desde la claúsula sencilla en B no es redundante. B es reducida.

2.8 Búsqueda de HI Existen dos claúsulas iniciales para cada búsqueda.

1. Ho = 2. Ho = I H ( B . O+) (la claúsula más específica) Estas claúsulas iniciales conducen a las siguientes formas de búsqueda. Búsqueda de lo general a lo específico. Atraviesa la lattice de subsumción

1. adicionando una literal más específica (como p ( X , Y, 2 ) ) o 2. instanciando una variable con otra o un término más general funcional

(como f( X ! Y. 2)) Para cada hipotesis H; sucesivamente más específica resulta Hi y IH( B. E+)

y B A H A E - k U . Búsqueda de lo específico a lo general. Atraviesa la lattice de subsumción

a partir de I H ( B , E+) progresivamente tambien 1. Borra una literal o 2. Reemplaza un término por una variable Para cada hipotesis Hi sucesivamente más general resulta B A H A E-

a partir de Hi = O progresivamente tambien

O.

26

Buscar en la lattice de subsumción es un problema de gráfica transversal. El algoritmo A* trabaja minimizando una gráfica transversal donde cada nuevo nodo encontrado es etiquetado por una función que tiene la forma

donde g es la distancia atravesada desde el comienzo de la búsqueda y h es la distancia a la meta.

La búsqueda A* con un adecuado estimador de Solomonoff de la infor- mación obtenida sin errores puede ser usada en la busqueda en el espacio de las hipotesis de claúsula sencilla sin backtrack. Las hipotesis tienen una probabilidad máxima posterior.

2.9 Hipotesis en HZ La aproximación discutida esta limitada a HI. el espacio de Hipotesis de claúsula sencilla. La aproximación se extiende a Hz. En particular: se ha demostrado que cuando los ejemplos son claúsulas arbitrarias, los elementos de Hz proveen un método atravesando la ordenación por implicación despues de la ordenación por subsumción. HZ además contiene hipotesis con simbolos de predicados fuera de la base de Herbrand. de los ejemplos y de la base de conocimiento. En la filosofia de la Ciencia: los predicados “inventados” son conocidos como “términos teóricos”. Los modelos para predicados no pueden ser directamente evaluados en términos de el lenguaje “observacional” de los ejemplos. De cualquier forma es posible evaluar que contienen términos teóricos usando el análisis de probabilidad posterior. Desde un conjunto no acotado los predicados pueden ser introducidos. una lattice de utilidad es impuesta sobre esos nuevos predicados.Estas ordenan clases de equivalencias de predicados inventados. Las hipotesis que hacen uso de predicados estan ordenadas de acuerdo a su utilidad. Este ordenamiento sobre hipotesis tiene un unico último elemento en medio de la base de elementos de Hz.

2.10 Aprendibilidad

La Aprendibilidad concierne con la convergencia de propiedades de un pro- ceso de formación y revisión de hipotesis predictivas.Hay dos principales apro- ximaciones a la aprendibilidad

27

1. La identificación de la meta en el limite. Esta aproximación es derivada de la teoría dela computabilidad. Esta trata con la convergencia finita de tiempo de un procedimiento de aprendizaje cornputacional.

2. Aprendizaje-PAC de Valiant. Este es derivado a partir de la compleji- dad de la teoria cornputacional y trata con la proporción esperada de convergencia.

28