Compiling Ask Constraints

  • Gregory J. Duck
  • María García de la Banda
  • Peter J. Stuckey
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3132)


In this paper we investigate how to extend a generic constraint solver that provides not only tell constraints (by adding the constraint to the store) but also ask tests (by checking whether the constraint is entailed by the store), with general ask constraints. Ask constraints are important for implementing constraint implication, extensible solvers using dynamic scheduling and reification. While the ask-test must be implemented by the solver writer, the compiler can extend this to provide ask behaviour for complex combinations of constraints, including constraints from multiple solvers. We illustrate the use of this approach within the HAL system.


Logic Program Solver Event Dynamic Schedule Constraint Solver Constraint Store 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    García de la Banda, M., Demoen, B., Marriott, K., Stuckey, P.J.: To the gates of HAL: a HAL tutorial. In: Hu, Z., Rodríguez-Artalejo, M. (eds.) FLOPS 2002. LNCS, vol. 2441, pp. 47–66. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  2. 2.
    Duck, G.J., Stuckey, P.J., García de la Banda, M., Holzbaur, C.: Extending arbitrary solvers with constraint handling rules. In: Miller, D. (ed.) Proceedings of the Fifth ACM SIGPLAN International Conference on Principles and Practice of Declarative Programming, pp. 79–90. ACM Press, New York (2003)CrossRefGoogle Scholar
  3. 3.
    Holzbaur, C., Stuckey, P.J., García de la Banda, M., Jeffery, D.: Optimizing compilation of constraint handling rules. In: Codognet, P. (ed.) Logic Programming: Proceedings of the 17th International Conference. LNCS, pp. 74–89. Springer, Heidelberg (2001)Google Scholar
  4. 4.
    Jaffar, J., Lassez, J.-L.: Constraint logic programming. In: Proc. Fourteenth ACM Symp. Principles of Programming Languages, pp. 111–119. ACM Press, New York (1987)Google Scholar
  5. 5.
    Jaffar, J., Maher, M., Marriott, K., Stuckey, P.J.: The semantics of constraint logic programs. Journal of Logic Programming 37(1-3), 1–46 (1998)zbMATHCrossRefMathSciNetGoogle Scholar
  6. 6.
    Saraswat, V.: Concurrent Constraint Programming Languages. PhD thesis, Carnegie- Mellon University (1989)Google Scholar
  7. 7.
    Schulte, C.: Programming deep concurrent constraint combinators. In: Pontelli, E., Santos Costa, V. (eds.) PADL 2000. LNCS, vol. 1753, pp. 215–229. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  8. 8.
    Ueda, K.: Guarded horn clauses. In: Shapiro, E. (ed.) Concurrent Prolog: Collected Papers, pp. 140–156. MIT Press, Cambridge (1987)Google Scholar
  9. 9.
    Van Hentenryck, P., Saraswat, V., Deville, Y.: Design, implementation, and evaluation of the constraint language cc(FD). Journal of Logic Programming 37(1-3), 139–164 (1998)zbMATHCrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2004

Authors and Affiliations

  • Gregory J. Duck
    • 1
  • María García de la Banda
    • 2
  • Peter J. Stuckey
    • 1
  1. 1.Department of Computer Science and Software EngineeringThe University of MelbourneAustralia
  2. 2.School of Computer Science and Software EngineeringMonash UniversityAustralia

Personalised recommendations