A complete Assignment Algorithm and Its Application in Constraint Declarative Languages

An important property of answer generation strategies for functional logic programming (FLP) languages is the complete exploration of the solution space. Integrating constraints into FLP proves to be useful in many cases, as the resulting constraint functional logic programming (CFLP) offers more facilities and more efficient operational semantics. CFLP can be achieved using conditional rewrite systems with a narrowing-based operational semantics. A common idea to improve the efficiency of such operational semantics is to use specific algorithms from operations research as constraint solvers. If the algorithm does not return a complete set of solutions, the property of completeness might be lost. We present a real world timetabling problem illustrating this approach. We propose an algorithm, obtained as an integration of three known optimization algorithms for the linear assignment problem (LAP), enumerating solutions to the LAP in order of increasing weight, such that the answer generation is complete again. We show, how the narrowing process can be tailored to use this algorithm and provide an efficient way to solve the timetable generation problem.

Data and Resources

Additional Info

Field Value
Source https://hal.science/hal-00082787
Author Brauner, Nadia, Echahed, R., Finke, G., Gregor, H., Prost, F.
Maintainer CCSD
Last Updated May 10, 2026, 23:02 (UTC)
Created May 10, 2026, 23:02 (UTC)
Identifier hal-00082787
Language en
Rights https://about.hal.science/hal-authorisation-v1/
contributor Laboratoire Leibniz (Leibniz - IMAG) ; Université Joseph Fourier - Grenoble 1 (UJF)-Institut National Polytechnique de Grenoble (INPG)-Centre National de la Recherche Scientifique (CNRS)
creator Brauner, Nadia
date 2004-05-10T00:00:00
harvest_object_id 931675ee-7b52-428b-ba3e-541b45015704
harvest_source_id 3374d638-d20b-4672-ba96-a23232d55657
harvest_source_title test moissonnage SELUNE
metadata_modified 2025-09-27T00:00:00
set_spec type:UNDEFINED