7th International Workshop on## Deductive Databases and Logic Programming - DDLP'99

2nd International Workshop on## Optimization and Simulation of Complex Industrial Systems.

Extensions and Applications of Constraint-Logic Programming - OSC'99

## Invited Talks

## Slim Abdennadher (Univ. Munich, Germany)

We first introduce the basic ideas behind the family of constraint logic programming languages. Then we give a motivating example, syntax and semantics of

Solving Combinatorial Optimization Problems using Constraint Handling RulesConstraint Handling Rules, a special purpose language that will allow you to specify and implement constraint solvers at a high level of abstraction.

In this way, we will present the most common constraint domain and its solver:finite domains for scheduling.

The application we will demonstrate is a system solving thetimetabling problem of universities. Timetabling the courses offered at a department of a University requires the processing of hard and soft constraints.Hard constraintsare conditions that must be satisfied,soft constraintshowever may be violated, but should be satisfied as much as possible. In this talk, we show how to model the timetabling problem as a partial constraint satisfaction problem and give a concise finite domain solver implemented with Constraint Handling Rules that, by performing soft constraint propagation, allows for making soft constraints an active part of the problem solving process.

## Henning Christiansen (Roskilde University, Denmark)

Constraints solvers and constraints handling rules are a wellcome extension to logic programming that provides an enhanced expressibility and improved computational behaviour. In this talk we consider the representation of

Integrity Constraints & Constraint Logic Programmingdatabase integrity constraintsasconstraints in logic programming.

The constraint solver provides a partial evaluation of the integrity constraint leading statements about, e.g., a particular database, a particular update (similarly to earlier methods called simplification), or a particular query which can be read as an intentional answer.

Typical integrity constraints are global statements about the database and thus inherently inefficient to evaluate for a database update. The use of constraint logic provides anincremental evaluationof integrity constraints, typically removing one order of magnitude compared to a full evaluation of integrity constraints for each update.