News Archives

Implementation issues in coupling a logic programming system with a database system

September 22, 2005

  • Date: Thursday, Sep. 22, 2005 
  • Time: 11:00-12:15pm. 
  • Place: Woodward 149

Prof. Michel Ferreira
Departamento de Ciencia de Computadores Faculdade de Ciencias da Universidade do Porto Porto, Portugual

Logic programming and relational databases have common foundations based on First Order Logic. By coupling both paradigms, we can combine the efficiency and safety of databases in dealing with large amounts of data with the higher expressive power of logic and, thus, build more powerful systems. Although much work has been developed and described in the area of logic programming and relational databases, there are very few references which regard implementation alternatives in coupling a logic system with a relational database. In this talk, we will discuss the impact of using different approaches for coupling a Prolog system (Yap) with a relational database system (MySQL). As we will see, with current implementations the communication architecture is not tight enough to support a completely transparent use of extensionally (or relationally) defined predicates in the logic program. Such an example is the cut operation, when it is used to prune database predicates. We will address this problem and describe the solution implemented in the Yap/MySQL coupled system. We will end by describing a traffic characterization application that is being developed and that takes advantage of the logic and database features.