Declarative Programming and Automatic Program Transformation
The Declarative Programming and Automatic Program Transformation (DEC-tau) research group was created, in October 2000, to promote the research and development of formal methods applied, in particular, to the integration of declarative multiparadigm programming languages and to the automatic transformation of declarative programs written in this type of languages. We use the term "multiparadigm" in a broad sense encompassing languages that integrate logical, functional, as well as fuzzy logic characteristics.
In the last years we have focused our interest in the design of fuzzy logic programming languages that incorporate among their expressive resources the treatment of uncertain information in a natural way. Specifically, we have developed a language based on unification by similarity, which we call Bousi~Prolog (Bousi is the spanish acronym of "Fuzzy Prolog with Unification by Similarity"). There exists a high level implementation and a low level implementation that is based on a prototype of a Similarity Warren Abstract Machine with (SWAM). In addition, our group has implemented a system for the execution of multi-adjoint logic programs called FLOPER (Fuzzy LOgic Programming Environment for Research). It is worth mentioning that the first practical applications of these languages have already been made: Bousi~Prolog has been used for text cataloging and FLOPER to manipulate XML text, implementing fuzzy extensions of the XPath and XQuery languages.
At the present time, we are combining both approaches in the design and implementation of the fully integrated, fuzzy logic programming language called FASILL.

Research lines

Design and Implementation of Fuzzy Logic Programming Languages
This research line pursues the design and implementation of logic programming languages which include characteristics coming from fuzzy logic, with the aim of dealing with vagueness and uncertainty by using declarative techniques. The group focuses on the development of logic programming based on weak unification (Bousi~Prolog) and on multi-adjoint logic (FLOPER), and also on the study of their formal properties and applications. 
Specialisation and Program Transformation.
Given a program, the goal of program transformation is to derive a new program that is semantically equivalent to the initial one but with better behaviour with regards certain properties (e.g. efficiency). Partial Evaluation (PE), also called Program Specialisation, is an automatic program transformation technique which generates specialised versions of programs with regard to a determined input. The DEC-tau research group has carried out pioneering work in this field. It has, for example, developed a program transformer based on rules+strategies for a functional logic programming language and refined PE control algorithms for this type of languages. It has also defined transformation techniques for multi-adjoint logic languages and studied their formal properties. 

Contact information

Dr. Pascual Julián Iranzo
Tel.: (+34) 926 295 300 ext. 3716
Fax: (+34) 926 295 354