CSL (Part I): Modelling General N-ary, Logical CSPs
Joc Cing Tay, S.Y. Huang, Chai Hiok Quek · International Conference on Tools with Artificial Intelligence · 1997
This paper examines and details the motivations and design of a constraint speciJication language (or CSL) for user-defined constraints. Many approaches to constraint programming are based on as well as extended from the logic programming paradigm. Some of the better known constraint logic programming languages and systems are CLP [9][5], PROLOG III [I] and CHIP [2]. In these languages, unijication in conventional logic programming is replaced by constraint satisfaction. Numerical constraints are usually being focused on. The technique of constraint satisfaction is therefore hidden from the user. The motivation for developing CSL is not in adding to the myriad of available constraint programming languages, neither is CSL a complete stand-alone package for solving CSPs (though it has a mode that allows it to do so). Its main purpose, is simpler. CSL serves to enhance the constraint satisfaction aspect of these languages by providing an expressive algebra for describing current definitions of general CSPs as well as extended versions. The descriptions spectjied in the CSL syntax, are eficiently compiled into data structures that are transparently accessed by algorithms normally associated with only binary CSPs.