Simulación Lógica de Relatos Narrativos Tesis de Grado por el título de Magister Scientiae en Modelado y Simulación de Sistemas Universidad de Los Andes Luis Astorga Junquera Mayo 2003 Mérida, Venezuela Contents 1 Panorama 3 2 Preliminares lógicos 2.1 Ordenes y árboles . . . . . . . . . . . . . . . . . . . . 2.2 Lógica de predicados con igualdad . . . . . . . . . . 2.2.1 Sintaxis del cálculo de predicados . . . . . . . 2.2.2 Semántica del cálculo de predicados . . . . . 2.3 Lenguaje de programación lógica . . . . . . . . . . . 2.3.1 Forma normal de cláusulas . . . . . . . . . . 2.3.2 SLD-refutación . . . . . . . . . . . . . . . . . 2.3.3 Negación por falla . . . . . . . . . . . . . . . 2.3.4 PROLOG . . . . . . . . . . . . . . . . . . . . 2.4 Representación de procesos en Inteligencia Arti…cial 2.4.1 Cálculo de Situaciones . . . . . . . . . . . . . 2.4.2 Cálculo de eventos . . . . . . . . . . . . . . . 2.4.3 Cálculo narrativo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 6 9 9 12 15 15 19 23 25 27 27 29 31 3 Elementos de semiótica narrativa 37 3.1 Estrategia de aproximación al relato narrativo . . . . . . . . . . . 37 3.2 Análisis de relatos . . . . . . . . . . . . . . . . . . . . . . . . . . 38 3.2.1 Nivel temático . . . . . . . . . . . . . . . . . . . . . . . . 39 3.2.2 Nivel narrativo . . . . . . . . . . . . . . . . . . . . . . . . 41 3.2.3 Nivel …gurativo . . . . . . . . . . . . . . . . . . . . . . . . 46 3.3 La sintaxis narrativa en programación lógica . . . . . . . . . . . . 46 3.3.1 Micro-estructura: el programa narrativo y su complejidad 48 3.3.2 Macro-estructura: el esquema narrativo canónico . . . . . 51 4 Modelo de simulación de relatos 65 4.1 Modelo en gramática de cláusula de…nida . . . . . . . . . . . . . 65 4.2 Figurativización . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 4.3 Redacción automática de relatos narrativos en lenguaje natural . 69 1 5 Conclusiones y fuentes 70 5.1 Conclusión teórica: Hacia una gramática formal narrativa . . . . 71 5.2 Conclusión práctica: Derivados posibles del dispositivo lógico de generación narrativa . . . . . . . . . . . . . . . . . . . . . . . . . 72 5.3 Indice analítico . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72 5.4 Bibliogra…a . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 2 Chapter 1 Panorama No existe una teoría única o de…nitiva que prescriba los modos de creación de la narrativa, y es de esperarse que así sea. Sin embargo, para algunas formas concretas de la expresión narrativa existen técnicas de construcción dramática que son relativamente constantes, como se percibe, por ejemplo, en los manuales de la guionística cinematográ…ca convencional o en los análisis formales que sobre el género de narrativa popular hacen los semióticos. Estas técnicas se reconocen en el magma de una creación universal, empírica y colectiva. Nuestro propósito consiste en elaborar, a partir de los preceptos formales de la semiótica estructural tal y como se encuentra desarrollada por la Escuela Semiótica de París, una formalización de las estructuras narrativas simples mencionadas en términos de reglas lógico-semióticas expresadas en el lenguaje de la programación lógica. Para ello, nos ha parecido pertinente enfocar nuestro esfuerzo desde la perspectiva de la inteligencia arti…cial como contexto formal de rigor. El estudio de la generación automática de historias (story generation en inglés) se ha orientado, fundamentalmente, hacia la tecnología de plani…cadores en inteligencia arti…cial ( [Meehan 1977], [Lebowitz 1985], [Lang 1997]), y ha encontrado su principal fuente de inspiración en las gramáticas de historias (story grammars en inglés), [Bal 1977], [Segre 1988]. Tanto estas últimas como el tratamiento de la narratividad por la escuela francesa ([Greimas 1986]) derivan del trabajo precursor de Vladimir Propp en las primeras décadas del siglo XX [Propp 1970]. Sin embargo, como un hecho que nos llama poderosamente la atención, ningun esfuerzo de automatización de narrativa ha considerado, hasta donde sabemos, ni los resultados formales de la teoría semiótica (una única referencia hemos encontrado como proyecto en proceso aún no publicado [Equipe SIAMES 2002]), como tampoco la implementación de los cálculos lógicos de situaciones y eventos para tales …nes. La originalidad de nuestra tarea radica, precisamente, en proponer una automatización semiótica fundamentada en el cálculo lógico. El objetivo que se persigue ha de ubicarse, entonces, en el horizonte de la automatización de prosa narrativa. Entendemos que para alcanzar esta última deben cumplirse dos fases: Una primera, que culmina en la traducción a un 3 lenguaje de programación de las nociones del modelo semiótico una vez circunscritas a la narrativa de relatos (nuestra elección metodológica será el lenguaje de programación lógica PROLOG). Pero, para garantizar la coherencia narrativa del modelo, expresada aquí en los términos de la consistencia lógica, debemos fundar el programa semiótico en un zócalo formal que evalue sistemáticamente las necesidades discursivas. El cálculo de situaciones y el cálculo de eventos de la inteligencia arti…cial serán los puntos de partida que tomaremos en cuenta, para luego proponer un cálculo narrativo adecuado a dichas necesidades, en contraste con el carácter de contingencia para el cual fueron creados los primeros. El presente trabajo se concentra en esta primera fase, y el mecanismo lógico que elaboramos se limitará a modelar las estructuras semióticas de los relatos, su esqueleto subyacente. Una segunda fase deberá proveer los mecanismos de vertimiento …gurativo de estas estructuras, a través de bases dinámicas de datos o de sistemas interactivos, y además, traducir el esquema lógico-semiótico a la lengua natural produciendo posibles formas redaccionales. Sobre ello, comentaremos en su momento (capítulo IV) algunos dispositivos ya existentes que pudieran eventualmente acoplarse a nuestro modelo. Hemos ordenado y redactado el trabajo pensando en la lectura de un investigador lingüista, sin pasar por alto cierto formalismo lógico-matemático necesario para articular y justi…car su contenido. Nos ha parecido pertinente utilizar el objeto matemático árbol como un elemento hilador de los diferentes campos que abordamos, primero porque su representación grá…ca permite una inmediata comprensión de las estructuras, pero también porque esto nos acerca, como una de las conclusiones abiertas de investigación que propondremos, al análisis matemático-lingüístico propio de los lenguajes formales en la problemática puntual de una gramática narrativa formal de carácter generativo. La primera parte (preliminares lógicos) ofrece las herramientas matemáticas y lógicas para la comprensión del modelo de simulación, y presenta los cálculos de situaciones y de eventos, …nalizando con nuestro cálculo narrativo. La segunda parte (elementos de semiótica narrativa) desarrolla someramente la semiótica narrativa representando sus nociones en la forma lógica de cláusulas, que es la lengua de la programación lógica. La tercera y cuarta parte (modelo de simulación lógica de relatos y conclusiones y fuentes) articula globalmente el modelo en el marco de la automatización de textos narrativos donde se comentan diferentes aplicaciones del dispositivo propuesto. A lo largo de todo el trabajo se muestran ejemplos que ilustran los contenidos teóricos y se anexan sus códigos PROLOG. Es importante que el lector lingüísta tenga en cuenta que nuestra intención no es hacer semiótica, sino utilizarla para crear un modelo de automatización, entendiendo que el alcance del campo semiótico es, por mucho, más extenso de lo que acá referimos. Por ello, no nos extrañaremos de seguras sugerencias por parte de especialistas del campo que a…nen y mejoren nuestro aparato lógico. Ese es en todo caso nuestro deseo. El horizonte de las posibles aplicaciones de una propuesta de esta naturaleza comprende la implementación de dispositivos tecnológicos inteligentes, cibernéticos por supuesto, pero también telemáticos, como herramienta o medio analítico, didáctico, pragmático, lúdico, e incluso, plástico. Análitico, porque 4 puediera ayudar en el reconocimiento de patrones narrativos; didáctico, en el ejercicio de la redacción asistida de cuentos; pragmático, como procesador narrativo en la elaboración de guiones y libretos (actualmente en construcción por el Grupo de Ingeniería Lingüística de la ULA, del cual forma parte el autor); lúdico, por su carácter dinámico en la construcción de juegos digitales de roles; y plástico, como motor generador de alegorías visuales, propio del arte cibernético actual. Pero también, desde le punto de vista teórico, se pretende aportar elementos para la discusión abierta sobre la posibilidad de una gramática de carácter generativo como inteligibilidad del constructo narrativo, y nunca como llave mágica de una supuesta mecanización de la producción creativa. Porque, aún en esta perspectiva optimista, no podemos olvidar que la lógica es sólo una de las herramienta de la razón, que la razón no es, como por efecto de una metonimia, soberana de las facultades espirituales, y no podemos tampoco perder de vista que la máquina es un instrumento para la actividad humana, tan sólo un caro capricho, que la interacción máquina-hombre sólo fortalece la inventiva del hombre, y que la aspiración tecnológico-cienti…cista de sustituir éste por aquella tiene consecuencias éticas equívocas en el terreno de los actos. Le recomendamos pasearse por las conclusiones antes de comenzar la lectura del contenido técnico de la obra porque ofrece, creemos, una visión preventiva sobre presuntas pretenciones derivadas de un malentedido inicial. Siendo este trabajo una aplicación tecnológica de teorías conocidas, la bibliografía que hemos consultado no quiere ser exhaustiva de los campos visitados, sino lo justo necesario para desplegar un piélago de conceptos útiles en los términos en que son presentados en los textos académicos. Las fuentes son referidas al principio de cada sección que introduce un campo de especialización distinto, a saber, la lógica de primer orden, la programación lógica, los cálculos de situaciones y eventos, la semiótica narrativa, y la gramática formal de cláusula de…nida. El autor fue bene…ciario del programa de becas de postgrado FONACITBID II del Ministerio de Ciencia y Tecnología de la República Bolivariana de Venezuela, …nanciamiento sin el cual hubiese sido imposible realizar este trabajo. Agradecemos al Centro de Simulación y Modelado (CESIMO) de la Universidad de Los Andes por su amplia política en interdisciplinar a estudiantes de maestría interesados, desubicados y curiosos, y en particular al profesor Jacinto Dávila, coordinador del postgrado de Modelado y Simulación de Sistemas y promotor incansable de la lógica aplicada, por su dedicación e interés en una tutoria ejemplar. Especial agradecimiento merece la profesora Melva Márquez por sus correcciones ortográ…cas y sus sugerencias de redacción, que casi merecen el título de coautoria. Todo mi entusiasmo laboral tiene causa y sentido en la paciencia complice de Alessandra, y en el ímpetu y la curiosidad de Theo y Mattia. 5 Chapter 2 Preliminares lógicos 2.1 Ordenes y árboles La estructura de árbol, subespecie de los grafos acíclicos, es una herramienta matemática muy versátil para representar y manipular objetos que poseen una estructura interna jerarquizada. En principio, los árboles son conjuntos de nodos y relaciones de orden entre ellos, es decir, la asociación de un conjunto y una estructura. Esta asociación se de…ne formalmente por una función, llamada de etiqueta, que asigna los elementos del conjunto en cuestion en los lugares que ocupan dentro de la topologia del objeto-árbol, permitiendo que un mismo elemento ocupe distintos lugares, pero evitando que un mismo lugar sea ocupado por distintos elementos. Para nosotros, el conjunto fuente será un lenguaje in…nito de…nido a partir de la concatenación de los símbolos de un alfabeto …nito, y las estructuras de árbol de…nirán entonces la sintaxis constructiva de las palabras o elementos del lenguaje. De…nimos, primero, la estructura de árbol per se, como un forma continente susceptible de ser investida con los contenidos emanados del lenguaje que de…niremos formalmente luego. A lo largo de este trabajo solamente trataremos con árboles …nitos. Un orden parcial en un conjunto A es una relación binaria "<", que es transitiva ( si x < y y y < z entonces x < z), asimétrica (x < y implica que no es posible y < x), e irre‡exiva (para ningún x en A se cumple que x < x): No necesariamente todos los elementos de A están relacionados entre sí, en cuyo caso se dice de los elementos que no lo están que son independientes. Un orden parcial es lineal si no tiene elementos independientes, es decir, si adicionalmente a la de…nición anterior, se cumple que para todos x y y en A, una y sólo una de las tres opciones es cierta; x < y, y < x; ó x y y son idénticos. Formalmente, un árbol (A; <A ) es, entonces, un conjunto de nodos-posición A con un orden parcial <A (llamado en este contexto relación de dominio) donde se deben cumplir tres condiones: Que exista un elemento mínimo llamado raíz que domine a todos los 6 elementos de A, es decir, que sea menor que el resto de los elementos de A en la relación de orden parcial <A : Que para cada nodo-posición distinto de la raíz exista un subconjunto …nito de A, o subárbol, ordenado también por la relación de orden <A , pudiendo éste ser el conjunto vacío. En este último caso, los nodos-posición se llaman hojas del árbol. Que la relación de dominio conecte y concluya ascendentemente, es decir, que para todos x; y; z 2 A; tales que x <A z y y <A z; se cumpla que x <A y ó y <A x. Estas tres condiciones garantizan la forma rami…cada que da el nombre de árbol a la estructura. Algunas de…niciones adicionales ayudaran a especi…car de manera completa la relación estrictamente ordenada entre los nodos de un árbol. Una relación de dominio es inmediata si se tiene que para cualesquiera x; y 2 A; x <A y y no existe z 2 A tal que x <A z y z <A y. En una relación de dominio inmediata al nodo predecesor se la llama padre y a los nodos sucesores hermanos, los cuales son, por de…nición, independientes entre sí. Una rama en un árbol es un subconjunto linealmente ordenado de A que contiene la raíz (menor elemento) y una de las hojas (mayor elemento) entre sus nodos. Nótese que la raíz por sí sola es un ya árbol, y que las hojas son también subárboles. Las generaciones de un árbol, que son números naturales asociados a subconjuntos de nodosposición, se de…nen inductivamente; la generación 0 es la raíz, y la generación k + 1 consiste en el subconjunto de los nodos sucesores inmediatos de todos los nodos de la generación k: La altura de un árbol es la máxima generación n para la cual hay al menos una hoja, en cuyo caso, n es el número de elementos menos 1 de la rama más larga. El grado gd(x) de un nodo-posición x es el número de sus sucesores inmediatos. Si x es una hoja o nodo terminal entonces gd(x) = 0; pero si es un nodo no-terminal gd(x) 1:Un árbol es n-ario si todos sus nodos son de grado menor o igual que n. Es muy útil poder indexar de manera coherente todos los nodos-posición de un árbol, y para ello se requiere de un orden lineal en todo el árbol. La relación de dominio no de…ne un orden lineal en todos los nodos de un árbol, sin embargo, éste se puede construir a partir de aquella de la manera siguiente. Se ordenan primero de forma lineal (de izquierda a derecha) los nodos de cada generación, y se dice, entonces, que un nodo x precede a un nodo y si es menor en el orden lineal de una generación (cuando forman parte de una misma generación), o si algún predecesor de x es menor que un predecesor de y en alguna generación anterior, y esto siempre es el caso por la tercera condición de la de…nición de árbol. Nótese que para que exista una relación de precedencia entre dos nodos debe haber alguna independencia entre dos miembros de sus respectivas genealogías o ramas ascendentes, con lo cual, la relación de precedencia es incompatible con la relación de dominio. Finalmente, se de…ne una relación compuesta de orden entre la dominación y la precedencia, llamada relación de orden lexicográ…co, en los siguientes términos: un elemento x es menor lexicográ…camente que 7 Figure 2.1: Arbol binario indexado y si x domina a y; ó en caso contrario (porque son independientes), si x precede a y. Esta de…nición de orden es lineal pues relaciona unívocamente dos elementos cualesquiera y tiene sentido porque si falla la dominación la precedencia necesariamente se cumple. Un árbol puede ahora indexarse de manera exhaustiva según una relación de orden lexicográ…co. Mostramos un ejemplo posible de indexación en el caso del árbol binario en la …gura 1.1. Obviamente, este sistema binario de numeración de nodos puede extenderse para cualquier tipo de árbol n-ario. Hemos de…nido el continente estructurado de la información que despliega un árbol, pero es menester dotarlo de sentido. Un lenguaje de árboles se de…ne recursivamente conformado por los objetos de tipo árbol descrito anteriormente cuyos nodos son a su vez elementos o palabras del mismo lenguaje de árboles. Un tal lenguaje puede ser in…nito aún cuando los árboles (palabras del lenguaje) sean …nitos. Los lenguajes de árboles son en verdad conjuntos de clases de equivalencia porque cada árbol es representado en el lenguaje por su raíz y una misma raíz puede tener varias estructuras sintácticas. Si este es el caso, al lenguaje se le llama ambiguo. Pero un lenguaje no se construye sin una función que asigne nombres a los nodos-posición de un árbol, que son los elementos del conjunto A. Debemos 8 tener entonces, previo al lenguaje, un alfabeto de símbolos, y una operación de concatenación de símbolos que permita especi…car las posibles estructuras internas de una palabra del lenguaje, es decir, sus árboles sintácticos. La función de etiqueta asigna palabras del lenguaje (los símbolos del alfabeto se consideran palabras elementales) a los nodos-posición de los árboles. En verdad, está función va desde el lenguaje hasta el conjunto de partes de A (el conjunto de todos los subconjuntos de A), para permitir que una misma palabra ocupe nodos distintos si es el caso. A los efectos prácticos del manejo de árboles siempre se trabaja con árboles etiquetados, suponiendo tácitamente la forma de su construcción, al menos que sea necesario explicitarla. Hemos tomado los contenidos básicos de esta sección de [Nerode & Shore 1993] y [Martin-Vide 2002]. 2.2 Lógica de predicados con igualdad La inteligencia arti…cial, que es el etudio y aplicación del razonamiento automatizado, se fundamenta en la lógica formal. Dentro del vasto campo de la lógica, el de predicados es la mejor conocida y la que presenta propiedades más estables, en particular la coincidencia entre las relaciones de derivabilidad e implicación lógica (para los sistemas de inferencia correctos y completos), esto es, una buena adecuación entre semántica y sintaxis. Hemos elegido la presentación de la lógica de predicados en términos de árboles por cuanto anuncia desde el principio el tratamiento estructural de nuestros objetos de estudio y homogeneiza el cuerpo teórico del trabajo. Para ello hemos consultado [Nerode & Shore 1993], [Quesada 1995] y [Shanahan 1997]. 2.2.1 Sintaxis del cálculo de predicados Asumimos inicialmente la existencia de cuatro alfabetos distintos: –> Constantes: fa; b; c; :::g –> Variables: fX; Y; Z; :::g –> Funciones: ff; g; h; :::g –> Predicados: fp; q; r; :::g Al conjunto de estos cuatro alfabetos se le llamará conjunto de símbolos no-lógicos. Se de…ne, además, un conjunto de símbolos lógicos compuesto de: –> Conectores: f:; ^; _; !; ; !g: –> Cuanti…cadores: f8; 9g: Cada función y cada predicado tiene asociado un número …nito n de argumentos o n-aridad. Presentamos a continuación una de…nición de los elementos de la lógica de predicados de primer orden con igualdad en términos de árboles etiquetados con orden lexicográ…co. De…niremos primero la noción de término como árbol a partir de funciones, variables y constantes, luego la fórmula atómica como árbol de términos que representa la estructura de predicados, y …nalmente, la 9 fórmula bien formada como un árbol de fórmulas atómicas y símbolos lógicos que representa las expresiones lógicas sintácticamente correctas. Un término (identi…cado con la etiqueta de su raíz) es un árbol T que satisface las siguientes condiciones: 1) Las hojas (nodos terminales) de T son etiquetadas con variables o constantes, 2) Todo nodo no-terminal de T es, a su vez, un término de la forma f ( 1 ; :::; n ); y tiene exactamente n sucesores inmediatos en T , los cuales se ordenan lexicográ…camente, y se etiquetan con 1 ; :::; n , que son símbolos que también designan términos. A los términos sin variables se les llaman términos constantes. Una fórmula atómica p( 1 ; :::; n ), donde p es un predicado y 1 ; :::; n son símbolos que designan términos ordenados, es un árbol que se construye colocando como subárboles (sucesores inmediatos) los árboles correspondientes a los términos según el orden en el argumento (entre los paréntesis). Una vez construida la representación en árbol de un predicado, que es una fórmula atómica, debe especi…carse el orden sintáctico de las expresiones lógicas entre las fórmulas atómicas y los símbolos lógicos (conectores y cuanti…cadores). Una fórmula bien formada, deciamos, es una expresión lógica sintácticamente correcta, y se representa por un árbol binario T que satisface las siguientes condiciones: 1) las hojas de T son etiquetadas con fórmulas átomicas, 2) un nodo no-terminal de T con un único sucesor (fórmula atómica) es alguno entre : negación 8X[ (X)] cuanti…cación universal 9X[ (X)] cuanti…cación existencial donde X puede designar varias variables. 3) un nodo no-terminal de T con dos sucesores ordenados atómicas), es alguno entre = ^ _ ! ! y (fórmulas igualdad conjunción disyunción condicional (si) condicional (sólo si) bicondicional (si y sólo si) En lo sucesivo hablaremos solamente de fórmulas bien formadas por lo cual nos referiremos a ellas simplemente como fórmulas. Algunos comentarios de uso son necesarios: 1. Abreviamos X 6= Y para expresar :[X = Y ]. 2. La estructura de árbol de las fórmulas especi…ca sin ambigüedad el orden de precedencia usual: :; ^; _; (!; ); !; (8; 9): 3. Los cuanti…cadores anidados de mismo tipo se simplican por bloques, por ejemplo, 8X8Y 8Z se escribe 8X; Y; Z. 10 Figure 2.2: Ejemplo de árbol de una fórmula El grá…co de la …gura 2.1 muestra un ejemplo del árbol que despliega la fórmula 9X[p(a; X; f (a; X)) ! X 6= a]: También serán útiles las siguientes de…niciones complementarias. Sea una fórmula y X una variable, entonces; 1) Una fórmula sin variables se llama fórmula constante. 2) Si X ocurre en y ésta es un fórmula cuanti…cada para X (8X; :::[ ] o 9X; :::[ ]), se dice que X es una variable ligada. 3) Si en ; X no está ligada al menos una de las veces que ocurre, se dice que X es una variable libre. 4) Si contiene al menos una variable libre se dice que es una fórmula abierta y, en caso contrario, es una sentencia. Ahora bien, si (X1 ; :::; Xn ) es una fórmula abierta con variables libres X1 ; :::; Xn , y si 1 ; :::; n son algunos términos que eventualmente pueden contener otras variables, se puede instanciar la fórmula a través de una operación de sustitución de las variables libres por los términos . Se obtiene así una instancia (X1 1 ; :::; Xn n ) de (X1 ; :::; Xn ) remplazando para cada i el término i en todas las ocurrencias de Xi en . Al conjunto de expresiones = fX1 1 ; :::; Xn n g se le llama una sustitución. Pero si la fórmula es una sentencia cuanti…cada universalmente 8X1 ; :::; Xn [ ] de tal manera que ningún cuanti…cador para X1 ; :::; Xn ocurre dentro de , y = fX1 1 (Y11 ; :::; Y1k1 ); :::; Xn n (Yn1 ; :::; Ynkn )g es la sustitución donde las variables Yij que introduce no ocurren en la sentencia dada, la expresión resultante de la operación de sustitución es 8Y11 ; :::; Y1k1 ; :::; Yn1 ; :::; Ynkn (X1 1 (Y11 ; :::; Y1k1 ); :::; Xn 11 n (Yn1 ; :::; Ynkn )) Aplicar dos sustituciones sucesivas 1 y 2 a una sentencia supone una operación de composición de sustituciones 1 2 ; que es otra sustitución no necesariamente conmutativa, 1 2 6= 2 1 : El resultado de esta operación compuesta consiste en aplicar la primera 1 = fX1 11 ; :::; Xn 1n g y luego la segunda 2 = fY1 ; :::; Y g sobre las posibles nuevas variables 21 m 2m que introduce la primera y también sobre las variables que ésta no afecta, con lo cual la expresión completa de la composición es f 2 (X1 11 ); :::; 2 (Xn 1n )g [ fYj 2j : Yj 2 = fX1 ; : : : ; Xn gg Hemos descrito someramente la sintaxis de la lógica de predicados con igualdad con la estrategia de estructuras de árbol. Su lenguaje L(C) es pues el conjunto de todos los árboles, que son fórmulas bien formadas, y que se pueden construir a partir de un conjunto dado de símbolos no lógicos C. Al ámbito de los constructos y operaciones sobre los lenguajes de la lógica predicativa de primer orden con igualdad se le llama, simpli…cando, cálculo de predicados. Denotaremos por L al lenguaje (sobre el conjunto de símbolos dado al principio) del cálculo de predicados. 2.2.2 Semántica del cálculo de predicados El estudio del signi…cado de las expresiones del cálculo de predicados en su relación con las cosas del mundo que formaliza se llama teoría de modelos, que describimos parcialmente a continuación. Una interpretación A = hD,F,Pi para un lenguaje L consiste en; 1) un conjunto no vacío D de objetos o dominio, 2) una aplicación de asignación F que mapea todas las constantes y variables en L sobre elementos de D, y que mapea toda n-función f de L en una función de f A de Dn en D, donde Dn es el conjunto de todas las n-uplas de elementos en D, 3) una aplicación de asignación P que mapea todo n-predicado p de L en un subconjunto pA de Dn : Un tal conjunto se dice extensión del predicado, y su signi…cado es el de agrupar todas las n-uplas que cumplen veritativamente el predicado. Notación: Sea A una interpretación. El signo de igualdad "$ " en las siguientes expresiones no es el signo "=" del lenguaje L, sino un signo de identidad del metalenguaje que describe a L, y expresa la igualdad de objetos o subconjuntos del dominio. Si p es un predicado de L entonces P(p) $ pA Dn . Si a es una constante de L entonces F(a) $ aA 2 D. Si f es una función de L entonces F(f ) $ f A : Dn ! D. Si 1 ; :::; f ( 1 ; :::; n son términos y f una función A A A A n) $ f 1 ; :::; n 2 D. 12 de L, entonces F (f ( 1 ; :::; n )) $ Es usual en el lenguaje matemático abreviar si y sólo si por sii, como lo veremos en la próxima de…nición. La relación de satisfacción B entre una interpretación A y una fórmula de L se de…ne como sigue (el símbolo C denota la negación de satisfacción): A 1) A B p( 1 ; :::; n ) sii A pA 1 ; :::; n A A 2) A B ( 1 = n ) sii 1 $ n 3) A B [: ] sii A C 4) A B [ 1 ^ 2 ] sii A B 1 y A B 2 5) A B [ 1 _ 2 ] sii A B 1 o A B 2 6) A B [ 1 ! 2 ] sii A C 1 o A B 2 7) A B [ 1 2 ] sii A C 2 o A B 1 8) A B [ 1 ! 2 ] sii A B 1 y A B 2 ; o A C 1 y A C 2 9) A B [8X( )] sii para todo término constante se tiene que A B ( ) 10) A B [9X( )] sii para algún término constante se tiene que A B ( ) Si A B se dice entonces que A satisface . Obsérvese que la relación de satisfacción entre una interpretación y una fórmula compuesta esta determinada por la satisfacción de sus componentes según (3)-(10), descendiendo desde la raíz en su correspondiente árbol. Toda interpretación debe garantizar que todos los elementos del dominio sean designados por términos constantes del lenguaje para que (9)-(10) tenga sentido. Una interpretación A es un modelo de la fórmula si A B . A partir de estas ideas se entiende la noción lógica de equivalencia. Si todo modelo de es modelo de y viceversa, se dice que y son equivalentes, . Como ejemplo tenemos la útil equivalencia ( ! ) : _ que se percibe en (6)-(7) de la de…nición de satisfacción. El signi…cado de la relación de satisfacción es el de una función de verdad. Una fórmula es cierta en una interpretación dada si y sólo si es satisfecha por ella. Es el contenido de la próxima de…nición. Una fórmula es una consecuencia lógica de un conjunto de fórmulas = f 1 ; :::; n g si todos los modelos que satisfacen cada una de las fórmulas _ : 1 ; :::; n también satisfacen j= si y sólo si para todo A tal que A B entonces A B Tomemos por ejemplo el juego infantil de manos piedra, papel o tijera. Tenemos así un dominio de objetos D = fpiedra; papel; tijerag y un conjunto de símbolos no-lógicos formado por las constantes respectivas f ; ; g; los 3-predicados fgano_yo, ganas_tu, empatamosg, y la 2-función f de…nida por: f( ; f( ; f( ; f( ; f( ; f( ; ) ) ) ) ) ) = f( ; ) = = f( ; ) = = f( ; ) = = = = 13 Construimos, entonces, la siguiente interpretación A = hD,F,Pi que representa la dinámica del juego: F(f ) = : : : : : : : : : f A : Dn ! D f A (piedra; piedra) = piedra f A (piedra; papel) = papel f A (piedra; tijera) = piedra f A (papel; papel) = papel f A (papel; tijera) = tijera f A (papel; piedra) = papel f A (tijera; tijera) = tijera f A (tijera; piedra) = piedra f A (tijera; papel) = tijera y, 8p 2 L : P(p) }(D3 ) P(gano_yo) = f(X; Y; Z) : Z = f (X; Y ) ^ X 6= Y ^ X = Zg P(ganas_tu) = f(X; Y; Z) : Z = f (X; Y ) ^ X 6= Y ^ Y = Zg P(empatamos) = f(X; Y; Z) : Z = f (X; Y ) ^ X = Y ^ Y = Zg Los predicados se leen de la siguiente manera; los primeros dos argumentos corresponden a las jugadas respectivas de los jugadores siempre en el mismo orden y el tercer argumento es el valor de la función que representa el resultado de la jugada. Luego, las extensiones de los tres predicados en D3 son: : P(gano_yo) = f(piedra; tijera; piedra); (papel; piedra; papel); (tijera; papel; tijera)g : P(ganas_tu) = f(piedra; papel; papel); (papel; tijera; tijera); (tijera; piedra; piedra)g : P(empatamos) = f(piedra; piedra; piedra); (papel; papel; papel); (tijera; tijera; tijera)g Obsérvese que la cardinalidad de D3 es 27, el número de tríadas posibles, y la de }(D3 ) es 227 ; el número de subconjuntos de D3 . Ahora bien, veamos la relación de satisfacción entre nuestra interpretación y la fórmula del ejemplo [1]; : 9X[gano_yo( ; X; f ( ; X)) ! X 6= ]: La fórmula es cierta si existe al menos un término constante para el cual la fórmula gano_yo( ; X; f ( ; X)) ! X 6= es satisfecha, pero a su vez esta fórmula es cierta si AC gano_yo( ; X; f ( ; X)) o si A B (X 6= ); es decir :gano_yo( ; X; f ( ; X)) _ (X 6= ) 14 Hay entonces tres casos posibles, que ambas fórmulas sean satisfechas o que al menos una de ellas lo sea. En el primer caso, X no puede ser sustituido por ningún término constante: Pero si sólo se cumple la primera fórmula y no la segunda X puede asumir : Finalmente, el tercer caso asigna a X el término constante : Por lo tanto, y son candidatos que cumplen la satisfacción de : Es necesario un comentario …nal en relación a las reglas que elabora la lógica para inferir nuevas sentencias conclusivas desde un conjunto dado de sentencias o premisas. Al estudio de tales reglas se le llama teoría de pruebas y su relación con la teoría de modelos, esto es, la adecuación de las reglas de inferencia a la implicación de sentidos en la manipulación simbólica es fundamental en la construcción de sistemas lógicos. Volveremos sobre la teoría de pruebas cuando de…namos y apliquemos la regla de inferencia llamada resolución que es el dispositivo derivativo de la programación lógica. 2.3 Lenguaje de programación lógica La programación lógica es un formalismo computacional que recurre a la lógica para expresar conocimiento, representado en suposiciones y conclusiones. Usa la inferencia para manipular aquel estableciendo conexiones lógicas entre éstas. Básicamente, consiste en un sublenguaje del cálculo de predicados llamado lógica de cláusulas, y el sistema particular de inferencia resolución. Para la redacción de esta sección dedicada a la programación lógica y, al …nal de ésta, al lenguaje de programación PROLOG que usaremos como herramienta programática, hemos revisado [Hogger 1990], [Nerode & Shore 1993], [Lloyd 93], [Shanahan 1997] y [Clocksin & Mellish 1994]. 2.3.1 Forma normal de cláusulas El cálculo de predicados puede reducirse al cálculo de proposiciones (que opera exclusivamente sobre términos constantes) a un costo que precisamos adelante. Este procedimiento es útil a la hora de automatizar el uso de la lógica. Emprendemos, entonces, el proceso de transformaciones reductivas. Un subconjunto del conjunto de símbolos conectores lógicos f:; ^; _; !; ; !g es adecuado si las fórmulas que contienen cualquier conector pueden traducirse a otras fórmulas semánticamente equivalentes en los términos de los elementos del subconjunto. Así por ejemplo, f:; ^; _g es adecuado en virtud de ! : _ y ! ( ! )^( ) (: _ ) ^ ( _ : ) Se veri…ca que f:; _g; f:; ^g y f:; !g también son adecuados. Este hecho permite construir formas normales, que son sistemas regulares de expresión a los cuales puede reducirse (en invariancia semántica) todas las expresiones lógicas 15 de un lenguaje. Esbozamos a través de un ejemplo, tomado de [Hogger 90], los pasos para convertir las sentencias del cálculo de predicados en la forma normal de cláusulas. La sentencia 8X; Y [s(X; Y ) ! 8Z [p(Z; X) ! p(Z; Y )]] es la de…nición de relación de subconjunto donde el predicado s(X; Y ) signi…ca X es subconjunto de Y , y el predicado p(Z; X) signi…ca Z pertenece a X. Paso 1: Se despliegan los conectores bicondicionales, 8X; Y (s(X; Y ) 8Z [p(Z; X) ! p(Z; Y )]) ^ (s(X; Y ) ! 8Z [p(Z; X) ! p(Z; Y )]) Paso 2: Se transforman condicionales en disyunciones, 8X; Y (s(X; Y ) _ :8Z [:p(Z; X) _ p(Z; Y )]) ^ (:s(X; Y ) _ 8Z [:p(Z; X) _ p(Z; Y )]) Paso 3: Se distribuyen las ocurrencias de : según las equivalencias :: :8[ ] :9[ ] 9[: ] 8[: ] y las leyes de De Morgan :( _ ) :( ^ ) : ^: : _: nuestro ejemplo queda entonces en la forma 8X; Y (s(X; Y ) _ 9Z [p(Z; X) ^ :p(Z; Y )]) ^ (:s(X; Y ) _ 8Z [:p(Z; X) _ p(Z; Y )]) Paso 4: Se distribuyen las ocurrencias disyuntivas según _ ( ^ ') _ 8X[ ] _ 9X[ ] ( ^ ) _ ( ^ ') 8X[ _ ] 9X[ _ ] de manera que 8X; Y ] 9Z [(s(X; Y ) _ p(Z; X)) ^ (s(X; Y ) _ :p(Z; Y ))] ^8Z [:s(X; Y ) _ :p(Z; X) _ p(Z; Y )] Paso 5: Se distribuye las ocurrencias de cuanti…cadores universales 8X[ ^ 8X[ ] ^ 8X[ ], 8X; Y 9Z [(s(X; Y ) _ p(Z; X)) ^ (s(X; Y ) _ :p(Z; Y ))] ^8X; Y; Z [:s(X; Y ) _ :p(Z; X) _ p(Z; Y )] 16 Paso 6: Se eliminan los cuanti…cadores existenciales. Para ello se debe ampliar el lenguaje introduciendo nuevas funciones, cuyos argumentos son las variables cuanti…cadas universalmente, en el lugar de las variables cuanti…cadas por existenciales, para especi…car con ello los términos constantes que satisfacen y hacen cierta esa expresión existencial. Como no es igual a…rmar que existe algún elemento con cierta propiedad que precisar cuál de ellos la cumple, esta operación, llamada skolemización, no se da sin costos. En efecto, la satisfacción se preserva, es decir, la sentencia original 0 es satisfactible si y sólo si la sentencia en forma de cláusulas f lo es, pero no son equivalentes, esto es ( f ! 0 ) ^ :( f 0 ); reduciéndose así el poder expresivo de la sentencia: Cuando el cuanti…cador existencial no va precedido de cuanti…cadores universales la función de Skolem sk introduce términos constantes en la sentencia original. En nuestro ejemplo, 8X; Y [(s(X; Y ) _ p(sk(X; Y ); X)) ^ (s(X; Y ) _ :p(sk(X; Y ); Y ))] ^8X; Y; Z [:s(X; Y ) _ :p(Z; X) _ p(Z; Y )] Paso 7: Se prescinde de los cuanti…cadores universales suponiéndoles tácitamente. La forma que se consigue es una conjunción de disyunciones del tipo ( ^ 11 _ ::: _ ^ 1k ) ^ : : : ^ ( ^ n1 _ ::: _ ^ nkn ) 1 donde los ^ ij ; llamados literales, pueden ser fórmulas atómicas positivas (a…rmadas) o negativas (negadas). Finalmente se reescribe la sentencia considerando cada grupo disyuntivo aparte, referida en adelante como cláusula, y asumiendo las conjunciones implícitas en la lista, 1 : s(X; Y ) _ p(sk(X; Y ); X) 2 : s(X; Y ) _ :p(sk(X; Y ); Y ) 3 : :s(X; Y ) _ :p(Z; X) _ p(Z; Y ) De esta manera, se ha reducido la expresión original de relación de subconjunto al anterior conjunto de cláusulas. En virtud de las equivalencias lógicas _: y : _: :( ^ ) las cláusulas, cuya expresión general es escribir en su forma equivalente 1 _ ::: _ k 1 _ ::: _ k+1 k ^ ::: ^ _: k+1 _: n se pueden n lo que haremos en lo sucesivo. De esta manera, una disyunción de literales positivos forman el consecuente y una conjunción de literales negativos forman el antecedente de una expresión condicional. 17 El siguiente conjunto de de…niciones constituye el cuerpo teórico de la programación lógica. 1) Una cláusula de…nida (o cláusula de Horn) es una cláusula donde a lo sumo un literal es positivo. Esta, a su vez, puede ser de alguno de los siguientes tipos: Una regla, donde al menos un literal es positivo y al menos un literal es negativo (n > 1 y m n + 1) 1 a 1 _ ::: _ se le llama cabeza y a n 2 n+1 ^ ::: ^ n ^ ::: ^ m cuerpo de la cláusula. Un hecho; un literal positivo y ningún literal negativo, denotado simplemente 1 . 2) Una meta es una cláusula sin literal positivo : su denotación equivalente 1 ^ ::: ^ n n+1 _ ::: _ : m, y se usa 3) Una cláusula vacía no tiene literal y por de…nición no satisface ninguna interpretación, es siempre falsa. Se denota con el símbolo : 4) Una sentencia expresada como una conjunción de cláusulas de Horn se llama programa lógico. En el ejemplo del algoritmo de reducción anterior el programa lógico de la setencia original se escribe como: 1 : s(X; Y ) _ p(sk(X; Y ); X) 2 : s(X; Y ) p(sk(X; Y ); Y ) 3 : p(Z; Y ) s(X; Y ) ^ p(Z; X) 5) Un programa lógico en cláusula de…nida es un programa lógico donde todas sus cláusulas son cláusulas de…nidas (reglas y hechos). El caso del programa lógico en el ejemplo del punto (4) no está en cláusula de…nida porque la primera cláusula tiene dos literales positivos. Un programa lógico hereda la semántica del cálculo de predicados. Sin embargo, a los efectos de la manipulación automática de símbolos para simular problemas concretos, es decir, de su computación efectiva, la referencia permanente de la lógica de primer orden a un universo de objetos (dominio) es irrelevante, y esto es así, porque la interpretación particular que representa el programa lógico es explicitada por él mismo; de lo contrario sería pretender que el computador, divagando en un vasto conjunto de interpretaciones posibles sin signi…cado alguno para él, adivinara el sentido que el programador persigue. Las de…niciones siguientes evitan este problema concretando la noción de programa lógico a la manipulación de objetos sintácticos, es decir, los símbolos del lenguaje, de tal manera que los términos de éste se interpretan a sí mismos. 1) El conjunto de términos constantes de un lenguaje L de cálculo de predicados es el universo de Herbrand de L . 18 2) Una interpretación de Herbrand H = hD,F,Pi de un lenguaje L es una interpretación cuyo dominio D es un universo de Herbrand. 3) Una interpretación H de un programa lógico es un modelo de Herbrand de si H B : Un resultado teórico importante de la semántica de los programas lógicos expresa que para un programa lógico y una sentencia conjuntiva = 1 ^ ::: ^ n se da; j= si y sólo si H B para todo modelo H de : 2.3.2 SLD-refutación Si tenemos un programa lógico y podemos seleccionar en él dos cláusulas bajo la condición de poseer al menos un literal en complementaridad, es decir, un mismo literal positivo en una y negativo en la otra, entonces necesariamente, en una de las cláusulas el literal es la cabeza y en la otra forma parte del cuerpo. La regla de inferencia resolución deriva una nueva cláusula (resolvente) a partir de las anteriores (padres), excluyendo el par de literales complementarios, i ^ ::: ^ ^ 1 i^ 1 ^ ::: ^ 1 '1 ^ : : : ^ i '1 ^ : : : ^ i 1 ^ n ^ : : : ^ 'm n ^ i+1 ^ : : : ^ 'm i+1 La notación para la relación de derivabilidad, que es una regla de inferencia, es en nuestro caso, ` ('1 ^ : : : ^ i 1 ^ 1 ^ ::: ^ n ^ i+1 ^ : : : ^ 'm ) Una condición previa necesaria para la aplicación de la regla es que los padres sean instanciados de tal manera que los literales de la complementaridad sean identicos. Para tal efecto se requiere de una sustitución lo más genérica posible que permita intercambiar contenidos entre los padres. Ilustremos esto con un insensato ejemplo de programa lógico sobre el poeta alejandrino Kava…s, su poema "Ítaca", la musa de la poesía lírica Erato y el autor, 1 2 3 4 5 3 4 5 6 : : : : : : : : : poesia(X; Y ) inspiracion(X; Y ) ^ of icio(X) ^ talento(X) inspiracion(X; Y ) musa(erato; X) ^ idea(Y ) of icio(X) practica(X) musa(erato; luis) musa(erato; kavaf is) idea(itaca) practica(luis) practica(tagore) talento(kavaf is) Como caso de sustitución, fX kavaf is; Y 19 itacag uni…ca los padres para Figure 2.3: Refutación de una meta constante construir el resolvente poesia(kavaf is; Y ) inspiracion(kavaf is; Y ) ^ of icio(kavaf is) ^ talento(kavaf is) inspiracion(X; itaca) musa(erato; X) ^ idea(itaca) poesia(kavaf is; itaca) musa(erato; kavaf is) ^ idea(itaca) ^ of icio(kavaf is) ^ talento(kavaf is) Formalmente, una sustitución es un uni…cador para dos fórmulas atómicas y si ( ) = ( ), y es un uni…cador general, el más amplio posible, si todo otro uni…cador de y es una instancia parcial de ( ) = ( ): Usando resolución varias veces y tomando el resolvente de la operación anterior junto con alguna de las cláusulas de se puede derivar …nalmente la cláusula poesia(kavaf is; itaca) que no pertenece como tal a : Procedimiento que se expresa por ` poesia(kavaf is; itaca): Si consideramos ahora la conjunción ^:poesia(kavaf is; itaca) tendremos al aplicar reiteradamente resolución que ^ :poesia(kavaf is; itaca) ` : porque :poesia(kavaf is; itaca) es una cláusula meta que junto al programa produce una contradicción …nal expresada por (v. …gura 3.1): 20 Figure 2.4: Refutación de una meta con variables Esto quiere decir que la conjunción considerada es inconsistente (contiene contradicción) y el procedimiento es una demostración por contradicción al suponer que :poesia(kavaf is; itaca) es cierta. Este tipo de demostración, que se llama refutación, nos dice que el sentido de los programas lógicos es refutar metas planteadas como preguntas al programa. Los procedimientos de refutar usando resolución tienen una representación en estructura de árboles. Si no se cuenta con un criterio de selección de literales en la aplicación de resolución, el lenguaje de los árboles de refutación es ambiguo, como dejan ver las …guras 3.2 y 3.3. Algunas observaciones sobre la lectura de estos árboles son necesarias. Observaciones: 1) Las raíces de los árboles de refutación son las metas propuestas como preguntas a los programas lógicos, y todos los nodos son metas intermediarias, de manera que las ramas que concluyen una meta con éxito de…nen secuencias de metas cuyos primeros elementos son las metas preguntas y concluyen en : 2) La …gura 3.2 muestra el procedimiento para la meta poesia(X; Y ). La refutación tiene éxito, como en el caso de la …gura 3.1, pero además los uni…cadores instancian las variables ofreciendo una sustitución que es una solución concreta a la pregunta, X = kavaf is y Y = itaca. 3) En la …gura 3.1 el criterio de seleción de literales para aplicar resolución 21 Figure 2.5: Selección de literales de izquierda a derecha es de izquierda a derecha en el cuerpo de la resolvente. En el árbol 3.2 es de derecha a izquierda. La …gura 3.3 muestra la refutación de izquierda a derecha de la misma meta que la …gura 3.2. 4) La …gura 3.3 explicita los dos intentos posibles de refutación para la meta poesia(X; Y ): Uno de ellos con éxito, y el otro falla porque no puede aplicar resolución a la meta talento(luis): El símbolo cuadrado negro denota la falla. Un sistema automatizado de refutación debe operar con criterios de…nidos para optimizar su desempeño y garantizar la efectividad. La restricción estratégica de resolución que ejecuta metas con programas lógicos en cláusulas de…nidas se llama SLD-refutación, donde: 1) S especi…ca la función de selección de literales en la meta candidato a aplicar resolución, la más frecuente es la selección de izquierda a derecha como en la …gura 3.3. 2) L de lineal, indica que cada paso de resolución usa como uno de los padres el resolvente de la resolución anterior, y el otro una clausula del programa lógico que uni…ca con el primero, 3) D porque todas las cláusulas del programa deben ser cláusulas de…nidas. 4) SLD-refutación resuelve cada rama del árbol de refutación hasta su consecuencia …nal y luego regresa al último nodo de bifurcación posible para pros- 22 eguir con otra rama. Esta estrategia de busqueda de soluciones se llama en profundidad. Si es un programa lógico, una cláusula meta y 1 ; : : : ; n una secuencia de susticiones en la SLD-refutación de desde , entonces el conjunto de las X tales que X ocurre en y X 2 1 ; : : : ; n es una sustitución de solución de desde : El siguiente resultado, solamente enunciado acá, muestra que SLD-refutación es un sistema de inferencia lógica adecuado a la semántica de los programas lógicos. Sea un programa lógico y 1 ^ ::: ^ n una cláusula meta: (Corrección) Si existe una SLD-refutación de desde con sustitución de solución ; es decir `SLD ( 1 ) ^ ::: ^ ( n ) entonces j= ( 1) ^ ::: ^ ( (Completitud) Si existe una sustitución j= 1( 1) ^ ::: ^ 1 n) tal que 1( n) entonces, también existe una sustitución 2 y una SLD-refutación de con sustitución respuesta 3 tal que 1 ( i ) = 2 3 ( i ) para todo lo cual `SLD 1 ( 1 ) ^ ::: ^ 1 ( n ) 2.3.3 desde i ; con Negación por falla SLD-refutación, en el programa lógico del ejemplo de la sección anterior, falla en aplicar resolución a la submeta poesia(luis; itaca) como se ve claramente en el árbol de la …gura 3.3. Sin embargo, tampoco puede refutar :poesia(luis; itaca) porque no está diseñado para ello. En lenguaje coloquial puede decirse que el programa no "sabe" nada acerca de poesia(luis; itaca). Pero los programas lógicos aplicados a la representación de situaciones reales deben poder manejar de manera útil y precisa las negaciones de los hechos tanto como sus a…rmaciones. Para paliar esta carencia SLD-refutación puede ampliarse con una estrategia de expresión de negaciones de hechos en lo que se conoce como negación por falla. SLDN F -refutación es el nombre de este método deductivo ampliado. La primera consideración, de caracter semántico, que se debe tener en cuenta para ampliar SLD-refutación concierne al universo de Herbrand del programa lógico . La suposición de un mundo cerrado consiste en asumir que determina todo el conocimiento sobre las relaciones mencionadas en su lenguaje. Así, un termino constante será cierto si j= , de lo contrario se toma por falso. Denotaremos por a bajo la suposición de un mundo cerrado. Luego, para todo ; término constante en el universo de Herbrand de ; = [ f: : si no se tiene que 23 j= g Ahora bien, la regla de negación por falla, entendida como una extensión operativa de la suposición de un mundo cerrado, permite inferir la negación de una fórmula atómica si no existe una SLD-refutación de ; es decir, si no es una consecuencia lógica del programa en los términos del cálculo de predicados. La suposición de un mundo cerrado justi…ca, entonces, la derivación de conclusiones negativas. Es capital para entender este método diferenciar entre la negación que representa el conector lógico ":" asociado a una fórmula y la negación por falla de una fórmula. Esta última es una negación metalingüística, que denotaremos por no( ), y expresa la imposibilidad del programa lógico de refutar la fórmula negada como submeta, esto es, que todas las ramas de su propio árbol de refutación terminan en falla (cuadrados negros en la representación grá…ca). Está licencia amplía el poder expresivo de las cláusulas de…nidas y admite, algo que es de delicada importancia, cláusulas en el programa cuyos cuerpos incluyen fórmulas negadas. Para ello, es necesario ampliar todo el despliegue teórico hasta ahora descrito: Primero, rede…nir los términos de la forma normal de cláusulas, ahora forma general de cláusulas, de tal manera que se permita la negación por falla de fórmulas incluyendo el meta-predicado no(fórmula): La diferencia consiste en permitir que los cuerpos de las cláusulas acepten fórmulas negadas por falla, tanto las de…nidas como las metas y submetas, en la pregunta original o en el proceso de refutación. La literatura asigna el adjetivo general a las rede…niciones anteriores, así como a la de programa lógico. Segundo, rede…nir el método de inferencia resolución, de tal manera que pueda lidiar con fórmulas padre negativas, amplitud que tiene consecuencias semánticas de sumo cuidado, como veremos adelante. Cuando, en una refutación madre, el dispositivo de inferencia selecciona una fórmula negada, no busca la uni…cación del resolvente anterior con alguna cláusula del programa lógico, sino que abre inmediatamente una refutación aparte de la fórmula positiva que está siendo negada, y sólo entonces se aplica resolución. Si esta refutación falla, la fórmula negada en la refutación madre tiene éxito y continua el proceso con la siguiente fórmula según la función de selección, pero si no es el caso, es la refutación madre que falla. Tercero, para asegurar la buena adecuación entre semántica y sintaxis, se deben imponer algunas restricciones al programa lógico. Si se clasi…can los predicados del lenguaje en niveles identi…cados con números naturales, según el número de argumentos por ejemplo, se exigen tres condiciones: 1) ninguna meta negada del proceso de SLDN F -refutación puede tener variables; de lo contrario, se puede encontrar alguna instancia que satisfaga la meta perdiendo sentido su negación, 2) para toda cláusula general de…nida el nivel de la cabeza es mayor o igual que todos los niveles de las fórmulas no negadas del cuerpo, y 3) para toda cláusula general de…nida el nivel de la cabeza es mayor que los niveles de las fórmulas negadas del cuerpo. Veamos cómo funciona la negación por falla en un ejemplo elemental. Un 24 Figure 2.6: Ejemplo de nagación por falla programa que de…ne la diferencia de dos términos puede ser 1 : dif erente(X; Y ) no(igual(X; Y )) 2 : igual(X; X) X=X La …gura 3.4 muestra la SLDN F -refutación de la meta 2.3.4 dif erente(1; 2): PROLOG PROLOG es un lenguaje de programación lógica, creado por el matemáticolingüista francés Alain Colmerauer en los años ’70, que permite la simulación lógica de problemas basada en la descripción explícita de reglas y principios en términos lógicos como estructuras simbólicas que manipula el programa. En ese sentido es declarativo, porque describe las relaciones formales entre los objetos lógicos de un problema especí…co y veri…ca la validez de las soluciones deseadas. Pero también puede entendérsele como un lenguaje prescriptivo porque tiene la capacidad de dar cuenta de los pasos seguidos por el computador en la búsqueda de soluciones in…riendo nuevos hechos desde la semántica del problema explicitada en la redacción del programa. Un programa escrito en PROLOG consiste en un secuencia de cláusulas, donde cada una de ellas es un hecho sobre una información concreta o es una regla de cómo la solución puede ser inferida de los hechos. PROLOG existe en una variedad de implementaciones. Nosotros hemos usado el software SWI-Prolog (Version 5.0.10) copyright de la Universidad de Amsterdam, de uso libre, que se puede descargar desde la dirección URL; http://www.swi-prolog.org. 25 Figure 2.7: Ejemplo de árbol A continuación, presentamos los rudimentos esenciales para entender los programas en PROLOG que mostraremos a lo largo del texto. En PROLOG sólo las variables se escriben en mayúscula, y tanto los predicados como los argumentos instanciados, en minúsculas. Los símbolos y ^ de las reglas se escriben ":-" y "," respectivamente. Las cláusulas terminan con un punto. Todos los predicados del mismo nombre deben ir juntos y forman una de…nición de predicado. Primero se escriben las reglas y luego los hechos porque SLDN F -resolución selecciona las cláuslas en el orden del texto. Una herramienta de mucho poder expresivo en PROLOG es la de…nición recursiva que permite describir y manejar estructuras cuyos componentes son estructuras. Los objetos estructurados de PROLOG son las listas, que son secuencias ordenadas de términos (constantes, variables, funciones) que pueden incluir, por supuesto, otras listas. La forma de representación de listas es [cabezajCola] donde "cabeza" es el primer elemento de la lista y "Cola" es una variable que representa el resto. Así, por ejemplo, un árbol como el de la …gura 3.5, que se escribe como una lista anidada, puede representarse por (a,[(b,[]),(c,[(d,[]),(e,[])])]), donde [] es la lista vacía. El siguiente ejemplo de programa PROLOG reconoce estructuras de árbol: % 1: 2: 3: 4: programa lector de árboles padre((_,[])). padre((_,[(Nodo,X)jCola)])):hermanos([]). hermanos([(Nodo,X)jCola]):- hermanos([(Nodo,X)jCola]). padre((Nodo,X)), hermanos(Cola). El predicado padre de…ne cada subárbol como el par (nodo,[lista de sucesores]) y el predicado hermanos opera sobre la lista de los sucesores como un secuencia ordenada de subárboles, por ello aparece de nuevo el predicado padre en el cuerpo de la cláusula 4. En la misma cláusula, el llamado recursivo hermanos(Cola) continúa el proceso con los elementos restantes de la lista, donde la variable Cola va reduciendo la lista un elemento en cada llamado a la cláusula. 26 La cláusula 3 es la condición de parada de la de…nición hermanos y detiene el proceso cuando la lista Cola se vacía, y la cláusula 1 identi…ca las hojas del árbol. El símbolo "_" es una variable genérica que no vuelve a ser mencionada en la cláusula y por ello no se nombra, y el símbolo "%" especi…ca que lo que le sigue no es parte del programa sino un comentario sobre él. Usaremos con frecuencia los predicados incorporados en el sofware (no hay necesidad de de…nirlos) member(X,L) y append(L1,L2,L3); el primero es cierto cuando el elemento X pertenece a la lista L, y el segundo cuando las sublistas L1 y L2 forman la lista L3. Este último sirve para construir una sóla lista con otras dos en el orden de los argumentos, o para dividir una lista dada en uno de sus elementos, como por ejemplo append(X,[cjY],[a,b,c,d,e]) produce X=[a,b] y Y=[d,e]. 2.4 Representación de procesos en Inteligencia Arti…cial El cálculo de situaciones y el cálculo eventos son formalismos que se han implementado en la inteligencia arti…cial para representar los efectos de las acciones en situaciones representadas formalmente en un lenguaje lógico. El cálculo de situaciones elabora representaciones estáticas del dominio que modela en términos de propiedades en función de las acciones que las pueden cambiar. Presenta tres di…cultades signi…cativas que no han terminado de resolverse de manera natural; el manejo de acciones cuyo orden de ocurrencia es desconocido, la posibilidad de acciones concurrentes, y la formalización de cambios continuos. Por su parte el cálculo de eventos se presenta como más pertinente para lidiar con circunstancias dinámicas de relativa complejidad por ser una formalización basada en una estructura temporal externa y un concepto explícito de cambio de…nido en el sistema de forma independiente a la observación de propiedades. Finalmente, es importante mencionar que ambos cálculos han sido formalizados también en términos de la programación lógica, lo cual refuerza nuestra elección metodológica. Hemos tomado como referencia fundamental [Shanahan 1997] y consultado [Kakas & Miller 1997] y [Galton 1995]. 2.4.1 Cálculo de Situaciones El cálculo de situaciones fue introducido originalmente por [McCarthy & Hayes 1969] como uno de los primeros formalismos de la inteligencia arti…cial en la representación de procesos de cambio. El lenguaje del cálculo de situaciones incluye (i) situaciones, representadas por variable S; S1 ; S2 :::. , y la situación inicial designada por s0 , (ii) propiedades, representadas por la variable P; P1 ; P2 ; :::, (iii) acciones, representadas por la variable A; A1 ; A2 ; :::, (iv) una función "resulta(accion;situación) = situación", que representa la situación resultante del efecto de una acción sobre el sistema, 27 (v) un predicado obs(propiedad;situación) que representa la observación de una propiedad en una situación dada, y (vi) un predicado af ecta(accion;propiedad;situacion) que dice cuando la acción afecta a la propiedad en una situación. Una de las formas de de…nir un programa lógico de cálculo de situaciones es la siguiente conjunción de cláusulas generales: (i) Un conjunto de observaciones iniciales de la forma obs(P; s0 ) (ii) Un conjunto de axiomas de efecto de la forma obs(P; resulta(A; S)) donde ; el cuerpo de la cláusula, no menciona los predicados af ecta y toda ocurrencia del predicado obs es de la forma obs(Pn ; S): Hay un axioma de efecto para cada par (acción, propiedad) posible. (iii) Un axioma de contexto obs(P; resulta(A; S)) obs(P; S) ^ no(af ecta(A; P; S)) que preserva la condición de una propiedad que no se ve afectada por una acción dada. (iii) Un conjunto de aserciones de cambio af ecta(A; P; S) una por cada axioma de efecto, y donde los cuerpos son los mismos de estos últimos, respectivamente. El axioma de contexto en la de…nición anterior recurre a la implementación en programación lógica de SLDN F -refutación, y por ende, del método de negación por falla. Esta es una de las formas de solventar un problema clásico de la inteligencia arti…cial conocido como problema del contexto en el estudio del razonamiento por defecto; "cómo formalizar el proceso de extraer conclusiones razonables en la ausencia de información de lo contrario, pero que no es derivable de hechos conocidos" [Shanahan 1997]. Es, en esencia la formalización del sentido común sobre la persistencia de las cosas en ausencia de información completa del efecto de las acciones sobre ellas, confundiendo deliberadamente lo desconocido con lo negado, en el caso de la negación por falla. El programa PROLOG del anexo 1 de esta sección es un ejemplo del cálculo de situaciones que representa la circulación de un objeto entre cuatro personas; Alicia, Teresa, Josefa y Alesa. Las propiedades son la posesión del objeto con(X,objeto) o la carencia del objeto sin(X,objeto), y las acciones son interviene, cuando una tercera persona Y actúa para quitarle el objeto a Z y dárselo a X, arrebata cuando X le quita el objeto directamente a Y, y entrega si X lo da por voluntad propia a Y. Este sencillo programa puede simular tanto un juego si el objeto es una pelota, una situación de con‡icto si el objeto, por ejemplo, es 28 un novio o cualquier otra circunstancia que se adapte a su enunciado. Obsérvese que hemos sustituido la función resulta; que opera recursivamente resulta(accionn ; :::; resulta(accion2 ; resulta(accion1 ; s0 )):::); por una lista de acciones [accionn ; :::; accion; accion1] de manera de permitir al programa almacenar secuencialmente las acciones sucedidas como una historia del proceso. La situación inicial es representada por la lista vacía []. Algunas corridas del programa dan cuenta de sus posibilidades de uso. Se le pregunta al programa quién tiene el objeto (en caso de existir) después de la acción interviene(josefa,alesa,teresa), ?- obs(con(X,objeto),[interviene(josefa,alesa,teresa)]). X = teresa ; No Este No …nal es la respuesta cuando se le pide al programa, con el comando ";", que continue la búsqueda de otras soluciones. Si se le pregunta ahora por quién no lo tiene, las respuestas son; ?- obs(sin(X,objeto),[interviene(josefa,alesa,teresa)]). X = alesa ; X = alicia ; X = josefa ; No Pero si le preguntamos al programa qué acción puede suceder para que alicia tenga el objeto después de que josefa intervino para quitárselo a alesa y dárselo a teresa, las respuestas posibles son; ?- obs(con(alicia,objeto),[A,interviene(josefa,alesa,teresa)]). A = arrebata(alicia, teresa) ; A = interviene(alesa, teresa, alicia) ; A = interviene(josefa, teresa, alicia) ; A = entrega(teresa, alicia) ; No 2.4.2 Cálculo de eventos El cálculo de eventos temporaliza los procesos introduciendo la noción independiente de cambio de propiedades a través de ocurrencias puntuales de acciones, referidas siempre a un momento preciso. Introducido originalmente en [Kowalski & Sergot 1986], ha sido notablemente modi…cado desde entonces. Presentamos la versión simpli…cada manejada en [Kowalski 1992], [Eshgi 1988] y [Shanahan 1989], que tomamos de [Shanahan 1997]. El lenguaje del cálculo de eventos incluye; (i) propiedades, representadas por la variable P; P1 ; P2 ; :::, (ii) acciones, representadas por la variable A; A1 ; A2 ; :::, (iii) tiempos, repesentados por variables T; T1 ; T2 ; :::, (iv) un predicado obs(propiedad;tiempo) que representa la observación de una propiedad en un tiempo dado, 29 (v) un predicado cambio(propiedad;tiempo1,tiempo2) que con…rma un cambio de la propiedad entre los tiempos 1 y 2, (vi) un predicado sucede(acción;tiempo) que representa la ocurrencia de una acción en un tiempo dado, (vii) un predicado inicial(propiedad) que representa una propiedad en el tiempo inicial 0, (viii) un predicado inicia(acción;propiedad;tiempo) que representa el inicio de una propiedad por el efecto de una acción en un tiempo dado, y (ix) un predicado termina(acción;propiedad;tiempo) que representa el …n de una propiedad por el efecto de una acción en un tiempo dado. Una de las formas de de…nir un programa lógico de cálculo de eventos es la siguiente conjunción de cláusulas generales: (i) Un conjunto de observaciones iniciales de la forma inicial(P ) que es, de hecho, equivalente a obs(P; 0): (ii) Un conjunto de cláusulas de sucesos de la forma sucede(A; T ) (iii) Un conjunto de cláusulas causales de la forma inicia(A; P; T ) termina(A; P; T ) donde no contiene los predicados inicial, sucede, inicia, y termina y, además, cada ocurrencia del predicado obs es de la forma obs(Pn ; T ): (iv) Un conjunto de axiomas de persistencia de la forma obs(P; T ) inicial(P ) ^ no(cambia(P; 0; T )) (iv) Un conjunto de axiomas de efecto de la forma obs(P; T2 ) sucede(A; T1 )^inicia(A; P; T1 )^(T1 < T2 )^no(cambia(P; T1 ; T2 )) uno por cada propiedad. (v) Un conjunto de aserciones de cambio de la forma cambia(P; T1 ; T2 ) sucede(A; T ) ^ termina(A; P; T ) ^ (T1 < T ) ^ (T < T2 ) uno por cada propiedad. En el anexo 2 de esta sección convertimos al cálculo de eventos el mismo ejemplo que dimos en el cálculo de situaciones (anexo1). El comando metalingüístico de PROLOG arg(N,A,X), cuyo signi…cado es "extraiga el argumento número N del predicado A y asígnelo a la variable X", nos permite condensar el programa en axiomas genéricos, evitando la repetición de cláusulas similares como era el caso en el ejemplo del anexo 1 para cada par (propiedad,acción). 30 Algunas corridas del programa dan la idea de sus modalidades de uso y de sus limitaciones. ?- obs(con(X,objeto),10). X = alesa ; No ?- obs(con(alesa,objeto),6). Yes ?- obs(con(teresa,objeto),6). No ?- obs(sin(X,objeto),5). X = teresa ; X = josefa ; X = alicia ; No ?- obs(sin(alicia,objeto),X). ERROR: Arguments are not su¢ ciently instantiated Al programa debe preguntársele por un valor de tiempo especí…co. La última corrida falla porque el programa no está en capacidad de aceptar la variable tiempo como pregunta. Esto supone una limitación importante a los efectos del modelo que nos proponemos construir. A continuación proponemos un cálculo híbrido entre el cálculo de situaciones y el cálculo de eventos en el cual la temporalización es intrínseca como en el primero pero conservando la independencia de cambios como en el segundo. 2.4.3 Cálculo narrativo ¿Cómo se concibe la idea misma de cambio en estos modelos? La respuesta depende de la estrategia del modelo en tres aspectos: el primero concierne la relación del modelo con su estructura temporal. En los modelos independientes del tiempo un estado precede a otro si el tiempo que le es asignado, que lo convierte en un hecho lógico, es anterior al tiempo asignado al otro estado en una estructura temporal externa al modelo (usualmente los números reales) como es el caso del cálculo de eventos. Por el contrario, en los modelos dependientes del tiempo la estructura temporal está implícita dentro de la estructura categorial del conjunto de estados a través de una red de relaciones (simultaneidad, causación, sucesión, etc.), como por ejemplo, una estructura de árbol en el conjunto de las posibles situaciones de un proceso (cálculo de situaciones). El segundo aspecto a considerar tiene que ver con otra percepción intuitiva del tiempo que opone la idea de intervalo a la de instante como unidad fundamental. En esta interpretación el tiempo no se concibe como un agregado in…nito de instantes, sino que es potencialmente divisible (por instantes) en intervalos discretos. Esta concepción es más acorde con la idea de estados discretos. El tercer aspecto aborda el estatus de la idea de estado o situación en relación a las de evento y proceso. En el cálculo de situaciones, aquellos presentan una dualidad compatible en cuanto a su interpretación, bien sea como el conjunto de propiedades que se observan por el efecto de una acción, bien sea como un 31 nodo en el árbol que de…ne las opciones de las acciones en la función resulta. La evolución de un proceso se percibe entonces como una secuencia de situaciones representada de manera única por una rama de ese árbol. El modelo no da cuenta de los cambios en sí sino de sus consecuencias. Por su parte, el cálculo de eventos considera los cambios construyendo una noción independiente de los estados, y sólo reconoce aquellos estados (distintos de los estados iniciales, claro está) que pueden ser caracterizados en términos de eventos. Así, por ejemplo, el estado "roto" tiene sentido si se de…ne previamente el suceso "romper" en un tiempo anterior al del estado. En este sentido, un evento se entiende como aquello que produce un cambio de estado en un momento dado. Por lo tanto, la idea de proceso como tal, se concibe de distinta manera en ambos formalismos, implícito en el cálculo de situaciones y explícito en el de eventos. Quizás, un cálculo híbrido entre situaciones y eventos, que sea dependiente del tiempo (proceso implícito), concebido este como sucesión de intervalos propicios, pero basado en narración (independencia de la noción de acción), sea un formalismo pertinente para la simulación lógica de los relatos narrativos, cuyas exigencias lógicas son distintas de aquellas que determinan lo que pudiéramos llamar relatos contingentes, es decir, que simulan situaciones reales no dramatizadas. El lenguaje del cálculo narrativo incluye; (i) propiedades, representadas por las variables P; P1 ; P2 ; :::, (ii) acciones, representadas por las variables A; A1 ; A2 ; :::, (iii) historia, conjunción de acciones en secuencia representada por las variables H; H1 ; H2 :::, (iv) un predicado obs(propiedad;historia) que representa la observación de una propiedad como consecuencia de una sucesión de acciones, de una historia, (v) un predicado cambio(propiedad;historia) que con…rma un cambio de la propiedad durante la historia, (vi) un predicado sucede(acción;historia) que representa la ocurrencia de una acción como parte de una historia, (vii) un predicado inicial(propiedad) que representa una propiedad en la observación inicial, (viii) un predicado inicia(acción;propiedad;historia) que representa el inicio de una propiedad durante una historia, (ix) un predicado termina(acción;propiedad;historia) que representa el …n de una propiedad durante una historia, (x) una función "antes(acción;historia) = historia", que representa la operación de extraer la subhistoria anterior a la última ocurrencia de la acción (inclusive), (xi) una función "despues(acción, historia) = historia", que representa la operación de extraer la subhistoria posterior a la última ocurrencia de la acción. Una forma de de…nir un programa lógico para el cálculo híbrido es la siguiente conjunción de cláusulas generales: (i) Un conjunto de observaciones iniciales de la forma inicial(P ) son equivalentes a obs(P; 0): 32 (ii) Un conjunto de cláusulas de sucesos de la forma sucede(A; H) (iii) Un conjunto de cláusulas causales de la forma inicia(A; P; H) termina(A; P; H) donde no contiene los predicados inicial, sucede, inicia, y termina y, además, cada ocurrencia del predicado obs es de la forma obs(Pn ; H): (iv) Un conjunto de axiomas de persistencia de la forma obs(P; H) inicial(P ) ^ no(cambia(P; H)) (v) Un conjunto de axiomas de efecto de la forma obs(P; H) sucede(A; H)^inicia(A; P; antes(A; H))^no(cambia(P; despues(A; H)) uno por cada propiedad. (vi) Un conjunto de aserciones de cambio de la forma cambia(P; H) sucede(A; H) ^ termina(A; P; H) Hemos construido un ejemplo (anexo 3) un tanto más complejo que los anteriores (anexos 1 y 2). El modelo es un juego que representa una circunstancia de dimes y diretes. Tenemos 6 actores melodramáticos (madrastra_maluca, abuelo_puto, reinaldito, orfelinda, mesopotamio y carmen_adicta) y 4 propiedades que se pueden dar; sabe(X,verdad), ignora(X,verdad), cree(X,rumor) y duda(X,rumor), a partir de la situación incial inicial(sabe(madrastra_maluca,verdad)). inicial(cree(abuelo_puto,rumor)). inicial(ignora(reinaldito,verdad)). inicial(ignora(orfelinda,verdad)). inicial(duda(mesopotamio,rumor)). inicial(duda(carmen_adicta,rumor)). Además, tenemos una lista de 12 acciones que inician y terminan propiedades según ciertas condiciones como se especi…ca en el siguiente cuadro. 33 Acción comunica(X,Y) averigua(X,Y) desdice(X,Y) intriga(X,Y) con…rma(X,Y) aclara(X,Y) convence(X,Y) confunde(X,Y) ilusiona(X,Y) indaga(X,Y) especula(X,Y) sospecha(X,Y) inicia sabe(Y,v) sabe(X,v) duda(Y,r) cree(Y,r) sabe(Y,v) sabe(X,v) sabe(Y,v) cree(Y,r) cree(Y,r) cree(X,r) duda((Y,r) duda(X,r) cond_inicial sabe(X,v),igno(Y,v) igno(X,v),sabe(Y,v) duda(X,r),cree(Y,r) cree(X,r),duda(Y,r) sabe(X,v),cree(Y,r) cree(X,r),sabe(Y,v) sabe(X,v),duda(Y,r) duda(X,r),sabe(Y,v) cree(X,r),igno(Y,v) igno(X,v),cree(Y,r) duda(X,r),igno(Y,v) igno(X,v),duda(Y,r) termina igno(Y,v) igno(X,v) cree(Y,r) duda(Y,r) cree(Y,r) cree(X,r) duda(Y,r) sabe(Y,v) igno(Y,v) igno(X,v) igno(Y,v) igno(X,v) cond_term sabe(X,v) sabe(Y,v) duda(X,r) cree(X,r) sabe(X,v) sabe(Y,v) sabe(X,v) duda(X,r) cree(X,r) cree(Y,r) duda(X,r) duda(Y,r) En el centro de la dinámica, dos objetos, verdad y rumor. El primero, como la certeza de un hecho, y el segundo, como su sospecha, deben ser entendidos como objetos distintos y de alguna manera opuestos (en este contexto). A diferencia de los programas anteriores, los objetos son cognitivos y pueden compartirse; por ejemplo, el actor que comunica la verdad no deja de saberla, o el que intriga no deja de creer en el rumor, como se ve en las siguientes corridas del programa ?- obs(sabe(madrastra_maluca,verdad), [comunica(madrastra_maluca,orfelinda)]). Yes ?- obs(cree(abuelo_puto,rumor), [intriga(abuelo_puto,reinaldito)]). Yes La …gura 4.1 presenta un grá…co sobre la dinámica de este ejemplo. La lectura del cuadro se hace según las indicaciones de la tabla anterior. Así, por ejemplo, la propiedad de W de saber la verdad (sabe(W,verdad)) se puede iniciar de dos maneras: Si X toma la iniciativa de comunicar a W la verdad (comunica(X,W)) dadas las condiciones iniciales; sabe(X,verdad) e ignora(W,verdad), o si W toma la iniciativa de averiguar la verdad (averigua(W,X)) dadas las mismas condiciones anteriores. Obsérvese que la dirección de las ‡echas sugiere ya una intencionalidad de la acción. Pero el verdadero interés del programa es su capacidad para generar o completar historias, entendidas acá por secuencias coherentemente lógicas de acciones. El orden en la lista es invertido de modo que la primera acción de la lista es la última en haber sucedido: ?‘Quién duda del rumor después de que el abuelo haya ilusionado a Reinaldito, éste haya intrigado a Mesopotamio y la madrastra haya confundido a Carmen? ?- obs(duda(X,rumor), [confunde(carmen_adicta,madrastra_maluca), intriga(reinaldito,mesopotamio), ilusiona(abuelo_puto,reinaldito)]). X = mesopotamio ; X = carmen_adicta ; No 34 Figure 2.8: Esquema de propiedades y acciones 35 ?‘Y quién lo cree después de todo aquello? ?- obs(cree(X,rumor), [confunde(carmen_adicta,madrastra_maluca), intriga(reinaldito,mesopotamio), ilusiona(abuelo_puto,reinaldito)]). X = abuelo_puto ; X = madrastra_maluca ; No ?‘Qué par de cosas pueden haber sucedido para que orfelinda se entere de la verdad? El programa produce varias respuestas, ?- obs(sabe(orfelinda,verdad),[B,A]). B = comunica(reinaldito, orfelinda) A = comunica(madrastra_maluca, reinaldito) ; B = comunica(reinaldito, orfelinda) A = averigua(reinaldito, madrastra_maluca) ; B = comunica(abuelo_puto, orfelinda) A = con…rma(madrastra_maluca, abuelo_puto) ; B = comunica(abuelo_puto, orfelinda) A = aclara(abuelo_puto, madrastra_maluca) ; B = comunica(mesopotamio, orfelinda) A = convence(madrastra_maluca, mesopotamio) ; B = comunica(carmen_adicta, orfelinda) A = convence(madrastra_maluca, carmen_adicta) También se pueden hacer varias preguntas al mismo tiempo. ¿Quién le ha dicho la verdad a Reinaldito, y quién duda con la especulación de Mesopotamio? ?- obs(sabe(reinaldito,verdad), [comunica(X,reinaldito)]), obs(duda(Y,rumor), [especula(mesopotamio,Y)]). X = madrastra_maluca Y = mesopotamio ; X = madrastra_maluca Y = carmen_adicta ; X = madrastra_maluca Y = orfelinda ; No Este tipo de modelo anuncia el tratamiento semiótico de la narratividad que nos ocupará en la segunda parte. 36 Chapter 3 Elementos de semiótica narrativa 3.1 Estrategia de aproximación al relato narrativo Si pensamos en el relato como el hecho real, lo que sucede en un tiempo real, su construcción dramática es, entonces, la forma especi…ca en que ha de contarse. La analítica literaria señala números limitados de estructuras comunes a una variedad universal de relatos, que luego se convierten en reglas de construcción en manuales. Esta intención normativa prescribe construcciones dramáticas particulares, pero todas ellas siempre condicionadas por tres factores: la forma expresiva, los hechos narrados y el efecto psicológico que se persigue. Por razones de comodidad discursiva, en lo sucesivo nos referimos al relato entendiendo su construcción dramática, y usaremos como ejemplo de referencia la guionística cinematográ…ca convencional. El relato cinematográ…co se articula en secuencias, que se delimitan por las exigencias narrativas, y se determinan por un lugar y un tiempo real. La de…nición del lugar en una secuencia (tipo, clase, connotación, ubicación y relación entre personajes) es una referencia constante en el relato cinematográ…co, y proyecta un contenido especí…co o atmósfera. Hay dos dimensiones temporales, una propia al relato como discurso ineluctable, que es su ritmo (tiempo total del relato y tiempos relativos de las escenas) y otra propia al contenido de la narración (evocación del pasado o del futuro, tiempo tácito e inde…nido entre una escena y otra, tiempos simultáneos de escenas). El tratamiento de la información que trasmite el relato cinematográ…co obedece a una economía de recursos, obligando a establecer severos criterios de selección manteniendo la coherencia lógica de la narración. Una estrategia de emisión de información a lo largo del relato (suposición, anticipación, revelación o falsi…cación), es necesaria para producir efectos psicológicos esperados. La información que de…ne la car- 37 acterización dramática de los personajes (carácter, edad, posición, relaciones, etc.) se mani…esta a lo largo del relato en …guras de oposición o contraste, como veremos adelante. El relato se construye en función de la acción, y ésta en función del tiempo. El pasado, el presente y el futuro existen en todo momento de una secuencia. El conocimiento del futuro debe preceder al hecho para hacerlo inteligible. Por ello, el pasado sólo tiene valor como motivación para intenciones futuras. El futuro es entonces el tiempo del relato. Los aspectos de la acción en el relato son, en este sentido, una motivación, una intención y un objetivo. Los motivos son esencialmente deseos de a…nidad o de repulsión. A…nidad cuando se quiere un objeto que no se tiene y repulsión cuando no se quiere un objeto que se tiene, objeto entendido en sentido laxo. Todo aquello que genera futuro es una intención que existe por un motivo y desaparece cuando se cumple un objetivo, que elimina el motivo, o cuando es frustrado por otro. De las intenciones opuestas surge el con‡icto. La aparición de un motivo que genera una intención supone la alteración de un estado que permanecía hasta entonces inalterado. La alteración aparece por el contraste de las caracterizaciones y por la presencia simultánea de fuerzas de a…nidad y de repulsión. La lucha es, pues, el núcleo de la narración dramática en tanto que deseo de eliminar el motivo de una alteración. Es el resultado de la intención confrontada a di…cultades para alcanzar el objetivo. Toda di…cultad toma la forma o bien de un obstáculo (de naturaleza circunstancial), de una complicación (de naturaleza accidental) o de una contra-intención (intención dirigida hacia el mismo objetivo que exige la frustración de la otra). El ajuste tiene lugar cuando se logra el objetivo y la alteración original deja de existir. Tanto la intención principal del relato como su contra-intención pueden tener sub-intenciones que apoyan sus causas respectivas y se rigen por las mismas reglas. Esta descripción somera de las normas usuales de elaboración de guiones cinematográ…cos, extraidas de [Vale 1996], nos servirá como forma ejemplar para comprender la aplicación de la teoría general de la semiótica del relato, desarrollada, como lo hemos dicho por la Escuela de París, bajo la sombra fértil de Algirdas Julian Greimas. En la presentación de la teoría hemos seguido básicamente [Courtes 1991] y [Everaert-Desmedt 2000] con obligadas consultas a [Greimas & Courtes 1993] y [Chabrol 1978], sin olvidar por supuesto la reedición del texto princeps de la teoría [Greimas 1986]. 3.2 Análisis de relatos En este contexto, como en el anterior, un relato se de…ne como la representación de un evento, en la forma de una transformación descrita desde un estado inicial hasta otro …nal. La estructura general del relato se inscribe sobre un eje semántico s ! :s que opone términos contrarios. Relación que constituye la estructura elemental de la signi…cación. Para que el relato consuma el eje semántico debe desarrollarse una sucesión temporal de acciones. Las articulaciones s y :s corresponden respectivamente a las situaciones inicial y …nal, y el 38 paso de una a la otra se produce por el efecto de una transformación t. El relato se organiza en función del …nal (como el futuro en la descripción cinematográ…ca), que determina la cadena de acciones anteriores. Es esta determinación abductiva que de…ne el grado de arbitrariedad del relato (determinación de los medios por los …nes). Un relato narrativo presenta en general varias transformaciones, permitiendo diferenciar subrelatos según las relaciones intrínsecas de jerarquía, de sucesión o de independencia relativa. Un episodio es un subrelato (que contiene su propia transformación) integrado dentro del relato global. El relato global debe, entonces, ser segmentado en diferentes episodios según la complejidad narrativa. El contenido dramático de un relato, su recorrido generativo de signi…cación, se levanta en varios niveles: nivel temático, nivel narrativo y nivel …gurativo, cada uno considerado a su vez en la articulación de dos perspectivas, una paradigmática y otra sintagmática. La primera se de…ne como un eje de selección en la clasi…cación y organización de entidades, donde éstas entretienen relaciones de exclusión de tipo "ó...ó", cuya expresión en términos de la programación lógica serán las constantes, las propiedades y los hechos. La segunda es la dinámica de las unidades elementales constituyendo recorridos o trayectorias, y se de…ne como un eje de combinación, especi…cado por la relación "y...y" en la cual las unidades son encadenadas por relaciones de presuposición lógica, expresadas en las reglas de la forma de cláusulas. El recorrido generativo de la signi…cación del relato es, entonces, el recorrido vertical a través de estos tres niveles, como el movimiento de concreción desde la organización de valores implícitos que de…nen su estrato axiológico hasta la resolución de los detalles …gurativos que visten al relato y producen el efecto de realidad. El adjetivo "generativo" se entiende en el sentido en que las estructuras complejas de un nivel inferior se constituyen a partir de etructuras simples de su nivel inmediato superior. Un problema delicado del análisis semiótico es el paso o conversión de un nivel a otro. Este problema lo heredamos por supuesto en nuestra intención de automatización. Nos concentraremos, en este trabajo, en la traducción a lenguaje lógico del nivel narrativo, dejando para el …nal, a manera de comentarios sobre posibles estrategias de conversión, la incorporación al modelo de los otros niveles. Sin embargo, presentamos el cuerpo completo de la teoría para manejar una perspectiva global donde se inserta nuestro esfuerzo. 3.2.1 Nivel temático El nivel temático constituye la estructura profunda de la organización narrativa. Simple y globalizante, exhibe los valores que expresa implícitamente el relato, lo que en el fondo se nos quiere decir. Estos valores se pueden representar en una estructura llamada cuadrado semiótico, que despliega la articulación lógica de una categoría semántica. Es necesario tener en cuenta que esta herramienta semiótico-lógica es de uso general en la teoría. La introducimos ahora pero la usaremos también con frecuencia en el próximo nivel. El cuadrado semiótico se construye sobre la base de un eje semántico de 39 Figure 3.1: Cuadrado semiótico con ejemplo valores contrarios, S1 y S2 , los cuales poseen un elemento semántico común (elemento que de…ne el eje) y un elemento semántico diferente (elemento que de…ne la contrariedad). Tomemos como ejemplos, el blanco y el negro en el eje de la ausencia de color, el claro y el oscuro en el eje de la luz, la vida y la muerte en el eje de la existencia, la naturaleza y la cultura en el eje de la condición humana. La contrariedad no es una relación propiamente lógica, es semiótica, en el sentido de que la a…rmación de uno implica la negación del otro; por ello, es útil el recurso de la negación por falla en su simulación lógica. Luego, S1 y S2 serán contrarios si y sólo si :S2 implica S1 al mismo tiempo que :S1 implica S2 . Es fácil entonces entender ahora cómo se construye el cuadrado. Sobre la base de los contrarios se proyectan diagonalmente los contradictorios respectivos (negación de cada uno de los términos de la base), como muestra la …gura 6.1, y se de…nen los siguientes tipos de relación: i) S1 ! S2 y :S1 ! :S2 son las relaciones de contrariedad, y determinan los ejes contrario y sub-contrario respectivamente. ii) S1 ! :S2 y :S2 ! :S1 son relaciones de contradicción, y determinan los esquemas positivo y negativo respectivamente. iii) :S1 ! S2 y :S2 ! S1 son las relaciones de complementaridad, y determinan las deixis negativa y positiva respectivamente. El cuadrado como tal constituye la perpectiva paradigmática del nivel temático. Su perspectiva sintagmática son los posibles recorridos temáticos, como ilustra el ejemplo de la Pasión de Jesús que tomamos de [Courtes 1991] (v. …gura 8.1) en el cual la resurrección se representa en la forma de un recorrido S1 ! :S1 ! S2 ! :S2 ! S1 sobre el cuadrado, donde Jesús no vivo cobra el sentido de su cruci…xión y Jesús no muerto la ausencia del cuerpo en la tumba. 40 Un relato puede seguir un recorrido largo reviniendo sobre los valores tanto como se desee. 3.2.2 Nivel narrativo El nivel medio o narrativo despliega la dinámica de actantes que se proyectan desde la organización actancial en una sintaxis narrativa. Nuestro esfuerzo de modelización lógica se concentra fundamentalmente en la simulación de este nivel. Como veremos adelante, nuestro programa lógico se estructurará en dos procesos, a saber, la construcción del modelo actancial del relato donde introduciremos una organización en forma de árbol que reclama los sujetos y los objetos que se de…nen en torno a una situación inicial de falta, originaria del relato, y el desarrollo coherente de la historia, que es su dimensión sintagmática. Perspectiva paradigmática: el modelo actancial El modelo se organiza paradigmáticamente en términos de esferas de acción de…nidas como actantes. Un actante no es necesariamente un personaje de la acción narrada, es una unidad construida en un nivel más abstracto que el de la acción de personajes. De esta forma, un actante puede …gurarse por varios personajes u objetos, y un personaje puede ejercer varios roles actanciales. Un modelo actancial puede intervenir en formas distintas al interior de un relato. El esquema de árbol actancial que proponemos, estratégico a nuestro propósito, es ilustrado en la …gura 6.2 que hemos desarticulado por razones de espacio en el cuadro, y descrito siguiendo la notación de árbol indexado. < >–Actantes: sujetos / objetos. Eje del deseo en el sentido de que toda acción se realiza en la forma de un sujeto en búsqueda de un objeto. Sujeto y objeto se de…nen entonces recíprocamente. <0>–Sujetos: sujetos cognitivos (suj_cogn) / sujetos pragmáticos (suj_prag). Los sujetos cognitivos son sujetos de hacer y los sujetos pragmáticos son sujetos de estado. Esta división cobrará sentido cuando introduzcamos la noción de enunciado narrativo. Por ahora podemos decir que toda acción de un sujeto pragmático es inducida por un sujeto cognitivo, que puede eventualmente ser, de manera re‡exiva, el mismo. <0,0>–Sujetos cognitivos: destinadores (desds) / destinatarios (dests). Eje de la comunicación. El destinador (rol activo) comunica, a través del sujeto pragmático (héroe / traidor) un objeto de valor al destinatario (rol pasivo). Este eje es el motivo central de la historia del relato. <0,0,0>– Destinadores: destinador del sujeto (desd_suj) / anti-destinador (anti_desd). El destinador(o anti-destinador) es un sujeto manipulador que comunica un objeto (cognitivo) al sujeto de acción (héroe o traidor) para que este restituya un objeto de valor al destinatario (o al anti-destinatario), de…nido por la ausencia (o la apropiación indebida) en la situación inicial del relato, la falta original. <0,0,0,0>–Destinador del sujeto (hoja). Es el sujeto manipulador que apela al héroe para que este restituya un orden inicialmente alterado. Es también el 41 Figure 3.2: Esquema actancial en forma de árbol 42 sujeto sancionador que grati…ca (rechaza) la acción del héroe una vez cumplida (o no) la tarea principal del relato <0,0,0,1>– Anti-destinador (hoja). Es el sujeto manipulador que apela al traidor para oponerse a la acción del héroe, en la búsqueda del objeto de valor, para el bene…cio de un anti-destinatario. Es usual que estos tres roles (antidestinador, traidor, anti-destinatario) sean encarnados por un mismo personaje, pero puede bien no ser así, lo que hace el desarrollo de la historia más complejo. <0,0,1>–Destinatarios: destinatario del sujeto (dest_suj) / anti-destinatario (anti_dest). Son los bene…ciarios pasivos de las acciones del héroe o del traidor comandadas por el destinador del sujeto o el anti-destinador. Con frecuencia estos roles son asumidos por los mismos héroe y traidor. <0,0,1,0>–Destinatario del sujeto (hoja). Bene…ciario de la acción del destinador sobre el héroe que restituye un objeto de valor, el cual le pertenece por la moral de la historia. <0,0,1,1>– Anti-destinatario (hoja). Bene…ciario de la acción del antidestinador sobre el traidor que usurpa un objeto de valor, el cual pertenece al destinatario. <0,1>–Sujetos pragmáticos: sujeto / anti-sujeto. Son los actantes de acción polémica de la historia, que es la dinámica con‡ictiva central. Como actantes son esferas de acción que pueden involucrar varios personajes o fuerzas de acción. <0,1,0>– Sujeto: héroe / ayudante. La teoría semiótica incorpora como polos de signo opuesto al ayudante y al oponente en el eje del poder. Para preservar la estructura operativa del árbol nosotros haremos del ayudante, y del oponente, entidades actanciales subrogadas a los actantes sujeto y anti-sujeto, junto con el héroe y el traidor, respectivamente. De esta manera, héroe y ayudante constituyen aquí un eje de poder positivo. <0,1,0,0>–Héroe (hoja). Es, como su nombre lo indica, el sujeto pragmático central de la historia, y el objeto de atención del espectador, cualquiera que sea la forma expresiva del relato. <0,1,0,1>–Ayudante (hoja). Es un sujeto actante secundario que auxilia al héroe en su empresa y cumple acciones de uso para los planes del héroe. Puede ser personi…cado, como los actores amistosos y voluntariosos de los melodramas televisivos que constituyen una conciencia externa del héroe cuando éste nos revela o con…esa en intimidad, a través de él, sus propósitos. Pero puede también adquirir la forma de fuerzas naturales o circunstanciales, como por ejemplo el invierno, la buena suerte, o simplemente el destino favorable. Puede por supuesto, y es generalmente el caso, ser un grupo de actores (personajes y fuerzas). <0,1,1>– Anti-sujeto: traidor / oponente. En nuestro esquema constituye el eje del poder negativo en oposición con‡ictiva al eje positivo que forma el actante sujeto, en una relación que es polémica y simétrica. <0,1,1,0>–Traidor (hoja). Es el miembro principal del actante anti-sujeto. Su programa es oponerse al héroe por la in‡uencia del anti-destinador y con la ayuda del oponente para bene…ciar al anti-destinatario. <0,1,1,1>–Oponente (hoja). Es el equivalente opuesto del ayudante. Representa todos los actores y fuerzas que favorecen la acción del traidor. 43 <1>–Objetos: Objetos modales (obj_mod) / objetos pragmáticos (obj_prag). El subárbol de objetos está construido en directa relación con las circunstancias narrativas de los múltiples sujetos, por el principio de la mutua presuposición. <1,0>– Objetos modales: objetos modales cognitivos (obj_m_cogn) / objetos modales pragmáticos (obj_m_prag). Los objetos modales son aquellos que garantizan la competencia previa para que una acción tenga sentido, cuya adquisición prepara y anuncia un desempeño (por ejemplo poder antecede a hacer ), o garantizan la adquicisión de otra competencia en una relación de presuposición (por ejemplo saber anteceden poder ). <1,0,0>–Objetos modales cognitivos (hoja). Son los objetos de la modalidad virtualizante de la competencia (instauración del sujeto), y los hemos presentado en las categorías semánticas: voluntad / pereza en el eje del querer y obligación / prohibición en el eje del deber. <1,0,1>–Objetos modales pragmáticos (hoja). Son los objetos de la modalidad actualizante de la competencia (cali…cación del sujeto), y los hemos presentado en las categorías semánticas: pertinencia / discreción en el eje del saber y potestad / incapacidad en el eje del poder. <1,1>– Objetos pragmáticos: objeto de valor (obj_valor) / objetos de uso (obj_uso). Son los objetos de la modalidad realizante del desempeño (realización del sujeto), cuya circulación determina el relato. <1,1,0>– Objeto de valor (hoja). Es el objeto de la falta inicial que busca el sujeto en con‡icto con el anti-sujeto. <1,1,1>– Objetos de uso (hoja). Son los objetos que, entendidos como medios, determinan subprogramas narrativos. Una posibilidad de utilización del modelo actancial es ilustrada en el siguiente ejemplo. Destinador del sujeto: Anti-destinador: Destinatario del sujeto: Anti-destinatario: Héroe: Ayudantes: Traidor: Oponente: Objetos modales cognitivos: Objetos modales pragmáticos: Objeto de valor: Objeto de uso: Dios El mal Pueblo de Iraq Partido Baas iraquí George W. Bush Tony y José María Saddam Hussein Osama Bin Laden voluntad y obligación competencia y potestad Democracia en Iraq Bombas y balas Obsérvese que sólo las hojas del árbol son investidas de valores concretos (por ello las hemos identi…cado en la lista anterior) con…gurando para cada caso un dramatis personae. Hemos transgredido la teoría deliberadamente, por razones programáticas, identi…cando los actantes con los nodos de un árbol, que por ser binario les con…ere carácter de categorías actanciales. Estos son sólo posiciones dentro de una 44 estructura que es bastante ‡exible y permite fusiones de tipo hiperotáctico, es decir que desaparece la categoría como tal subsumida en su nodo padre que es un término de la categoría superior. Así, por ejemplo, se puede dar que un relato no presente un anti-destinador diferenciado (cuando el rol es supuesto por el traidor) de manera que la categoría destinadores se convierte en la categoría destinador del sujeto. En términos generales, esta plasticidad del modelo sugiere la posibilidad de construir una forma de tipología de relatos que, por supuesto, no es única. Perspectiva sintagmática: la sintaxis narrativa El recorrido narrativo de la situación inicial a la situación …nal se realiza en la forma de un sujeto en búsqueda de un objeto, como realización del eje de deseo. Toda relación entre un sujeto y un objeto en cualquier momento del relato es un enunciado narrativo. El enunciado narrativo puede ser de dos tipos, enunciado de estado cuando designa el estado del sujeto en relación de conjunción o de disyunción con el objeto (en la dialéctica de a…nidad y repulsión que encontramos en la guionística cinematográ…ca) y, enunciado de hacer, cuando se señala la trasformación de un enunciado estado, una acción para cambiar el estado de un sujeto. El enunciado de hacer presupone entonces un sujeto operador de la transformación, o sujeto de hacer, y dos enunciados de estado contrarios de un mismo sujeto de estado, uno anterior y otro posterior a la acción transformadora. Cuando ambos sujetos son el mismo, el enunciado de hacer es re‡exivo y, cuando son distintos, es transitivo. Un programa narrativo es la formulación lógica de un enunciado de hacer en los términos de dos condiciones, a saber, el enunciado de estado original y el suceso de una acción. El recorrido narrativo de un sujeto es la sucesión sintagmática de sus programas narrativos, articulados en torno a un programa narrativo principal. En un relato, los recorridos narrativos de distintos sujetos se cruzan, o un mismo sujeto puede desarrollar o interrumpir varios recorridos. Cuando las búsquedas de los actantes sujeto y anti-sujeto se encuentran, es decir, se oponen, se genera una situación de con‡icto o prueba. Se distinguen tres casos elementales: dos sujetos persiguen el mismo objeto, dos sujetos se toman recíprocamente como objetos o un sujeto toma como objeto a otro sujeto que persigue un objeto distinto. En los dos primeros casos el éxito de uno supone el fracaso del otro; en el tercero, sólo el éxito del primero compromete el éxito del segundo. La evolución del rol de sujeto en un esquema narrativo canónico comprende tres etapas; la manipulación, que supone el establecimiento de un contrato inicial (modalidad virtualizante de la instauración del sujeto); la acción que se divide en dos sub-etapas, la adquisición de la competencia (modalidad actualizante de la cali…cación del sujeto) y la realización del desempeño (modalidad de la realización del sujeto); y, …nalmente la sanción donde el destinador juzga la acción del sujeto y según el resultado de esta le grati…ca (…nal feliz) o le condena. La sintaxis narrativa es el eje central de nuestro modelo y será desarrollada 45 en detalle en la próxima sección, en los términos de la programación lógica, . 3.2.3 Nivel …gurativo El contenido de la manifestación fenomenal de un relato, es decir, la presencia de los elementos reconocibles del mundo, aquellos que serían accesibles a los sentidos o imaginados como tales, constituye su nivel …gurativo. Los relatos ambientados en epocas distintas y en lugares distintos con personajes diferentes pueden compartir una misma estructura sintáctica y un mismo esquema de valores. Es, pues, el nivel super…cial donde son investidas las categorías actanciales con elementos …gurativos o perceptuales concretos (actores y cosas), y son de…nidos los aspectos temporales y espaciales. La perspectiva paradigmática de la …guración se articula en …guras caracterizadas por el contraste de aspectos. En la perspectiva sintagmática las …guras se asocian para constituir con…guraciones reconociéndose habitualmente en una tipología de eventos (situaciones estereotípicas). En el interior de una con…guración se de…nen los roles …gurativos, que a su vez pueden ser compartidos con otra con…guraciones. Cuando una con…guración es investida de detalles …gurativos concretos se produce un efecto signi…cativo de realidad. Un relato despliega generalmente varios motivos o con…guraciones, que pueden estar anidados, y es la relación estructural entre ellos que porta la signi…cación global del relato. Nosotros no trataremos este nivel en detalle porque ello supone la experticia de otras tecnologías como el manejo de bases de datos o de tablas de conocimiento, pero comentaremos en la próxima parte posibles aspectos de aplicación para incorporar sistemas de …gurativización a nuestro propósito. Nos contentaremos con ilustrar el dispositivo, para dar una idea de su potencial, con la asignación de nombres a las hojas del árbol actancial, sin tomar en cuenta los detalles descriptivos de los actores o las cosas ni consideraciones de ambientación, ubicación o tiempo. En el ejemplo del anexo 4a construimos un programa que genera aleatoriamente árboles actanciales ilustrados más que …gurados. Para tener una idea de su capacidad generativa hemos dado cinco posibilidades a cada actante hoja. El programa puede producir 156.250.000 combinaciones distintas, la …gura 6.3 muestra una de estas combinaciones. 3.3 La sintaxis narrativa en programación lógica Es importante recordar que la formalización que emprendemos aquí no agota las posibilidades epistemológicas de la teoría semiótica de la narratividad, ni siquiera en lo que a relatos narrativos se re…ere. Debe entenderse entonces como un ejercicio de formalización que abre un espectro de posibilidad, a saber, el empleo de los recursos de la programación lógica para automatizar algunos contenidos semióticos con …nes que no son propiamente gnoseológicos, sino por 46 Figure 3.3: Generación actancial aleatoria 47 el contrario, de aplicación concreta en campos especí…cos como la didáctica, la lúdica o la creación artística, por citar solamente algunos. Este capítulo introduce y traduce los conceptos semióticos en términos de cláusulas programáticas. Por ello, puede parecer un tanto telegrá…co, pero no podemos más que referir a la literatura citada si nuestra descripción no es clara en algunos aspectos teóricos. Como toda teoría viva, la semiótica ofrece distintas interpretaciones y nuestra aproximación programática dilectante es tan sólo una posibilidad. 3.3.1 Micro-estructura: el programa narrativo y su complejidad Un enunciado elemental se de…ne como la relación-función entre actantes: F (A1 ; A2 ; :::; An ) Se de…nen dos tipos posibles de función: i) Función-estado: que describe la permanencia, el estado de las cosas y de…ne los enunciados de estado que relaciona un actante sujeto y un actante objeto: ! El estado positivo produce el enunciado de estado conjuntivo que en forma predicativa denotamos por: conj(S; O), cuyo signi…cado es "el sujeto S está en conjunción con el objeto O". ! El estado negativo produce el enunciado de estado disyuntivo denotado por disy(S; O), que signi…ca "el sujeto S no está en conjunción con el objeto O" Obsérvese que la disyunción semiótica di…ere de la disyunción lógica. Si bien conj(S; O) expresa S ^ O; disy(S; O) expresa :(S ^ O) y no S _ O como es la disyunción lógica. Desde el punto de vista lógico no son equivalentes, pues, :(S ^ O) :S _ :O. En el cálculo narrativo entenderemos ambos predicados "cosi…cados" (rei…cation en inglés) en la estructura obs (como contrarios semánticos de la categoría de estado), es decir, convertidos en argumentos,. El despliegue de esta categoría introduciendo el recurso de la negación por falla se describe en la …gura 7.1. ii) Función-transformación: representa el cambio de un estado a otro como el efecto de una acción y de…ne los enunciados predicativos de hacer de la adquisición hacer(S1 ; conj(S2 ; O)) y de la privación hacer(S1 ; disy(S2 ; O)): Se interpretan de la siguiente manera; "el sujeto S1 hace de tal manera que el sujeto S2 esté en conjunción (disyunción) con el objeto O". Un enunciado de hacer presupone un enunciado de estado anterior y contrario. El programa narrativo (P N ) es la unidad básica de la sintaxis narrativa, que nosotros redactamos en estructura de regla, y reviste dos formas posibles: hacer(S1 ; conj(S2 ; O); [Accion j Historia]) : obs(disy(S2 ; O); Historia); sucede(Accion; Historia); obs(conj(S2 ; O); [Accion j Historia]): o 48 Figure 3.4: Articulación en negación por falla de la categoría de estado hacer(S1 ; disy(S2 ; O); [Accion j Historia]) : obs(conj(S2 ; O); Historia); sucede(Accion; Historia); obs(disy(S2 ; O); [Accion j Historia]): Una gran variedad de casos se presenta según las relaciones entre S1 (sujeto de hacer ), S2 (sujeto de estado) y O (objeto de valor ): Si S1 6= S2 el P N es transitivo, es el caso de la donación. Por el contrario, si S1 = S2 , el P N se dice re‡exivo. Si S1 = S2 = O se tiene un programa narrativo para la introspección, etc. Recordemos que el eje paradigmático (o eje de la selección) de cada nivel es una relación de exclusión según la cual un elemento es elegido (actualizado) y los demás excluidos (virtualizados), y que el eje sintagmático (o de combinación) opera bajo el principio de la co-presencia y recurre a la presuposición de los elementos en la serie. Se presenta en cada una de estas perspectivas, en cuanto al nivel narrativo, la posibilidad de desplegar esquemas de complejidad respectivos para el programa narrativo como unidad de relato. La complejidad de tipo paradigmático del programa narrativo se construye a partir de las modalidades de circulación de los objetos pragmáticos. Un objeto pragmático es aquel que pierde un sujeto cuando lo adquiere otro; a una adquisición corresponde una privación.. De esta manera, un enunciado de hacer conjuntivo y otro disyuntivo se presuponen recíprocamente, en lo que se llama un sistema cerrado de valores. En el caso de la donación, a la atribución, que es un hacer transitivo (izquierda) le corresponde una renuncia, que es un hacer re‡exivo (derecha): hacer(S1 ; conj(S2 ; O); [Accion j Historia]) $ hacer(S1 ; disy(S1 ; O); [Accion j Historia]) De igual manera, en el caso de la prueba (expresión del con‡icto), una apropiación (hacer re‡exivo) equivale a una deposición (hacer transitivo): hacer(S1 ; disy(S2 ; O); [Accion j Historia]) $ hacer(S1 ; conj(S1 ; O); [Accion j Historia]) Estas modalidades se articulan, entonces, según el diagrama de la …gura 7.2. 49 Figure 3.5: Sistema cerrado de valores pragmáticos Ahora bien, el predicado hacer tiene como antecedente lógico la estructura obs del cálculo narrativo, y ésta se de…ne en función de los predicados inicia y termina, los cuales pueden garantizar la reciprocidad de los enunciados de estado en las de…niciones de las acciones de atribución y renuncia por una parte y de apropiación y deposición por la otra. Es decir, depende de cómo se de…nan aquellos predicados para estas acciones, porque es la de…nición de la acción (en términos de inicia y termina) la que determina las condiciones del acto. Por lo tanto, el sistema cerrado de valores se construye desde el cálculo narrativo, en su articulación pragmática, y no requiere expresión propia, como es el caso de la complejidad de tipo sintagmático. La complejidad de tipo sintagmático se construye a partir de las composiciones sintagmáticas de programas narrativos. Concentraremos bajo el mismo predicado inter (por interrelación) todas las modalidades de composición como distintas expresiones de este. La interrelación se expresa, entonces, como combinación de enunciados de hacer, variando los argumentos para expresar sus diferentes formas. Se tratan dos casos importantes de interrelación, el intercambio, que es simultáneo y recíproco, es decir, simétrico, y la secuencia, que es transitiva. i) El intercambio positivo (ilustrado por el comercio) inter(S1 ; S2 ; conj(S2 ; O1 ); conj(S1 ; O2 ); [Accion2; Accion1 j Historia]):hacer(S1 ; conj(S2 ; O1 ); [Accion1 j Historia]]); hacer(S2 ; conj(S1 ; O2 ); [Accion2; Accion1 j Historia]: ii) Su versión negativa (ilustrado por la venganza) 50 inter(S1 ; S3 ; disy(S2 ; O1 ); disy(S4 ; O2 ); [Accion2; Accion1 j Historia]):hacer(S1 ; disy(S2 ; O1 ); [Accion1 j Historia]]); hacer(S3 ; disy(S4 ; O2 ); [Accion2; Accion1 j Historia]: Nótese que la simultaneidad solo puede ser simulada por un enunciado de hacer tras otro, pero la característica importante es la permutación de los sujetos de hacer y de estado en los dos programas narrativos y el traspaso de objetos. iii) La secuencia de restitución inter(S1 ; S2 ; conj(S3 ; O); disy(S4 ; O); [Accion2; Accion1 j Historia]):hacer(S2 ; conj(S4 ; O); [Accion1 j Historia]]); hacer(S1 ; conj(S3 ; O); [Accion2; Accion1 j Historia]]); En donde S1 restituye el objeto O a S3 sustraido por la acción de S2 para S4 : Una versión negativa consiste en intercambiar las propiedades conj y disy: iv) La secuencia instrumental inter(S1 ; S2 ; conj(S3 ; O1 ); conj(S3 ; O2 ); [Accion2; Accion1 j Historia]):hacer(S1 ; conj(S3 ; O1 ); [Accion1 j Historia]]); hacer(S2 ; conj(S3 ; O2 ); [Accion2; Accion1 j Historia]: Cuando S2 adquiere el objeto O1 (objeto de uso) para poder alcanzar el objeto O2 (objeto de valor ). En estos casos compuestos se tiene un P N de base y un P N de uso (o subprogramas narrativos). La composición de secuencia instrumental puede de…nirse de manera recursiva, como veremos cuando introduzcamos el esquema de árbol narrativo. De hecho, haremos algunas ampliaciones contextuales de estas de…niciones, que deben tenerse en mente sólo como expresiones lógicas de los conceptos de la teoría semiótica. Son, pues, articulaciones de base que permiten los juegos combinatorios. Finalmente, hay que notar que muchas modalidades son posibles según los valores que asuman las variables de sujeto y de objeto. Por ejemplo, si en la secuencia de restitución 3.3.2 Macro-estructura: el esquema narrativo canónico El programa narrativo en toda su complejidad constituye la micro-estructura de la sintaxis narrativa, su base operativa elemental. Las leyes de combinación de estas unidades básicas regulan el paso de la micro-estructura a la macroestructura en un esquema narrativo más amplio. Este esquema se articula, según la teoría narrativa, en la sucesión de tres pruebas: La prueba cali…cante, que permite al héroe adquirir las competencias de actuar (voluntad, aprendizaje, entrenamiento, iniciación), la prueba decisiva donde se alcanza el objetivo esencial, y la prueba glori…cante donde es sancionada su acción en la forma de la retribución y/o el reconocimiento. Esta estructura reclama la participación de todas las formas actanciales. El actante destinador establece una relación de contrato con el sujeto (héroe) en los términos de una manipulación inicial y de una sanción …nal, relación que involucra un objeto de valor. Esto de…ne la dimensión cognitiva del esquema narrativo por oposición a la dimensión pragmática que es la acción del héroe, preparado previamente para la empresa (competencia), con la participación del ayudante, el héroe debe enfrentar al 51 Figure 3.6: Esquema narrativo canónico en estructura de árbol traidor asistido por el oponente (desempeño), para restituir la falta original y bene…ciar en justicia de…nitiva al destinatario. Representamos el esquema narrativo canónico, descrito en el párrafo anterior, en la forma de árbol como ilustra la …gura 7.3. El esquema puede ampliarse sustituyendo en las hojas manipulación y sanción subesquemas narrativos, lo cual supone otra estrategia de tipi…cación de relatos. Un subesquema en la manipulación se puede interpretar como la vicisitud de un manipulador manipulado, como es el caso frecuente de la novelanegra, y un subesquema en la sanción puede verse como una concentración sobre el ejercicio de justicia, es el caso, por ejemplo, de los relatos judiciales donde la sanción de un acto negativo, según la moral de la historia, requiere de todo un programa de castigo y redención. Una rutina PROLOG que genere el árbol narrativo puede ser la siguiente (v. supra la lectura del árbol actancial): % % Manipulación: Transmición de objetos modales cognitivos (Obj_m_cogn) del destinatario (S1 ) al héroe (S2 ). arbol_narr(Actantes; Historia; (manipulacion; [AccionjHistoria])):inter(S1 ; S2 ; conj(S1 ; Obj_m_cogn); conj(S2 ; Obj_m_cogn); [AccionjHistoria]): % % Competencia: Adquisición de objetos modales pragmáticos (Obj_m_prag) por el héroe (S1 y S2 ) o su transmición por medio del ayudante (S2 ). arbol_narr(Actantes; Historia; (competencia; [AccionjHistoria])):inter(S1 ; S2 ; conj(S1 ; Obj_m_prag); conj(S1 ; Obj_m_prag); [AccionjHistoria]): % % Desempeño: Adquisición del objeto de valor (Obj_valor) por el héroe (S). arbol_narr(Actantes; Historia; (desempe~ no; [AccionjHistoria])):- 52 inter(S; S; conj(S; Obj_valor); conj(S; Obj_valor); [AccionjHistoria]): % % Sanción: Intercambio entre el destinador (S1 ) y el héroe (S2 ) del objeto de valor (Obj_valor) por una recompensa/reconocimiento (Obj_uso). % Los bene…ciados del intercambio son el destinatario (S3 ) y el mismo héroe (S2 ). arbol_narr(Actantes; Historia; (sancion; [Accion2; Accion1jHistoria])):inter(S1 ; S2 ; conj(S3 ; Obj_valor); conj(S2 ; Obj_uso); [Accion2; Accion1jHistoria]): % % Estructura del árbol narrativo (v. supra ejemplo de programa recursivo que reconoce una estructura de árbol) arbol_narr(Actantes; Historia; (_; [(manipulacion; X); (accion; Y ); (sancion; Z)])):arbol_narr_aux(Actantes; Historia; (manipulacion; X)); append(X; Historia; Historia1); arbol_accion(Actantes; Historia1; (accion; [(competencia; C); (desempe~ no; P )])); append(C; P; S); append(S; Historia1; Historia2); arbol_narr_aux(Actantes; historia2; (sancion; Z)): % % Estructura auxiliar arbol_narr_aux(Actantes; Historia; (X; Arbol)):arbol_narr(Actantes; Historia; (X; Arbol)): % % Estructura del subárbol de la acción arbol_accion(Actantes; Historia; (accion; [(competencia; C); (desempe~ no; P )])):arbol_narr(Actantes; Historia; (competencia; C)); append(C; Historia; Historia1); arbol_narr(Actantes; Historia1; (desempe~ no; P )): % Este programa debe ser ampliado con algunas reglas (y cláusulas de llamado) que realicen la búsqueda en el árbol actancial, sin relevancia por ahora en la comprensión del esquema que presentamos de distribución de funciones y de almacenamiento de acciones en la historia (predicados append). Éste es un esquema generativo sencillo que puede hacerse más complejo si se consideran las características especí…cas propias de cada función narrativa (manipulación, acción y sanción), que analizaremos por separado. Análisis formal de la manipulación Hasta ahora hemos visto que los enunciados de hacer determinan enunciados de estado, pero esta relación se debe ampliar para permitir a un enunciado de hacer determinar otro enunciado de hacer. Este es el sentido de la función manipulación, que es la etapa contractual del esquema narrativo canónico. En ella, el hacer determinante es un hacer cognitivo, el determinado un hacer 53 pragmático y la relación entre ambos una relación fáctica. Pero, la formalización de la manipulación es aún más compleja si se considera que el sujeto de hacer manipulador no interviene directamente sobre el desempeño del sujeto de hacer manipulado, sino sobre su competencia modal, lo cual nos da un espectro de cuatro posibilidades, detalladas adelante. Introducimos desde ahora una distinción entre hacer cognitivo y hacer pragmático, así como también entre conjunción y disyunción, cognitivas y pragmáticas (conj_cogn, disy_cogn, conj_prag y disy_prag), porque reclaman de cálculos narrativos distintos. En efecto, si bien el programa anterior opera como un distribuidor de funciones narrativas, cada una de ellas (expresada en términos del predicado inter) llama al cálculo narrativo para la elección de una acción pertinente y la veri…cación de la consistencia lógica en la historia. Pero la naturaleza de las distintas funciones (manipulación, competencia, desempeño y sanción) obliga a distinguir dos tipos de cálculo narrativo: el cálculo narrativo cognitivo y el cálculo narrativo pragmático. El primero se construye en términos de conjunción y disyunción cognitivas (conj_cogn y disy_cogn) porque la modalidad de circulación de objetos (en este caso cognitivos) es la transmición, es decir, el donador no pierde el objeto cognitivo cuando lo transmite. Era el caso del ejemplo de cálculo narrativo "dimes y diretes" de la primera parte. El segundo, por el contrario, se construye en función de conjunción y disyunción pragmáticas (conj_prag y disy_prag), en la modalidad del traspaso de objetos pragmáticos. Es el caso del sistema cerrado de valores pragmáticos que ya hemos descrito. La competencia modal puede describirse como una organización jerárquica (en relación al hacer ), de cuatro modalidades; querer, deber, poder y saber. Las dos primeras son modalidades cognitivas, que trataremos aquí en el caso de la manipulación, transmitidas por un destinador al sujeto como formas de la relación hacer ! hacer, y las últimas, modalidades pragmáticas alcanzadas por el mismo sujeto o transmitidas por un ayudante, que analizaremos en función de la acción más adelante. i) La provocación : El actuar del sujeto es impuesto por el manipulador como una obligación. La modalidad cognitiva de deber, articulada, por nosotros, en la categoría deóntica de los objetos modales cognitivos contrarios obligación / prohibición, se despliega en el cuadrado semiótico de la …gura 7.4. La de…nición programática del recorrido en el cuadro semiótico del deber que ha de efectuar el sujeto para alcanzar el estado buscado de conjunción con el objeto modal obligación lo concebimos de manera libre según la situación inicial (aleatorio en el programa generador). Así, el sujeto puede estar al comienzo en cualquiera de la cuatro posiciones, ofreciendo distintas posibilidades de narración. Por ejemplo, en conjunción con el objeto modal contrario (prohibición) para lo cual debe primero independizarse antes de comprometerse, como aquellos héroes que están en prisión, o los que presentan un impedimento inicial, moral o físico por ejemplo. Pero puede estar también simplemente en disyunción con la obligación, lo cual supone un recorrido más largo en el sentido que debe experimentar y trascender el contrario (prohibición) para poder estar en capacidad de comprometerse. Estos términos que usamos no deben entenderse 54 Figure 3.7: Modalidad cognitiva de deber 55 en sentido literal ni connotados de ninguna manera, son sólo términos técnicos (indicadores narrativos), que denotan posiciones referenciales y sentidos de acción en cada episodio comprensible sólo desde el punto de vista esquemático narrativo. La implementación en PROLOG que proponemos es la siguiente: manipulacion(Destinador; Sujeto; Historia):hacer_cogn(Destinador; conj_cogn(Sujeto; obligacion); Inicial; Historia): donde Inicial es cualquier situación inicial del cuadrado anterior. En la próxima parte se especi…ca como se determina está condición inicial. Las de…niciones de las acciones que comprenden este cuadrado y los que le sigan pertenecen al cuerpo del cálculo narrativo cognitivo, en los términos, como hemos visto, de sus condiciones de posibilidad y efectos (predicados sucede, inicia y termina). ii) La seducción: La acción del manipulador se presenta en la forma del querer, es decir, que afecta, ya no el sentido de deber sino la voluntad del sujeto. Se puede manifestar de diferentes maneras, la solicitud, la adulancia, la suplica o el razonamiento que convence, en la forma de la promesa de un bien ideal (el reconocimiento) o simplemente de un intercambio pragmático (la recompensa). La modalidad cognitiva de querer, articulada, de nuevo por nosotros, en la categoría de los objetos modales cognitivos contrarios volunta / pereza, se despliega en el cuadrado semiótico de la …gura 7.5. La regla en PROLOG para la manipulación de seducción es, entonces, según nuestro esquema, manipulacion(Destinador; Sujeto; Historia):hacer_cogn(Destinador; conj_cogn(Sujeto; voluntad); Inicial; Historia): iii) La tentación: La tentación y la intimidación, que veremos luego, son intercambios pragmáticos a diferencia de la provocación y la seducción. El sujeto no adquiere una competencia modal sino que accede a una situación de negociación en términos axiológicamente comparables, pudiendo ser estos positivos (como es el caso ahora de la tentación) o negativos (la intimidación). La tentación puede, entonces, formularse en términos de la acción de intercambio positivo que es una de las formas complejas del programa narrativo, entendiendo que el sujeto adquiere una promesa de pago saldada con la recompensa por el mismo sujeto manipulador en el momento de la sanción, a cambio, por supuesto, de una acción exitosa. Ahora bien, para ser …eles con la teoría semiótica, hemos articulado el cálculo narrativo pragmático en función del despliegue semiótico del tener, el cual es un nivel de especi…cación más agudo que el que ofrece la contrariedad conj disy (que dejamos al cálculo cognitivo), de tal manera que su recorrido exprese la memoria de posiciones precedentes. Así se articulan las cuatro propiedades de posesion, perdida, carencia y recuperacion como muestra la …gura 7.6. La expresión de la regla en los términos de esta articulación del tener es entonces, manipulacion(Destinador; Sujeto; Historia):hacer_prag(Destinador; Sujeto; posesion(Sujeto; promesa); Inicial; Historia): iv) La intimidación: 56 Figure 3.8: Modalidad cognitiva de querer 57 Figure 3.9: Modalidad pragmática de tener Forma contractual pragmática que opera bajo la …gura de la amenaza y que comprende todas las maneras de la presión, como el chantaje, la fuerza bruta, la intriga o la promesa de terror, de tal manera que el sujeto entra en la posesión de la amenaza como objeto negativo. Su expresión lógica es, manipulacion(Destinador; Sujeto; Historia):hacer_prag(Destinador; Sujeto; posesion(Sujeto; amenaza); Inicial; Historia): Todas estas formas de la manipulación son susceptibles de combinarse en recorridos narrativos dobles cuando se consideran también las acciones de manipulación que se pueden ejercer sobre el anti-sujeto. El modelo de simulación que presentamos en la próxima parte contempla ocho posibles formas de manipulación, simple y doble. El análisis detenido sobre la articulación semiótica de la relación fáctica hacer ! hacer que estamos considerando (v. …gura 7.7), abre aún más el registro de las posibilidades expresivas de la manipulación y permite otro criterio de clasi…cación tipológica de relatos. Nosotros solamente hemos tomado en cuenta la instancia proactiva de la intervención, es decir, el hacer sobre el hacer. De esta forma concluimos nuestra formulación somera entre las múltiples posibilidades que ofrece la función narrativa de la manipulación. Abordamos ahora la siguiente prueba en el esquema narrativo canónico: la acción. 58 Figure 3.10: Modalidades del hacer sobre el hacer Análisis formal de la acción La acción subsume la competencia y el desempeño en relación de presuposición. A diferencia de la adquisición de las competencias modales cognitivas de la manipulación, la competencia es aquí pragmática y se entiende como la relación actualizante que de…ne las competencias modales pragmáticas del sujeto para la acción, interpretadas como el conjunto de condiciones operativas necesarias para la realización del desempeño. Las modalidades pragmáticas, decíamos, son las modalidades del saber y del poder, transmitidas por el actante ayudante (o el oponente) en el caso transitivo, o logradas por el mismo sujeto (héroe o traidor ) en el caso re‡exivo. La modalidad pragmática de saber, que articula la relación de saber-hacer y no el saber gnoseológico como tal, expandida en la categoría de los objetos modales pragmáticos contrarios pertinencia / discreción, se despliega en el cuadrado semiótico de la …gura 7.8. La implementación PROLOG de la modalidad de saber es, en su versión transitiva, competencia_saber(Ayudante; Sujeto; Historia):hacer_cogn(Ayudante; conj_cogn(Sujeto; pertinencia); Inicial; Historia): y en la re‡exiva, competencia_saber(Sujeto; Sujeto; Historia):hacer_cogn(Sujeto; conj_cogn(Sujeto; pertinencia); Inicial; Historia): Si bien la competencia de saber, como también la de poder, es una modalidad pragmática, compromete un objeto modal, por lo cual no puede ser tratado como un hacer pragmático sino cognitivo. Es por esto que el antecedente de la regla es un predicado de tipo hacer_cogn, y se regula por el cálculo narrativo cognitivo. El sentido de pragmatismo se re…ere a la dimensión en el esquema 59 Figure 3.11: Modalidad cognitiva de saber 60 Figure 3.12: Modalidad cognitiva de poder narrativo canónico y no a la naturaleza del hacer, como hemos comentado en su momento. La modalidad cognitiva de poder, articulada aquí en la categoría de los objetos modales cognitivos contrarios potestad / incapacidad, se despliega en el cuadrado semiótico de la …gura 7.9. La teoría reconoce en principio dos formas distintas de la competencia modal de poder cuando es transitiva, a saber, la forma de delegación de poder en la cual el sujeto de hacer no pierde el poder (sólo lo comparte), y la forma de transferencia en la cual lo pierde. Sólo consideramos la primera. La implementación en PROLOG de la adquisición de la competencia modal del poder en la forma transitiva, competencia_poder(Ayudante; Sujeto; Historia):hacer_cogn(Ayudante; conj_cogn(Sujeto; potestad); Inicial; Historia): De manera similar al caso anterior basta sustituir Sujeto por Ayudante para conseguir la situación re‡exiva. Para que haya desempeño (entendido como el actuar del sujeto en la relación realizante hacer ! ser) debe haber sincretismo actancial entre el sujeto de hacer y el sujeto de estado, como es el caso de la prueba de…nida por la re‡exión en 61 la complejidad paradigmática del programa narrativo. La de…nición lógica de desempe~ no abarca las modalidades del predicado inter cuando tratamos la complejidad sintagmática del programa narrativo, salvo las cuatro primeras, que eran sólo los casos simples del hacer y que ya han sido consideradas. Por ello referimos la de…nición del predicado a la revisión del programa que presentaremos adelante. De hecho, en nuestro programa lógico contemplamos el intercambio positivo, la restitución y la secuencia instrumental en sus acepciones transitiva y re‡exiva. El intercambio negativo merece un tratamiento especial que escapa del alcance de nuestro propósito demostrativo, pero que bien pudiera ser incorporado en futuras versiones. Análisis formal de la sanción La sanción es la fase conclusiva del esquema narrativo canónico. Se presenta en el contexto de la teoría semiótica bajo dos formas completamente distintas, la sanción pragmática y la sanción cognitiva. La primera nos ocupa por ahora, porque se valora el hacer del sujeto comandado para la realización del motivo del relato. La segunda se relaciona con la sanción del ser mismo del sujeto en relación a la articulación de la categoría semiótica de ser parecer. Forma parte de un universo temático aún en construcción y relativamente reciente en el desarrollo histórico de la semiótica, llamado la semiotica de pasiones, que trata fundamentalmente sobre la formalización de los estados de ánimo, expresados en las articulaciones combinatorias del querer -ser, deber-ser, saber-ser y poderser. Esto es algo que inexorablemente habrá que incorporar al modelo para dotarlo de recursos de modalización introspectiva, lo que en nuestro referente cinematogra…co llamamos efecto psicológico. Una línea abierta de aplicación en esta dirección es la formulación lógica de los cuatro aspectos típicos de la intriga: suposición, anticipación, revelación y falsi…cación. Para una revisión formal de esta problemática referimos al texto fundamental [Greimas & Fontanille 1991]. Por nuestra parte, hemos formulado la de…nición programática de sancion como una acción de intercambio tringular donde intervienen los actantes destinador, sujeto, destinatario, objeto de valor y la recompensa que es a los efectos un objeto de uso, sancion(Desd; Dest; Suj; Obj_valor; [Hist2; Hist1]):hacer_prag(Desd; Suj; posesion(Dest; Obj_valor); carencia(Dest; Obj_valor); Hist1); hacer_prag(Desd; Desd; posesion(Suj; recompensa); carencia(Suj; recompensa); Hist2): Ahora bien, la de…nición extensa de los predicados sintácticos de la narración exige la formalidad de recorrido en los cuadrados semióticos que hemos comentado anteriormente. Este formalismo, que llamamos recorrido narrativo (predicado recorrido), nos permite transitar los cuadrados desde cualquier situación inicial hasta la situación que se quiera o que se busque. Es decir, dada una situación inicial del sujeto en relación a las propiedades, puede eventualmente suceder, ninguna, una, dos o tres acciones en el recorrido del cuadrado. Debemos entonces completar el programa con la siguiente rutina. % % Caso inmediato 62 recorrido(P ropiedad; []):- inicial(P ropiedad): % % Caso de un paso recorrido(P ropiedad; [Accion1]):- inicia(Accion1; P ropiedad; []): % % Caso de dos paso recorrido(P ropiedad; [Accion2; Accion1]):recorrido_aux(P ropiedad; P ropiedad1; Accion2); sucede(Accion1; S1 ; S2 ); obs(P ropiedad; [Accion2; Accion1]): % % Caso de tres pasos recorrido(P ropiedad; [Accion3; Accion2; Accion1]):recorrido_aux(P ropiedad; P ropiedad1; Accion3); observacion(P ropiedad2); P ropiedad2n = P ropiedad1; P ropiedad2n = P ropiedad; sucede(Accion2; S1 ; S2 ); obs(P ropiedad2; []); sucede(Accion1; S1 ; S2 ); obs(P ropiedad; [Accion3; Accion2; Accion1]): % % Memoria de recorrido recorrido_aux(P ropiedad; P ropiedad1; Accion1):sucede(Accion1; S1 ; S2 ); not(obs(P ropiedad; [Accion1])); observacion(P ropiedad1); P ropiedad1n = P ropiedad; obs(P ropiedad1; [Accion1]): % % Posibles estados anteriores de tipo observacion(P ropiedad):- P ropiedad = conj(_; Objeto): observacion(P ropiedad):- P ropiedad = disy(_; Objeto): observacion(P ropiedad):- P ropiedad = estado(_; Objeto): % En las dos primeras reglas de la de…nición del predicado observacion (casos para el cálculo narrativo cognitivo) la variable Objeto puede tomar los valores voluntad, pereza , obligacion, prohibicion, pertinencia, discrecion, potestad e incapacidad. En la tercera, el predicado estado puede ser posesion, carencia, recuperacion y perdida (caso para el cálculo narrativo pragmático). En el anexo 5a presentamos el cálculo narrativo cognitivo ampliado para recorrer los cuadrados semióticos de las modalidades del deber, del querer, del saber, y del poder. El cálculo narrativo pragmático ampliado para recorrer el cuadrado semiótico del tener se muestra en el anexo 5b. Es importante recordar, para …nalizar este capítulo sobre la sintaxis narrativa, que el cuadrado semiótico es una estructura de posiciones referenciales y 63 no substanciales, de tal manera que los nombres que le hemos dado a los objetos modales y a las acciones no son de lejos los más pertinentes. Con toda seguridad un lingüista semiótico podrá ser más preciso en la nominalización de los cuadrados de lo que hemos sido nosotros. 64 Chapter 4 Modelo de simulación de relatos La teoría presentada en las dos partes precedentes se orienta hacia la implementación semiótica en inteligencia arti…cial y propone algunos elementos básicos para ello, abordando la problemática desde el punto de vista de la narrativa de relatos que es quizás el mayor logro de la semiótica. Queda, por supuesto, abierta la perspectiva de una interpretación programática en las formas semióticas de aplicación a otros campos: Semiótica política [Landowski 1979], análisis de mitos [Greimas 1986], lúdica [Agelvis 1998], etc. Estos esfuerzos exigen a todas luces la multidisciplinaridad. El programa lógico que trataremos en esta parte y que resume todos los aspectos considerados hasta ahora no debe verse como la …nalidad de este trabajo sino como una ilustración del potencial práctico de esta empresa de transferencia tecnológica. 4.1 Modelo en gramática de cláusula de…nida En el estudio lógico-matemático de los lenguajes formales, una gramática formal se de…ne por la cuádrupla G = (T; N; P; O), donde T es un conjunto de símbolos terminales y N de símbolos no-terminales, S es el símbolo de inicio (O 2 N ) y P un conjunto de producciones o reglas. Veamos un sencillo ejemplo de la gramática generativa ilustrado en la …gura 8.1. En este ejemplo, T N = fla; guacamaya; canta; una; cumbiag = fO; F N; F V; A; S; V g que denota respectivamente oración, frase nominal, frase verbal, artículo, sus- 65 Figure 4.1: Ejemplo de árbol generativo tantivo y verbo, y las reglas de producción P son O FN FV A A S S V ! ! ! ! ! ! ! ! F N; F V A; S V; F N la una guacamaya cumbia canta En PROLOG estas producciones se pueden escribir de forma inmediata de la siguiente manera, o(Z):- fn(X),fv(Y),append(X,Y,Z). fn(Z):- a(X),s(Y),append(X,Y,Z). fv(Z):- v(X),fn(Y),append(X,Y,Z). a([la]). a([una]). s([guacamaya]). s([cumbia]). v([canta]). Existe, sin embargo, una estrategia más elegante para expresar estas estructuras generativas llamada diferencia de listas, que en nuestro ejemplo es la siguiente, o(X,Z):- fn(X,Y),fv(Y,Z). 66 Figure 4.2: Refutación de diferencia de listas fn(X,Z):- a(X,Y),s(Y,Z). fv(X,Z):- v(X,Y),fn(Y,Z). a([lajX],X). a([unajX],X). s([guacamayajX],X). s([cumbiajX],X). v([cantajX],X). En esta otra forma, las listas se van anidando, como se percibe en el grá…co de refutación de la …gura 8.2. Nótese que la pregunta, para que se genere la oración entera debe ser o(X; []): La gramática de cláusula de…nida es la implementación en PROLOG para manejar reglas de producción generativa sin tener que explicitar el uso de las listas en el recurso de diferencia de listas. Esta es una herramienta de 67 programación lógica muy poderosa en el procesamiento de lenguaje natural en inteligencia arti…cial. En gramática de cláusula de…nida nuestro sencillo ejemplo se escribe de manera simple, o –> fn, fv. fn –> a, s. fv –> v, fn. a –> [la]. a –> [una]. s –> [guacamaya]. s –> [cumbia]. v –> [canta]. Adicionalmente, una gramática de cláusula de…nida puede ser ampliada con argumentos, elevando su poder de expresión sobre el nivel de las gramáticas libre de contexto en la jerarquía de Chomsky. Una aplicación de la gramática ampliada es la construcción de fraseadores (parser s, en inglés), que al mismo tiempo de generar una secuencia de símbolos terminal (la frase de nuestro ejemplo) recupera la estructura sintáctica del objeto. Un fraseador para el ejemplo anterior que recupera la notación de árbol que hemos venido usando puede ser, o((oracion,[FN,FV])) –> fn(FN), fv(FV). fn((frase_nominal,[A,S])) –> a(A), s(S). fv((frase_verbal,[V,FN])) –> v(V), fn(FN). a((articulo,[la])) –> [la]. a((articulo,[una])) –> [una]. s((sustantivo,[guacamaya])) –> [guacamaya]. s((sustantivo,[cumbia])) –> [cumbia]. v((verbo,[canta])) –> [canta]. La pregunta en este caso debe ser del tipo o(S; F; []), donde S re‡eja la estructura sintáctica en forma de árbol y F la frase en forma de lista. Referimos para exposiciones completas y adecuadas al procesamiento de lenguaje natural desde la óptica lógico-programática a [Gazdar & Mellish 1989] y [Covington 1994]. En el anexo 4b hemos transcrito a gramática de cláusula de…nida ampliada como fraseador el programa del ejemplo 4a que generaba el árbol actancial. En el anexo 6 presentamos acoplados en un fraseador global el generador actancial del anexo 4b y los cálculos narrativos cognitivo y pragmático ampliados. 4.2 Figurativización El proceso de …gurativización en el contexto de este modelo de automatización, que se genere a partir de una estructura lógico-semiótica en forma de árbol generativo alimentando sus hojas, ya no con simples nombres (como hiciéramos en el modelo ilustrativo del anexo 6), sino con objetos estructurados en los términos aspectuales de la oposición de …guras (v. supra Nivel …gurativo), es en nuestro entender, de complejidad similar al proceso de lexicalización de las gramáticas de estructura de frase que se usan en la lingüística generativa. La complejidad se origina no tanto en el mecanismo de asignación de valores …gurativos como 68 en la naturaleza misma del corpus aspectual que organice y ofrezca un universo creíble de posibilidades más allá de estereotipos. La tecnología de bases de conocimiento operadas por agentes inteligentes pudiera ser una estrategia con éxito de aproximación a esta problemática. Pero no hay que desanimarse, porque el dispositivo tal y como está concebido puede implementarse como un sistema interactivo que construya junto al usuario la estructura global del relato, incluyendo los aspectos axiológicos y …gurativos. Sobre ello comentamos en la conclusión …nal. 4.3 Redacción automática de relatos narrativos en lenguaje natural La creación de un dispositivo generador de prosa narrativa se ubica en el centro polémico de la investigación lingüística, a saber, el paso de la frase al discurso. El campo de la inteligencia arti…cial dedicado a la automatización de la lengua natural, llamado procesamiento de lenguaje natural, hereda obviamente está problemática. Por una parte, el tratamiento dado a la generación de historias se in‡uencia de los estudios estructuralistas a partir de la obra de Propp [Propp 1970] (curiosamente no han tomado en cuenta la semiótica francesa), y de la story grammar de Lako¤ [Lako¤ 1972], aplicando los formalismos de plani…cación de los sistemas expertos en inteligencia arti…cial, sin éxito de relevancia. Por otra parte, la tecnología de generación de lenguaje natural, fuertemente inspirada en la gramatica generativa y sus derivados (gramática tranformacional, gramática general de estructura de frase, etc.), sólo recientemente ha producido dispositivos capaces de generar textos cortos, focalizados en discursos instruccionales en tiempo presente, muy distantes de la especi…cidad propia de la prosa narrativa. Sin embargo, estos dos campos han tenido escaso contacto. Recientemente, [Callaway 2000] y [?] han propuesto una arquitectura de generación de prosa narrativa, llamada AUTHOR, que intenta suplir esta distancia disciplinar. Los detalles de su descripción nos lleva fuera del ámbito que nos hemos propuesto. No obstante, es menester comentar que aunque un tal dispositivo pueda llegar a ser bastante e…ciente no creemos que este sea un problema mayor en el tratamiento automático de relatos si defendemos la postura que privilegia la creación literaria. No podemos olvidar que la máquina es un instrumento para la actividad humana, que la interacción máquina-hombre puede fortalecer la inventiva del hombre y que la aspiración tecnologico-cienti…cista de sustituir éste por aquella tiene consecuencias éticas equívocas. 69 Chapter 5 Conclusiones y fuentes A lo largo de este trabajo hemos visitado distintos campos del saber con la intención de formular rudimentos teóricos y técnicos para la implementación automática de narrativa: Desde la lógica de predicados, que hemos presentado como lenguaje de árbol (elemento hilador de nuestro discurso), la programación lógica y su aplicación al tratamiento de procesos en inteligencia arti…cial, donde introducimos un cálculo narrativo hecho a nuestra medida, hasta la semiótica francesa que hemos manipulado al riesgo de la heterodoxia. Este esfuerzo tiene sentido si se le percibe desde una perspectiva más amplia y ambiciosa, como un paso de aproximación al centro de dos polémicas historicamente pendientes. La primera, colocada en el corazón de las tecnologias cognitivas, debate la pertinencia de la manipulación simbólica y, por ende, del uso de la lógica formal, en la simulación de actividades mentales, y el pensamiento narrativo es un articulador fundamental del lenguaje, en contra de una visión mimética, harto interesante por lo demás, que postula la neurona como el átomo-hormiga ineludible para entender el complejo comportamiento colectivo del "hormiguero". La segunda se re…ere a la discusión secular que ha sacudido las bases del pensamiento estructuralista del siglo XX en torno a la matematización del discurso de las ciencias sociales. Desde Sémantique Structurale de Graimas hemos percibido en la literatura semiótica una resistencia a su formulación lógica. Nuestro argumento es que la historia reciente de la lógica comprometida con el problema contemporáneo de la computación y la lingüística (teoría de lenguajes formales) es un campo en fértil expansión y que, probablemente, el estado de la lógica al momento del nacimiento de la teória semiótica no ofrecía esperanzas de modelización pertinente. Esta es una posición, quizás todavía ingenua, ante la aporía epistemológica del rol de la matemática, la mathesis universalis, en la articulación ordenada del saber. En cualquier caso, no es nuestra pretensión -ni nuestra competencia, claro está- formalizar lógicamente la semiótica, empresa que se per…la bastante aguda y requiere la intervención inspirada de un elevado esprit de …nesse. Nuestra empresa es de carácter instrumental, aunque se presente revestida de una cierta formalización teórica básica. Si este esfuerzo conmueve el alma, con frecuencia 70 prejuiciada por la práctica académica convencional, de un lingüista semiótico curioso que nos devuelva su interés disciplinario, habremos alcanzado nuestro objetivo. En toda tarea de aplicación de un conocimiento teórico o de invasión técnica de un campo sobre otro se abren expectativas tanto teóricas, para justi…car formalmente la operación, como prácticas, sobre el interés de tal empeño. Abrimos la horqueta ahora para sugerir senderos de investigación y desarrollo, unos posibles otros necesarios, a partir de la intención que nos ha ocupado. 5.1 Conclusión teórica: Hacia una gramática formal narrativa El abordaje formal al problema de estructurar una gramática narrativa está en relación de concomitancia, aparentemente menor, con el problema de estructurar globalmente el discurso, y los primeros intentos de formalización sistemática (story grammars en particular, semiótica narrativa en general) aparecen precisamente en la misma década. El objeto formal gramática como aparato ideal de producción generativa de la teoría matemática de lenguajes formales forma parte de la feliz identi…cación entre cuatro campos, disímiles en ese momento: la naciente lingüística generativa; la teoría lógica de la computación a partir del razonamiento ingenieril de autómatas; la lógica teórica, abierta desde entonces hacia la posibilidad de una sintaxis língúística formal basada en modelos (objetos exclusivos hasta entonces de la semántica lógica) y; curiosamente también, el álgebra de semianillos que desarrollaba, por su parte, la teoría de lenguajes de árboles. Esta elevada conexión entre parcelas aparentemente distantes es, a nuestro entender, uno de los logros más signi…cativos de la práctica cientifíca del siglo pasado porque impulsó el desarrollo contemporáneo de la matemática lingüística, de la lógica computacional, del álgebra de estructuras poco exploradas hasta entonces y, propició además, la aparición del estudio dedicado de los lenguajes formales como campo propio de abstracción, fundamental hoy en día para la genética, entre otros campos aparentemente alejados. Es en este contexto teórico donde puede continuar, por interés lógico-matemático, nuestra investigación; hacia la formulación de una gramática narrativa formal y abstracta de actualización teórica (en particular la gramática de adjunción de árboles en su reciente interpretación como sintaxis de teoría de modelos) que dé cuenta de la esencia generativa del proceso narrativo, como inteligibilidad, y no como llave mágica de mecanización de la producción creativa, que es exclusivamente humana por mandato divino. Postura esta que nos precipita a una conclusión práctica. 71 5.2 Conclusión práctica: Derivados posibles del dispositivo lógico de generación narrativa El horizonte de aplicaciones de este trabajo apuesta a la implementación de dispositivos tecnológicos inteligentes, cibernéticos por supuesto, pero también telemáticos, que ofrezcan la interacción con usuarios como herramienta o medio académico, didáctico, lúdico, e incluso, plástico. Veamos cada una de estas orientaciones en algo de detalle, como promesas de futuro. Proyectándose sobre la didáctica, un instrumento educativo de esta naturaleza, cultural, psicológica y pedagógicamente bien entendido, puede ayudar a un aprendiz para comprender normas de la construcción de cuentos, asistirlo en la tarea sin comprometer su imaginación o también conocer la manipulación artesanal de los relatos televisivos y cinematográ…cos. Por su potencial enorme de generación aleatoria, un dispositivo de este tipo puede convertirse como plataforma de juego narrativo de carácter participativo, juegos de roles, o también, como un formulador asistente de libretos e historias. Finalmente, esta mecánica lógica puede incorporarse como medio de expresión, tan legitimo como el mismo pincel o la pluma, para producir obras artísticas, como las literarias de vanguardia automática (de in‡uencia psicoanalíticosurrealista), o también como la expresión plástica de una poesía visual alegórica (por una teóricamente posible versión de la semiótica visual desarrollada hasta ahora con muchas expectativas), en el ámbito actual del arte cibernético y telemático. A manera de pequeño epílogo queremos pronunciarnos. Los intentos de congeniar prácticas ajenas, campos históricamente distanciados o disciplinas coyunturalmente encontradas, no se hace sin tentar el alto precio que supone el riesgo de la torpeza, la ingenuidad o la impertinencia. Pero solamente un fruto incierto puede consolarnos si se apuesta sin garantías. La vida se llena con estos esfuerzos a media luz, que nos place llamar, por ahora, esperanza intelectual. 5.3 Indice analítico 72 Index relación de contradicción, 39 relación de contrariedad, 39 Actante, 40 Adquisición, 47 Arbol, 6 altura, 7 función de etiqueta, 6 generación, 7 grado, 7 lenguaje, 8 ambiguo, 8 nodo, 6 hermano, 7 hoja, 7 independencia, 6 padre, 7 raíz, 6 rama, 7 relación de orden, 6 lineal, 6 orden parcial, 6 relación de dominio, 6 relación de dominio inmediata, 7 relación de orden lexicográ…co, 7 relación de precedencia, 7 subarbol, 7 Desempeño, 44, 51 Dimensión cognitiva, 50 Dimensión pragmática, 50 Donación, 48 Enunciado de estado, 44 Enunciado de hacer, 44 re‡exivo, 44 sujeto de estado, 44 sujeto de hacer, 44 transitivo, 44 Enunciado narrativo, 44 Esquema narrativo canónico, 44, 51 acción, 44 manipulación, 44 sanción, 44 Figura, 45 Forma general de cláusulas, 24 Forma normal de cláusulas, 16 cláusula, 17 cabeza, 18 cláusula de Horn, 18 cláusula vacía, 18 cuerpo, 18 meta, 18 regla, 18 interpretación de Herbrand, 19 literal, 17 modelo de Herbrand, 19 programa lógico, 18 skolemización, 17 SLD-refutacion, 22 universo de Herbrand, 18 Cálculo de eventos, 29 Cálculo de situaciones, 27 Cálculo narrativo, 32 cognitivo, 53 pragmático, 53 Competencia, 44, 50 Con…guración, 45 Cuadrado semiótico, 38 relación de complementaridad, 39 73 Gramática de cláusula de…nida, 65 querer, 53 Modalidad pragmática, 53 poder, 53 saber, 53 Interrelación, 49 intercambio, 49 secuencia, 49 Introspección, 48 Negación por falla, 23 SLDNF-refutación, 23 suposición de un mundo cerrado, 23 Lógica de predicados, 9 cálculo de predicados, 12 fórmula abierta, 11 fórmula atómica, 10 fórmula bien formada, 10 fórmula constante, 11 Forma general de cláusulas, 24 instancia, 11 lenguaje, 12 símbolo lógico, 9 símbolo no-lógico, 9 semántica consecuencia lógica, 13 dominio, 12 extensión, 12 interpretación, 12 modelo, 13 relación de satisfacción, 13 teoría de modelos, 12 sentencia, 11 sintaxis forma normal de cláusulas, 16 resolución, 15 teoría de pruebas, 15 sintaxis adecuación, 15 sustitución, 11 término, 10 constante, 10 variable libre, 11 variable ligada, 11 Privación, 47 Problema del contexto, 28 Programa lógico, 18 Programa narrativo, 44, 47 de base, 50 de uso, 50 PROLOG, 25 de…nición de predicado, 26 Prueba, 44, 48 Recorrido generativo de signi…cación, 38 nivel …gurativo, 38 nivel narrativo, 38 nivel temático, 38 perspectiva paradigmática, 38 perspectiva sintagmática, 38 Recorrido narrativo, 44, 61 Recorrido temático, 39 Refutación, 21 Resolución, 15 padre, 19 resolvente, 19 Sanción, 44, 50 Semiótica de pasiones, 61 Sintaxis narrativa, 45, 50 macro-estructura, 50 contrato, 50 prueba cali…cante, 50 prueba decisiva, 50 prueba glori…cante, 50 micro-estructura, 47, 50 Sistema cerrado de valores, 48 SLD-refutacion, 22 estrategia en profundidad, 22 Manipulación, 44, 50 intimidación, 55 provocación, 53 seducción, 55 tentación, 55 Modalidad cognitiva, 53 deber, 53 74 sustitución de solución, 23 uni…cador, 20 general, 20 SLDNF-refutación, 23 75 5.4 Bibliogra…a 76 Bibliography [Agelvis 1998] Semiótica del Discurso Lúdico. Universidad de Los Andes, 1998. [Bal 1977] Bal, M. Narratology: Introduction to the Theory of Narrative. University of Toronto Press, 1977. [Callaway 2002] Callaway, C. B. Narrative Prose Generation. PhD. thesis, North Carolina State University, Raleigh, NC, 2000. [Callaway 2000] Callaway, C. B. Narrative Prose Generation. PhD. thesis, North Carolina State University, Raleigh, NC, 2000. [Callaway & Lester 2001] Callaway, C. B. y Lester, C. J. "Narrative Prose Generation". Arti…cial Inteligence, abril 2001. [Clocksin & Mellish 1994] Clocksin, W. F. y Mellish, C. S. Programming in Prolog (cuarta edición). Springer-Verlag,1994. [Chabrol 1978] Chabrol, C. “Sobre Algunos Problemas de Gramática Narrativa y Textual“ en Semiótica Narrativa y Textual (Chabrol ed.), Universidad Central de Venezuela, 1978. [Courtes 1991] Courtés, J. Analyse Sémiotique du Discours; De l’Enoncé a l’Enonciation. Hachette 1991. [Covington 1994] Covington, A. M. Natural Language Processing for Prolog Programmers. Prentice-Hall, 1994. [Equipe SIAMES 2002] Donikian, S. Modélisation de la Structure Narrative d’une Fiction Interactive, Proyecto del Institut de Recherche en Informatique et Système Aléatoires. Francia, 2002. [Eshgi 1988] Eshgi, K. “Reasoning about Action in First-Order Logic”en Proceeding Ninth Biennal Conference of 77 Canadian Society For Computational Studies of Intelligence, 1992. [Everaert-Desmedt 2000] Everaert-Desmedt, N. Sémiotique du Récit (tercera edición). De Boeck & Larcier, 2000. [Galton 1995] Galton, A. “Time and Change” en Handbook of Logic in Arti…cial Intelligence and Logic Programming (Gabbay, Hogger & Robinson eds.). Oxford University Press, 1995. [Gazdar & Mellish 1989] Gazdar, G. y Mellish, C. Natural Language Procesing in Prolog; An Introduction to Computational Linguistic. Addison-Wesley, 1989. [Greimas 1986] Greimas, A. J. Sémantique Structúrale (tercera edición). Presses Universitaires de France, 1986. [Greimas & Fontanille 1991] Greimas, A. J. y Fontanille, J. Sémiotique des Passions; Des états de choses aux états d’âme. Seuil, 1991. [Greimas & Courtes 1993] Greimas, A. J. y Courtés, J. Sémiotique; Dictionnaire Raisonné de la Théorie du Langage. Hachette, 1993. [Hogger 1990] Hogger, J. C. Essentials of Logic Programming. Oxford University Press, 1990. [Kakas & Miller 1997] Kakas, A. C. y Miller, R. S. “A Simple Declarative Language for Describing Narratives with Actions” en The Journal of Logic Programming, 1997. [Kowalski & Sergot 1986] Kowalski, R. A. y Sergot, M. J. “A Logic Based Calculus of Events” en New Generation Computing Vol. 4, 1986. [Kowalski 1992] Kowalski, R. A. “Database Update in the Event Calculus” en The Journal of Logic Programming, Vol. 12 1992. [Lako¤ 1972] Lako¤, G., "Structural Complexity in Fairy Tailes" en The Study of Man 1, (1972) pp. 128 - 190. [Landowski 1979] Landowski, E. y Greimas, A. J. Introduction à l’Analyse du Discours en Sciences Sociales. Hachette, 1979. 78 [Lang 1997] Lang, R. R. A Formal Model for Simple Narratives. PhD. thesis, Tulane University, New Orleans, 1997. [Lebowitz 1985] Lebowitz, M. "Story-telling as Plannig and Learning. Poetics, 14(3): 483-502, 1985. [Lloyd 93] Lloyd, J. W. Logic programming (tercera edición). Springer-Verlag, 1993. [McCarthy & Hayes 1969] McCarthy, J. y Hayes, P. J. “Some Philosophical Problems from the Standpoint of Arti…cial Intelligence” en Machine Intelligence 4 (Michie y Meltzer eds.). Edinburgh University Press, 1969. [Martin-Vide 2002] Notas del seminario “Derivation Trees” en 1st International PhD. School in Formal Languages and Applications. Sin editar, Tarragona, 2002. [Meehan 1977] Meehan, J. "Tale-Spin, an Interactive Programe that Writes Stories". En Proceedings of the Fifth International Joint Conference on Arti…cial Intelligence. Cambridge, 1977. [Nerode & Shore 1993] Nerode, A, y Shore, R. A. Logic for Applications. Springer-Verlag 1993. [Propp 1970] Propp, V. Morphologie du Conte. Seuil, 1970. [Quesada 1995] Quesada, D. “Lógica Clásica de Primer Orden” en Lógica (Alchourrón, Méndez y Orayen eds.). Trotta, 1995. [Segre 1988] Segre, C. Introduction to the Analysis of the Literary Text. Indiana University Press, 1988. [Shanahan 1989] Shanahan, M. P. “Prediction is Deduction but Explanation is Abduction” en Proceeding IJCAI 1989. [Shanahan 1997] Shanahan, M. P. Solving The Frame Problem; A Mathematical Investigation of The Common Sense Law of Inertia. MIT press 1997. [Vale 1996] Vale, E. Técnicas del Guión para Cine y Televisión (sexta edición). Gedisa, 1996. 79