Skip to main content

Specialising Finite Domain Programs Using Polyhedra

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

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

Abstract

A procedure is described for tightening domain constraints of finite domain logic programs by applying a static analysis based on convex polyhedra. Individual finite domain constraints are over-approximated by polyhedra to describe the solution space over n integer variables as an n dimensional polyhedron. This polyhedron is then approximated, using projection, as an n dimensional bounding box that can be used to specialise and improve the domain constraints. The analysis can be implemented straightforwardly and an empirical evaluation of the specialisation technique is given.

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. Apt, K.R.: A Proof Theoretic View of Constraint Programming. Fundamenta Informaticae 33, 1–27 (1998)

    MathSciNet  Google Scholar 

  2. Bagnara, R.: Data-flow Analysis for Constraint Logic-based Languages. PhD thesis, Universitá di Pisa, TD-1/97 (1997)

    Google Scholar 

  3. Benoy, F., King, A.: Inferring Argument Size Relationships with CLP(R). In: Gallagher, J.P. (ed.) LOPSTR 1996. LNCS, vol. 1207, pp. 204–224. Springer, Heidelberg (1997)

    Google Scholar 

  4. Bossi, A., Gabbrielli, M., Levi, G., Martelli, M.: The s-semantics Approach: Theory and Applications. Journal of Logic Programming 19-20, 149–197 (1994)

    Article  MathSciNet  Google Scholar 

  5. Cousot, P., Cousot, R.: Comparing the Galois Connection and Wide- ning/Narrowing Approaches to Abstract Interpretation. Technical Report LIENS- 92-16, Laboratoire d’Informatique de l’Ecole Normal Superiéure (1992)

    Google Scholar 

  6. Cousot, P., Halbwachs, N.: Automatic Discovery of Restraints among Variables of a Program. In: Proceedings of the Fifth Annual ACM Symposium on Principles of Programming Languages, pp. 84–97 (1978)

    Google Scholar 

  7. Harvey, H., Stuckey, P.J., Borning, A.: Compiling Constraint Solving Using Projection. In: Smolka, G. (ed.) CP 1997. LNCS, vol. 1330, pp. 491–505. Springer, Heidelberg (1997)

    Chapter  Google Scholar 

  8. Horspool, R.N.: Analyzing List Usage in Prolog Code. University of Victoria (1990)

    Google Scholar 

  9. Howe, J.M., King, A.: A Semantic Basis for Specialising Domain Constraints. Technical Report 21-99, University of Kent (1999)

    Google Scholar 

  10. Huynh, T., Lassez, C., Lassez, J.-L.: Practical Issues on the Projection of Polyhedral Sets. Annals of Mathematics and Artificial Intelligence 6, 295–316 (1992)

    Article  MATH  MathSciNet  Google Scholar 

  11. Jaffar, J., Lassez, J.-L.: Constraint Logic Programming. In: Proceedings of the Symposium on Principles of Programming Languages, pp. 111–119. ACM Press, New York (1987)

    Google Scholar 

  12. Jaffar, J., Maher, M.J.: Constraint Logic Programming: A Survey. Journal of Logic Programming 19-20, 503–582 (1994)

    Article  MathSciNet  Google Scholar 

  13. Marriot, K., Stuckey, P.J.: Programming With Constraints. MIT Press, Cam- bridge (1998)

    Google Scholar 

  14. Marriott, K., Stuckey, P.J.: The 3 R’s of Optimizing Constraint Logic Programs: Refinement, Removal and Reordering. In: Proceedings of the Twentieth Annual ACM Symposium on Principles of Programming Languages, pp. 334–344. ACM Press, New York (1993)

    Google Scholar 

  15. Martin, J.C.: Judgement Day: Terminating Logic Programs. PhD thesis, University of Southampton (1999)

    Google Scholar 

  16. Martin, J.C., King, A.: Generating Efficient, Terminating Logic Programs. In: Bidoit, M., Dauchet, M. (eds.) CAAP 1997, FASE 1997, and TAPSOFT 1997. LNCS, vol. 1214, pp. 273–284. Springer, Heidelberg (1997)

    Chapter  Google Scholar 

  17. Monfroy, E.: An Environment for Designing/Executing Constraint Solver Collabo- rations. Electronic Notes in Theoretical Computer Science 16(1) (1998)

    Google Scholar 

  18. Murty, K.G.: Linear Programming. Wiley, Chichester (1983)

    MATH  Google Scholar 

  19. Pugh, W.: The Omega Test: a Fast and Practical Integer Programming Algorithm for Dependency Analysis. Communications of the ACM, 102–114 ( August 1992)

    Google Scholar 

  20. Rodošek, R., Wallace, M.: A Generic Model and Hybrid Algorithm for Hoist Scheduling Problems. In: Maher, M.J., Puget, J.-F. (eds.) CP 1998. LNCS, vol. 1520, pp. 385–399. Springer, Heidelberg (1998)

    Google Scholar 

  21. van Gelder, A.: Deriving Constraints Amongst Argument Sizes in Logic Programs. Annals of Mathematics and Artificial Intelligence 3(2-4) (1991)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2000 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Howe, J.M., King, A. (2000). Specialising Finite Domain Programs Using Polyhedra. In: Bossi, A. (eds) Logic-Based Program Synthesis and Transformation. LOPSTR 1999. Lecture Notes in Computer Science, vol 1817. Springer, Berlin, Heidelberg. https://doi.org/10.1007/10720327_8

Download citation

  • DOI: https://doi.org/10.1007/10720327_8

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-67628-7

  • Online ISBN: 978-3-540-45148-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics