Download Lógica - webart2010
Document related concepts
Transcript
La programación lógica se basa en la sintaxis de la lógica de primer orden, originalmente propuesta por Gottlob Frege en la segunda mitad del siglo XIX y modificada a su forma actual por Giuseppe Peano y Bertrand Russell. En la década de los anos treinta, Kurt Goedel y Jacques Herbrand estudiaron la noción de computabilidad basada en derivaciones. Su trabajo puede verse como el origen de la “computación como deducción”.Treinta años mas tarde, Alan Robinson publicó su artículo fundacional sobre la demostración automática. En este trabajo se introduce el principio de resolución, la noción de unificación y un algoritmo de unificación. Y es que, si bien el paradigma de la programación lógica tiene sus raıces en la demostración automática de teoremas, de donde tomo la noción de deducción, presenta una novedad importante: en el proceso de demostración algunos valores serán computados. Pero otro paso era necesario para vislumbrar como es posible computar en este marco. En 1974, Robert Kowalski introduce la noción de programas lógicos con una forma restringida de resolución. La sintaxis propuesta por Kowalski era más restringida que la de Robinson, pero tenia un efecto colateral sobre la forma de una substitución satisfactoria. Esta substitución puede verse como el resultado de una computación, y en consecuencia, ciertas formulas lógicas (cláusulas de Horn) pueden interpretarse como programas. El trabajo de Kowalski termino un debate del todo relevante para nosotros: dadas las metas de la inteligencia artificial ¿El conocimiento debe representarse de forma declarativa o procedimental? Si la forma declarativa era la adecuada, tal como defendía John McCarthy, la realización de la inteligencia artificial pasaba por representar el conocimiento en calculo de predicados e implementar procedimientos de prueba eficientes sobre este lenguaje; Si la forma procedimental era la adecuada, entonces tal realización pasaba por la implementación de procedimientos organizados como una sociedad de agentes que compiten y cooperan, tal como lo resume Marvin Minsky. Los programas lógicos de Kowalski tienen evidentemente una interpretación declarativa, pero también procedimental. Entre 1971 y 1973 Kowalski y Colmeraruer colaboraron intensamente, concluyendo con la creación de Prolog en 1973. Prolog puede verse como la realización practica del concepto de programa lógico. Paradigma lógico: El paradigma lógico tiene como característica principal la aplicación de las reglas de la lógica para inferir conclusiones a partir de datos. Conociendo la información y las condiciones del problema, la ejecución de un programa consiste en la búsqueda de un objetivo dentro de las declaraciones realizadas. Esta forma de tratamiento de la información permite pensar la existencia de “programas inteligentes” que puedan responder, no por tener en la base de datos todos los conocimientos, sino por poder inferirlos a través de la deducción. Lógica: La lógica es un lenguaje formal mediante el cual es posible representar fórmulas llamadas axiomas, que permiten describir fragmentos del conocimiento y, además consta de un conjunto de reglas de inferencia que aplicadas a los axiomas, permiten derivar nuevo conocimiento.
Related documents