Declarative Programming and Automatic Programme Transformation

 

El grupo de investigación de Programación Declarativa y Transformación Automática de Programas (DEC-tau) se creó, en Octubre de 2000, para propiciar la investigación y el desarrollo de métodos formales aplicados, en particular, a la integración de lenguajes declarativos multiparadigma y la transformación automática de los programas declarativos escritos en este tipo de lenguajes. Empleamos el calificativo ``multiparadigma' en un sentido amplio que engloba lenguajes que integran características lógicas, funcionales, así como lógico difusas.

En los últimos años hemos centrado nuestro interés en el diseño de lenguajes lógicos difusos que incorporen entre sus recursos expresivos el tratamiento de información imprecisa de forma natural. En concreto, hemos desarrollado un lenguaje basado en unificación por similaridad, que denominamos Bousi~Prolog (Prolog BOrroso con Unificación por SImilaridad), del que existe una implementación de alto nivel y una implementación de bajo nivel que se apoya en un prototipo de máquina de Warren con similaridad (SWAM). Además, nuestro grupo esta implementado un sistema para la ejecución de programas multiadjuntos que denominamos FLOPER (acrónimo de Fuzzy LOgic Programming Environment for Research).

Es de reseñar que ya se han producido las primeras aplicaciones prácticas de estos lenguajes: Bousi~Prolog se ha utilizado para la catalogación de textos y FLOPER para manipular texto XML, implementando una extensión difusa de los lenguajes XPath y XQuery.

 

Líneas de investigación

 

Integración de Lenguajes Lógicos y Funcionales

La programación Lógico-Funcional (LF) pretende la integración de los paradigmas lógico y funcional puros para obtener lenguajes más expresivos y eficientes. Puesto que la semántica operacional estándar de estos lenguajes integrados se basa en (alguna variante) del estrechamiento (narrowing), nuestro interés se centra en aspectos formales y de implementación de estrategias de estrechamiento así como en la combinación del estrechamiento con otros mecanismos operacionales.

Diseño e Implementación de Lenguages Lógicos Difusos

Esta línea de investigación persigue el diseño e implementación de lenguages lógicos que incluyan características provenientes de la lógica difusa, con el fin de permitir tratar la imprecisión con técnicas declarativas. Nos centramos en desarrollo de lenguajes lógicos basados en unificación débil (Bousi~Prolog) y en lógica multiadjunta (FLOPER) y también en el estudio de sus propiedades formales y aplicaciones.

Transformación y Especialización de Programas

El objetivo de la transformación de programas consiste en derivar un programa semán-ticamente equivalente a otro programa inicial pero con mejor comportamiento para algunas propiedades (e.g. eficiencia). La evaluación parcial (EP) es una técnica de transformación de programas que genera versiones especializadas de un programa con respecto a unas determinadas entradas. En nuestro grupo hemos realizado trabajos pioneros en este campo. Por ejemplo, hemos desarrollado un transformador de programas LF basado en reglas+estrategias y algoritmos refinandos de control de EP para este tipo de lenguajes. También se han definido técnicas de transformación para programas lógicos multiadjuntos y estudiado sus propiedades formales.

 


Información de contacto

Dr. Pascual Julián Iranzo
Esta dirección de correo electrónico está siendo protegida contra los robots de spam. Necesita tener JavaScript habilitado para poder verlo.
Tel.: (+34) 926 295 300 ext. 3716
Fax: (+34) 926 295 354

 

Página web

http://dectau.uclm.es/