Skip to main content

Integration and Optimization of Rule-Based Constraint Solvers

  • Conference paper
Logic Based Program Synthesis and Transformation (LOPSTR 2003)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 3018))

Abstract

One lesson learned from practical constraint solving applications is that constraints are often heterogeneous. Solving such constraints requires a collaboration of constraint solvers. In this paper, we introduce a methodology for the tight integration of CHR constraint programs into one such program. CHR is a high-level rule-based language for writing constraint solvers and reasoning systems. A constraint solver is well-behaved if it is terminating and confluent. When merging constraint solvers, this property may be lost. Based on previous results on CHR program analysis and transformation we show how to utilize completion to regain well-behavedness. We identify a class of solvers whose union is always confluent and we show that for preserving termination such a class is hard to find. The merged and completed constraint solvers may contain redundant rules. Utilizing the notion of operational equivalence, which is decidable for well-behaved CHR programs, we present a method to detect redundant rules in a CHR program.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Abdennadher, S.: Operational semantics and confluence of constraint propagation rules. In: Smolka, G. (ed.) CP 1997. LNCS, vol. 1330, Springer, Heidelberg (1997)

    Chapter  Google Scholar 

  2. Abdennadher, S., Frühwirth, T.: On completion of constraint handling rules. In: Maher, M.J., Puget, J.-F. (eds.) CP 1998. LNCS, vol. 1520, p. 25. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

  3. Abdennadher, S., Frühwirth, T.: Operational equivalence of constraint handling rules. In: Jaffar, J. (ed.) CP 1999. LNCS, vol. 1713, pp. 43–57. Springer, Heidelberg (1999)

    Google Scholar 

  4. Abdennadher, S., Frühwirth, T.: Using program analysis for integration and optimization of rule-based constraint solvers. In: Onziemes Journees Francophones de Programmation Logique et Programmation par Contraintes (JFPLC 2002) (2002)

    Google Scholar 

  5. Abdennadher, S., Frühwirth, T., Meuss, H.: Confluence and semantics of constraint simplification rules. Constraints Journal 4(2) (May 1999)

    Google Scholar 

  6. Arts, T., Giesl, J., Ohlebusch, E.: Modular termination proofs for rewriting using dependency pairs. Journal of Symbolic Computation 34(1), 21–58 (2002)

    Article  MathSciNet  Google Scholar 

  7. Baader, F., Schulz, K.U.: Combining constraint solving. In: Comon, H., Marché, C., Treinen, R. (eds.) CCL 1999. LNCS, vol. 2002, pp. 104–158. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  8. Castro, C., Monfroy, E.: Basic operators for solving constraints via collaboration of solvers. In: Campbell, J., Roanes-Lozano, E. (eds.) AISC 2000. LNCS (LNAI), vol. 1930, p. 142. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  9. Frühwirth, T.: Theory and practice of constraint handling rules. Journal of Logic Programming 37(1-3), 95–138 (1998)

    Article  MATH  MathSciNet  Google Scholar 

  10. Frühwirth, T.: Proving termination of constraint solver programs. In: Apt, K.R., Kakas, A.C., Monfroy, E., Rossi, F. (eds.) Compulog Net WS 1999. LNCS (LNAI), vol. 1865, p. 298. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  11. Frühwirth, T.: Constraint handling rules web pages (2004), www.informatik.uniulm.de/pm/mitarbeiter/fruehwirth/chr-intro.html

  12. Frühwirth, T., Abdennadher, S.: Essentials of Constraint Programming. Springer, Heidelberg (2003)

    Google Scholar 

  13. Gramlich, B.: On termination and confluence properties of disjoint and constructorsharing conditional rewrite systems. Theoretical Computer Science 165(1), 97–131 (1996)

    Article  MATH  MathSciNet  Google Scholar 

  14. Granvilliers, L., Monfroy, E., Benhamou, F.: Cooperative solvers in constraint programming: A short introduction. In: Workshop on Cooperative Solvers in Constraint Programming (CoSolv) at CP 2001 (2001)

    Google Scholar 

  15. Hofstedt, P.: Better communication for tighter cooperation. In: Palamidessi, C., Moniz Pereira, L., Lloyd, J.W., Dahl, V., Furbach, U., Kerber, M., Lau, K.-K., Sagiv, Y., Stuckey, P.J. (eds.) CL 2000. LNCS (LNAI), vol. 1861, p. 342. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  16. Monfroy, E.: The constraint solver collaboration language of BALI. In: Frontiers of Combining Systems 2. Studies in Logic and Computation, vol. 7, Research Studies Press/Wiley (2000)

    Google Scholar 

  17. Ohlebusch, E.: Modular properties of composable term rewriting systems. Journal of Symbolic Computation 20(1) (1995)

    Google Scholar 

  18. Tinelli, C., Ringeissen, C.: Unions of non-disjoint theories and combinations of satisfiability procedures. Theoretical Computer Science 290(1), 291–353 (2003)

    Article  MATH  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2004 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Abdennadher, S., Frühwirth, T. (2004). Integration and Optimization of Rule-Based Constraint Solvers. In: Bruynooghe, M. (eds) Logic Based Program Synthesis and Transformation. LOPSTR 2003. Lecture Notes in Computer Science, vol 3018. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-25938-1_17

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-25938-1_17

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-22174-6

  • Online ISBN: 978-3-540-25938-1

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics