=ADD= =author= Schreiner; Wolfgang + Ida; Tetsuo + Marin; Mircea =title= CFLP: a Mathematica Implementation of a Distributed Constraint Solving System =number= 99-35 =month= 12 =year= 1999 =url= ftp://ftp.risc.uni-linz.ac.at/pub/techreports/1999/99-35.ps.gz =abstract= The need for combining and making cooperate various constraint solvers is widely recognized. Such an integrated system would allow solving problems that can not be solved by a single solver. CFLP (Constrained Functional Logic Programming language) is a distributed software system consisting of a functional logic interpreter running on one machine and a number of constraint solving engines running on other machines. The interpreter is based on a deterministic version of a lazy narrowing calculus which was extended in two main directions: (a) the possibility to specify explicit OR-parallelism, and (b) the possibility to specify constraints over various domains. The OR parallel features of the interpreter allow the decomposition of the solution space into different subspaces denoted by varous sets of constraints; the individual sets are solved by different constraint solving engines in parallel and joined together to form the total solution set. This allows to investigate problems with large solution spaces using the computational power available in large computer networks. The system is written entirely in Mathematica and uses the MathLink protocol for inter-process communication. The current implementation can solve problems expressible in functional logic and involving constraints such as linear, polynomial and differential equations. =keywords= functional programming, logic programming, constraint solving, distributed systems, Mathematica. =howpublished= IMS '99, Third International Mathematica Symposium, Hagenberg, Austria, August 23-25, 1999. =location= 2 =owner= 2 =source= 3 =reftype= 14