Estonian Winter Schools in Computer Science    
Eesti arvutiteaduse talvekoolid
EWSCS 2001
EATTK 2001

Prof. José Oliveira

Departamento de Informática
Universidade do Minho, Braga, Portugal

Data Processing by Calculation


Most state-of-the-art information systems are based on the relational data model. Despite the calculus developed for this model, around thirty years ago, by Codd and others, relational databases are still designed and maintained in a fairly informal way. This has originated a world-wide data-legacy problem. More recently, this aging technology has even been challenged to scale-up to heterogeneous data-models such as those implicit in mark-up languages spreading over the Internet.

This series of lectures will address information system design from an alternative, formal viewpoint. Abstract data-models (instead of drawings or datagrams) are built to capture user requirements. Such abstractions are based on a calculus of data combinators which exhibit universal properties which help in reasoning about data-models. Data-model calculation enables not only data refinement but also data-transformation and migration. Thanks to the genericity of the underlying calculus, which stems from its polynomial type basis, some standard relational results are shown to extend polytypically, thus giving birth to a new field of research in information systems - that of "polytypic data-processing". This exhibits some potential to cope with the heterogeneous data sources which characterize modern Internet-based information system solutions.

The data combinators presented in these lectures are naturally expressed in a functional pointfree style. Several examples will be provided using the Haskell functional programming language.

Course materials

About the Speaker

Jose N. Oliveira completed his post-graduation in theoretical computer science in 1984, at Manchester University, UK. His undergraduate degree is from Porto University, where he studied hardware and software systems. Currently, he is an Associate Professor in the Department of Informatics at the University of Minho, Braga, Portugal, and a research partner for the Sidereus Ltd software house in Porto. Jose's main interests are in formal methods. He has been involved in several projects focussed on applying formal methods to software system design and re-engineering. On the academic side, he has worked on data refinement by calculation and generic programming.