Skip to main content
Log in

The use of a strategy language for solving search problems

  • Published:
Annals of Mathematics and Artificial Intelligence Aims and scope Submit manuscript

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.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. K.R. Apt, A proof theoretic view of constraint programming, Fund. Inform. 34(3) (1998) 295-321.

    MATH  MathSciNet  Google Scholar 

  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).

  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. 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. 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.

  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.

  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.

  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.

  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.

  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).

  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. 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. 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. 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.

  15. C. Castro, Building constraint satisfaction problem solvers using rewrite rules and strategies, Fund. Inform. 34 (1998) 263-293.

    MATH  MathSciNet  Google Scholar 

  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.

  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.

  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. 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. 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).

  21. M. Clavel, Reflection in general logics, rewriting logic, and Maude, Ph.D. thesis, University of Navarre, Spain (1998).

    Google Scholar 

  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.

  23. F. Fages, Programmation Logique Par Contraintes, Cours de l'Ecole Polytechnique (Ellipses, Paris, France, 1996).

    Google Scholar 

  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. R.M. Haralick and G.L. Elliot, Increasing tree search efficiency for constraint satisfaction problems, Artif. Intell. 14 (1980) 263-313.

    Article  Google Scholar 

  26. ILOG S.A, ILOG Solver 4.0, User's Manual (May 1997).

  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. C. Kirchner, H. Kirchner and M. Vittek, ELAN Version 1.17 User Manual (CRIN & INRIA Lorraine, Nancy, France, 1st ed., 1995).

    Google Scholar 

  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. C. Kirchner and C. Ringeissen, Rule-based constraint programming, Fund. Inform. 34(3) (1998) 225-262.

    MATH  MathSciNet  Google Scholar 

  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. 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).

  33. V. Kumar, Algorithms for constraint-satisfaction problems: A survey, Artif. Intell. Magazine 13(1) (1992) 32-44.

    Google Scholar 

  34. A.K. Mackworth, Consistency in networks of relations, Artif. Intell. 8 (1977) 99-118.

    Article  MATH  Google Scholar 

  35. A.K. Mackworth, Constraint satisfaction, in: Encyclopedia of Artificial Intelligence, Vol. 1, ed.S.C. Shapiro (Addison-Wesley, 2nd ed., 1992).

  36. P. Marti and M. Rueher, A distributed cooperating constraints solving system, Internat. J. Artif. Intell. Tools 4(1-2) (1995) 93-113.

    Article  Google Scholar 

  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. J.Meseguer, Conditional rewriting logic as a unified model of concurrency, Theor. Comput. Sci. 96(1) (1992) 73-155.

    Article  MATH  MathSciNet  Google Scholar 

  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. 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. 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).

  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).

  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. E. Tsang, Foundations of Constraint Satisfaction (Academic Press, New York, 1993).

    Google Scholar 

  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.

  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).

  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. M. Zahn and W. Hower, Backtracking along with constraint processing and their time complexities, J. Exp. Theor. Artif. Intell. 8 (1996) 63-74.

    Article  Google Scholar 

  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 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Castro, C., Borovanský, P. The use of a strategy language for solving search problems. Annals of Mathematics and Artificial Intelligence 29, 35–64 (2000). https://doi.org/10.1023/A:1018900617693

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1018900617693

Navigation