Advertisement

The use of a strategy language for solving search problems

  • Carlos Castro
  • Peter Borovanský
Article

Abstract

The ELAN language implements computational systems, a concept that combines rewriting logic with a description of strategies. It can be used to specify and execute non-deterministic rule-based computation for solving various kinds of search problems. This paper presents several examples illustrating different features of the ELAN strategy language from a simple search problem to solving constrained search problems. Concurrent strategies and ELAN process control facilities are illustrated by prototyping the cooperation of solvers.

rewriting logic strategies computational systems constraint satisfaction problems 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [1]
    K.R. Apt, A proof theoretic view of constraint programming, Fund. Inform. 34(3) (1998) 295-321.MATHMathSciNetGoogle Scholar
  2. [2]
    H. Beringer and B. DeBacker, Combinatorial problem solving in constraint logic programming with cooperative solvers, in: Logic Programming: Formal Methods and Practical Applications, eds. C. Beierle and L. Plümer, Studies in Computer Science and Artificial Intelligence (North-Holland, Amsterdam, 1995).Google Scholar
  3. [3]
    A. Bockmayr and T. Kasper, Branch-and-Infer: A unifying framework for integer and finite domain constraint programming, INFORMS J. Comput. 10(3) (1998) 287-300; also available as Technical Report MPI-I-97-2-008 of the Max Planck Institut für Informatik, Saarbrücken, Germany.Google Scholar
  4. [4]
    P. Borovanský, Implementation of higher-order unification based on calculus of explicit substitutions, in: Proceedings of the SOFSEM'95: Theory and Practice of Informatics, eds. M. Bartošek, J. Staudek, and J. Wiedermann, Lecture Notes in Computer Science, Vol. 1012 (Springer, Berlin, 1995) pp. 363-368.Google Scholar
  5. [5]
    P. Borovanský, Le contrôle de la réécriture: étude et implantation d'un formalisme de stratégies, thèse de Doctorat d'Université, Université Henri Poincaré, Nancy, France (October 1998); also available as Technical Report 98-T-326 of the Laboratoire Lorrain de Recherche en Informatique et ses Applications, LORIA.Google Scholar
  6. [6]
    P. Borovanský and C. Castro, Cooperation of constraint solvers: using the new process control facilities of ELAN, in: Proceedings of The Second International Workshop on Rewriting Logic and its Applications, WRLA'98, eds. C. Kirchner and H. Kirchner, Electronic Notes in Theoretical Computer Science, Vol. 15, Pont-à-Mousson, France (September 1998) pp. 379-398; also available as Technical Report 98-R-305 of the Laboratoire Lorrain de Recherche en Informatique et ses Applications, LORIA.Google Scholar
  7. [7]
    P. Borovanský, C. Kirchner and H. Kirchner, Controlling rewriting by rewriting, in: Proceedings of the 1st International Workshop on Rewriting Logic and its Applications, RWLA'96, ed. J. Meseguer, Asilomar, Pacific Grove, CA, USA, September 1996, Electronic Notes in Theoretical Computer Science, Vol. 4.Google Scholar
  8. [8]
    P. Borovanský, C. Kirchner, and H. Kirchner, Strategies and rewriting in ELAN, in: Workshop on Strategies, Proceedings of the 14th International Conference on Automated Deduction, CADE'97, Townsville, Australia (July 1997); also available as Technical Report 97-R-126 of the Centre de Recherche en Informatique de Nancy, CRIN.Google Scholar
  9. [9]
    P. Borovanský, C. Kirchner and H. Kirchner, A functional view of rewriting and strategies for a semantics of ELAN, in: The Third Fuji International Symposium on Functional and Logic Programming, eds. M. Sato and Y. Toyama, Kyoto, Japan, April 1998 (World-Scientific, 1999) pp. 143-167.Google Scholar
  10. [10]
    P. Borovanský, C. Kirchner, H. Kirchner, P.-E. Moreau and C. Ringeissen, An overview of ELAN, in: Proceedings of The Second International Workshop on Rewriting Logic and its Applications, WRLA'98, Pont-à-Mousson, France, September 1998, Electronic Notes in Theoretical Computer Science, Vol. 15 (1998).Google Scholar
  11. [11]
    P. Borovanský, C. Kirchner, H. Kirchner, P.-E. Moreau and M. Vittek, ELAN Version 3.00 User Manual (CRIN & INRIA Lorraine, Nancy, France, 1st ed., 1998).Google Scholar
  12. [12]
    M. Bruynooghe and R. Venken, Backtracking, in: Encyclopedia of Artificial Intelligence, Vol. 1, ed. S.C. Shapiro (Addison-Wesley, Reading, MA, 2nd ed. 1992).Google Scholar
  13. [13]
    Y. Caseau and F. Laburthe, Introduction to the CLAIRE programming language, Département Mathématiques et Informatique, Ecole Normale Supérieure, Paris, France (September 1996).Google Scholar
  14. [14]
    C. Castro, Solving binary CSP using computational systems, in: Proceedings of The First International Workshop on Rewriting Logic and its Applications, RWLW'96, ed. J. Meseguer, Asilomar, Pacific Grove, CA, USA, September 1996, Electronic Notes in Theoretical Computer Science, Vol. 4, pp. 245-264; also available as Technical Report 96-R-190 of the Centre de Recherche en Informatique de Nancy, CRIN.Google Scholar
  15. [15]
    C. Castro, Building constraint satisfaction problem solvers using rewrite rules and strategies, Fund. Inform. 34 (1998) 263-293.MATHMathSciNetGoogle Scholar
  16. [16]
    C. Castro, COLETTE, prototyping CSP solvers using a rule-based language, in: Proceedings of The Fourth International Conference on Artificial Intelligence and Symbolic Computation, Theory, Implementations and Applications, AISC'98, eds. J. Calmet and J. Plaza, Lecture Notes in Artificial Intelligence, Vol. 1476, Plattsburgh, NY, USA (September 1998) pp. 107-119; also available as Technical Report 98-R-304 of the Laboratoire Lorrain de Recherche en Informatique et ses Applications, LORIA.Google Scholar
  17. [17]
    C. Castro, Une approche déductive de la résolution de problèmes de satisfaction de contraintes, thèse de Doctorat d'Université, Université Henri Poincaré, Nancy, France (December 1998); also available as Technical Report 98-T-315 of the Laboratoire Lorrain de Recherche en Informatique et ses Applications, LORIA.Google Scholar
  18. [18]
    C. Castro and E. Monfroy, A control language for designing CSP solvers, in: Proceedings of The Andrei Ershov International Conference, Perspectives of Systems Informatics, Novosibirsk, Akademgorodok, Russia, July 1999, Lecture Notes in Computer Science, Vol. 1755 (Springer, Berlin, 1999) pp. 402-415.Google Scholar
  19. [19]
    C. Castro and E. Monfroy, Basic operators for solving constraints via collaboration of solvers, in: Proceedings of The Fifth International Conference on Artificial Intelligence and Symbolic Computation, AISC'2000, Madrid, Spain, July 2000, Lecture Notes in Artificial Intelligence (Springer, Berlin, to appear); also available as Technical Report 2000/3 of the Departamento de Informática de la Universidad Técnica Federico Santa María, Valparaíso, Chile.Google Scholar
  20. [20]
    H. Cirstea and C. Kirchner, Theorem proving using computational systems: The case of the B Predicate prover, in: Proceedings of The International Conference on Constraints in Computational Logics, Dagstuhl, Germany (September 1997).Google Scholar
  21. [21]
    M. Clavel, Reflection in general logics, rewriting logic, and Maude, Ph.D. thesis, University of Navarre, Spain (1998).Google Scholar
  22. [22]
    M. Clavel, F. Durán, S. Eker, P. Lincoln and J. Meseguer, Metalevel computation in maude, in: Proceedings of the 2nd International Workshop on Rewriting Logic and its Applications, RWLA'98, eds. C. Kirchner and H. Kirchner, Pont-à-Mousson, France, Electronic Notes in Theoretical Computer Science, Vol. 15 (September 1998) pp. 3-24.Google Scholar
  23. [23]
    F. Fages, Programmation Logique Par Contraintes, Cours de l'Ecole Polytechnique (Ellipses, Paris, France, 1996).Google Scholar
  24. [24]
    T. Frühwirth, Constraint handling rules, in: Constraint Programming: Basic and Trends. Selected Papers of the 22nd Spring School in Theoretical Computer Sciences, ed. A. Podelski, Chatillon-surseine, France, May 1994, Lecture Notes in Computer Science, Vol. 910 (Springer, Berlin, 1994) pp. 90-107.Google Scholar
  25. [25]
    R.M. Haralick and G.L. Elliot, Increasing tree search efficiency for constraint satisfaction problems, Artif. Intell. 14 (1980) 263-313.CrossRefGoogle Scholar
  26. [26]
    ILOG S.A, ILOG Solver 4.0, User's Manual (May 1997).Google Scholar
  27. [27]
    C. Kirchner, H. Kirchner and M. Vittek, Designing constraint logic programming languages using computational systems, in: Principles and Practice of Constraint Programming, The Newport Papers, eds. P.V. Hentenryck and V. Saraswat (MIT Press, Cambridge, MA, 1995) chapter 8, pp. 131-158.Google Scholar
  28. [28]
    C. Kirchner, H. Kirchner and M. Vittek, ELAN Version 1.17 User Manual (CRIN & INRIA Lorraine, Nancy, France, 1st ed., 1995).Google Scholar
  29. [29]
    C. Kirchner, C. Lynch and C. Scharff, A fine-grained concurrent completion procedure, in: Proceedings of The 6th Conference on Rewriting Techniques and Applications, ed. H. Ganzinger, Kaiserslautern, Germany, September 1996, Lecture Notes in Computer Science, Vol. 1103 (Springer, Berlin, 1996) pp. 3-17.Google Scholar
  30. [30]
    C. Kirchner and C. Ringeissen, Rule-based constraint programming, Fund. Inform. 34(3) (1998) 225-262.MATHMathSciNetGoogle Scholar
  31. [31]
    H. Kirchner and P.-E. Moreau, Prototyping completion with constraints using computational systems, in: Proceedings of The 5th Conference on Rewriting Techniques and Applications, Montreal, Canada, ed. J. Hsiang, Lecture Notes in Computer Science, Vol. 914 (Springer, Berlin, 1995) pp. 438-443.Google Scholar
  32. [32]
    H. Kirchner and P.-E. Moreau, A reflective extension of ELAN, in: Proceedings of The First International Workshop on Rewriting Logic and its Applications, RWLW'96, ed. J. Meseguer, Asilomar, Pacific Grove, CA, USA, September 1996, Electronic Notes in Theoretical Computer Science, Vol. 4 (1996).Google Scholar
  33. [33]
    V. Kumar, Algorithms for constraint-satisfaction problems: A survey, Artif. Intell. Magazine 13(1) (1992) 32-44.Google Scholar
  34. [34]
    A.K. Mackworth, Consistency in networks of relations, Artif. Intell. 8 (1977) 99-118.MATHCrossRefGoogle Scholar
  35. [35]
    A.K. Mackworth, Constraint satisfaction, in: Encyclopedia of Artificial Intelligence, Vol. 1, ed.S.C. Shapiro (Addison-Wesley, 2nd ed., 1992).Google Scholar
  36. [36]
    P. Marti and M. Rueher, A distributed cooperating constraints solving system, Internat. J. Artif. Intell. Tools 4(1-2) (1995) 93-113.CrossRefGoogle Scholar
  37. [37]
    N. Martì-Oliet and J. Meseguer, Rewriting logic as a logical and semantical framework, Technical report, SRI International, Computer Science Laboratory, Menlo Park, CA, USA (May 1993).Google Scholar
  38. [38]
    J.Meseguer, Conditional rewriting logic as a unified model of concurrency, Theor. Comput. Sci. 96(1) (1992) 73-155.MATHMathSciNetCrossRefGoogle Scholar
  39. [39]
    E. Monfroy, An Environment for Designing/Executing Constraint Solver Collaborations, Rapport de Recherche 96-R-044, Centre de Recherche en Informatique de Nancy, CRIN, Vandoeuvre-lès-Nancy, France (February 1996).Google Scholar
  40. [40]
    E. Monfroy, Collaboration de solveurs pour la programmation logique à contraintes, thèse de Doctorat d'Université, Université Henri Poincaré, Nancy, France (November 1996); also available in English.Google Scholar
  41. [41]
    E. Monfroy, The Constraint Solver Collaboration Language of BALI, Short version of Research Report 96-R-044, Centre de Recherche en Informatique de Nancy, CRIN, Vandoeuvre-lès-Nancy (February 1996/1997).Google Scholar
  42. [42]
    E. Monfroy, The constraint solver collaboration language of BALI, in: Proceedings of the Second International Workshop Frontiers of Combining Systems, FroCoS'98, Amsterdam, The Netherlands (1998).Google Scholar
  43. [43]
    C. Ringeissen, Prototyping combination of unification algorithms with the ELANrule-based programming language, in: Proceedings of The 8th Conference on Rewriting Techniques and Applications, Lecture Notes in Computer Science, Vol. 1232 (Springer, Berlin, 1997) pp. 323-326.Google Scholar
  44. [44]
    E. Tsang, Foundations of Constraint Satisfaction (Academic Press, New York, 1993).Google Scholar
  45. [45]
    E. Visser and Z. Benaissa, A core language for rewriting, in: Proceedings of the 2nd International Workshop on Rewriting Logic and its Applications, RWLA'98, eds. C. Kirchner and H. Kirchner, Pont-à-Mousson, France, September 1998, Electronic Notes in Theoretical Computer Science, Vol. 15 (1998) pp. 25-44.Google Scholar
  46. [46]
    E. Visser and B. Luttik, Specification of rewriting strategies, in: Proceedings of International Workshop on Theory and Practice of Algebraic Specifications ASF+SDF 97, Amsterdam, The Netherlands (September 1997).Google Scholar
  47. [47]
    M. Vittek, ELAN: Un cadre logique pour le prototypage de langages de programmation avec contraintes, thèse de Doctorat d'Université, Université Henri Poincaré, Nancy, France (October 1994).Google Scholar
  48. [48]
    M. Zahn and W. Hower, Backtracking along with constraint processing and their time complexities, J. Exp. Theor. Artif. Intell. 8 (1996) 63-74.CrossRefGoogle Scholar
  49. [49]
    J. Zhou, Calcul de plus petits produits cartésiens d'intervalles: application au problème d'ordonnancement d'atelier, Ph.D. thesis, Université de la Mediterranée, Aix-Marseille II, France (March 1997).Google Scholar

Copyright information

© Kluwer Academic Publishers 2000

Authors and Affiliations

  • Carlos Castro
    • 1
  • Peter Borovanský
    • 2
  1. 1.Departamento de InformáticaUniversidad Técnica Federico Santa MaríaValparaísoChile E-mail
  2. 2.Institute of InformaticsMFF UK Mlynská dolinaBratislavaSlovakia E-mail

Personalised recommendations