Fundamentos lógicos e implementación de una extensión a temporal Prolog

La necesidad de contar con un manejo adecuado de situaciones que involucren el tiempo y la noción de cambio, ha sido reconocido como un aspecto importante en muchas áreas de ciencias de la computación. Esto ha hecho evidente la necesidad de herramientas que manejan este tipo de información. Como ref...

Descripción completa

Guardado en:
Detalles Bibliográficos
Autores principales: Cobo, María Laura, Augusto, Juan Carlos
Formato: Objeto de conferencia
Lenguaje:Español
Publicado: 1998
Materias:
Acceso en línea:http://sedici.unlp.edu.ar/handle/10915/24842
Aporte de:
Descripción
Sumario:La necesidad de contar con un manejo adecuado de situaciones que involucren el tiempo y la noción de cambio, ha sido reconocido como un aspecto importante en muchas áreas de ciencias de la computación. Esto ha hecho evidente la necesidad de herramientas que manejan este tipo de información. Como reflejo de esta relevancia, en los últimos años se han propuesto diversos lenguajes de programación lógica temporal. En particular, presentamos aquí un lenguaje de programación lógica temporal denominado ETP, abreviatura de “Extended Temporal Prolog”. Este lenguaje está basado en una propuesta presentada por Gabbay en [Gab87]. Dedicaremos el artículo a explicar sus fundamentos lógicos y los aspectos más destacados de su implementación. Omitiremos dar aquí el código de la implementación de interprete del nuevo lenguaje por razones de espacio pudiendo ser obtenido de [Cob98]. Cabe destacar que no se conoce una implementación de uso público de la propuesta de Gabbay por lo tanto la disponibilidad de la implementación de ETP es parte del aporte del trabajo que resumimos en este artículo. Inicialmente se presentará un resumen del trabajo de Gabbay a fin de que el lector conozca el lenguaje que extenderemos y explicaremos la utilidad de dicha extensión. El conjunto de operadores considerados en este lenguaje contiene a los operadores más comúnmente utilizados es este tipo de programación. En lo que respecta a la extensión brindaremos un detalle de la lógica extendida y la definición del lenguaje que la toma como base. También presentaremos el algoritmo que permite responder consultas de dicho lenguaje. Acompañaremos el algoritmo con una demostración de que el mismo computa una función total (siempre se detiene). En lo que respecta a la implementación de un lenguaje de este tipo, se puede decir que es una novedad, ya que Gabbay no presentó una implementación con su propuesta. Finalmente se presentarán ejemplos a fin de ilustrar potenciales usos del lenguaje para concluir con el análisis de los objetivos alcanzados y las tareas que aun quedan pendientes.