An efficient algorithm of logic programming with constraint hierarchy

  • Tsutsumi Fujio
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 845)


Constraint Logic Programming (CLP) is an extension of Logic Programming to include constraints. In the presence, CLP is a powerful theoretical concept solving problems with constraints. However, most CLP languages allow the programmer to specify only constraints that must hold strictly. In many applications, such as machine scheduling, image recognition and interactive graphics, it is necessary to express preferences as well as strict requirements. To describe such preferences declaratively, HCLP has been proposed. HCLP is a logic language that introduces preference constraint as constraints with label of its strength. Unfortunately the computation method for HCLP proposed in [5] cannot calculate the most desirable answers that satisfy preferences. If we compute the best answers by using the method, it must compute all the answers one by one. In this paper we propose efficient algorithm for HCLP using preference constraints positively. Our algorithm is guaranteed to compute only a subset of all the answers, to obtain the best answers. We also proof the least fixed point characterization and the termination of the algorithm.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    Aiba, A. and Furukawa, K.: On Constraint Programming—Principally Constraint Logic Programming, Journal of Japanese Society for Artificial Intelligence, Vol. 6, No. 1, pp. 47–59, 1991 (in Japanese).Google Scholar
  2. [2]
    Bancilhon, F.: Naive Evaluation of Recursively Defined Relations, On Knowledge Base Management Systems—Integrating Database and AI Systems, Brodie and Mylopoulus, Eds., Springer-Verlag.Google Scholar
  3. [3]
    Beeri, C. and Ramakrishnan,R.: On the Power of Magic, Proc. 6th PODS., pp. 269–283, San Diego, 1987.Google Scholar
  4. [4]
    Bird, R. S.: The Promotion and Accumulation Strategies in Transformational Programming, ACM Transaction on Programming Languages and Systems, Vol. 6, No. 4, pp. 487–504, 1984.Google Scholar
  5. [5]
    Borning, A., et. al.: Constraint Hierarchies and Logic Programming, Proc. of ICLP'89, pp. 149–164, 1989.Google Scholar
  6. [6]
    Cohen, J.: Constraint Logic Programming Languages, Comm. ACM, Vol. 33, No. 7, pp. 52–68, 1990.Google Scholar
  7. [7]
    Colmerauer, A.: An Introduction of PrologIII, Comm. ACM, Vol. 33, No. 7, pp. 69–90, 1990.Google Scholar
  8. [8]
    Dincbas, M., et. al.: The Constraint Logic Programming Language CHIP, Proc. of FGCS'88, pp. 693–702, 1988.Google Scholar
  9. [9]
    Fox, M. S.: Constraint—Directed Search: A Case Study of Job-Shop Scheduling, Morgan Kaufmann pub., 1987.Google Scholar
  10. [10]
    Hattori, Takashi: Constraint Logic Programming with Priority., Computer Software (Journal of Japan Society for Software Science and Technology), Vol. 9, No. 6, pp. 48–57, 1992(in Japanese).Google Scholar
  11. [11]
    Ito, Kenji et. al.: A Scheduling System for Berth Assignments Based on a Hierarchical Constraint—Directed Search, Journal of Japanese Society for Artificial Intelligence, Vol. 6, No. 1, pp. 60–71, 1991 (in Japanese).Google Scholar
  12. [12]
    Kemp, D. B., et. al.: Propagating Constraints in Recursive Deductive Databases, North American Logic Programming Conference, 1989.Google Scholar
  13. [13]
    Le Provost, T. and Wallace, M.: Domain Independent Propagation, Proc. of FGCS'92, pp. 1004–1011, 1992.Google Scholar
  14. [14]
    Ostroff, J. S.: Constraint Logic Programming for Reasoning About Discrete Event Processes, Journal of Logic Programming, Vol. 11, No. 3&4, pp. 243–270, 1991.Google Scholar
  15. [15]
    Ullman, J. D.: Principles of database and knowledge-base systems vol. 1 and vol. 2, Computer Science Press, 1989.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1994

Authors and Affiliations

  • Tsutsumi Fujio
    • 1
  1. 1.Communication & Information Research LaboratoryCRIEPITokyoJapan

Personalised recommendations