Skip to main content

Modifying the simplex algorithm to a constraint solver

  • Constraint Logic Programming
  • Conference paper
  • First Online:
Programming Language Implementation and Logic Programming (PLILP 1990)

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

  • 179 Accesses

Abstract

Constraint Logic Programming (CLP) tries to unify the best from Logic Programming and Constraint Satisfaction. However, implementors of languages of the CLP class such as the CLP (R) must solve some unique problems such as constraint backtracking and devising an incremental constraint solver. This paper describes how the Simplex algorithm was adapted to serve as a constraint solver in a prototype CLP (R) system. The algorithm can handle equations as well as inequalities. The Simplex algorithm can be incrementalized easily by dividing it into invariant preserving steps. Constraint backtracking can be implemented efficiently by changing slack variable types.

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Bazaraa M.S. & Jarvis J.J: Linear Programming and Network Flows, John Wiley & Sons 1977.

    Google Scholar 

  2. Gabriel J. & Lindholm T. & Lusk E.L. & Overbeek R.A: Tutorial on the Warren Abstract Machine for Computational Logic, Tech. Rep. ANL-84-84, Argonne National Lab., Argonne, Illinois.

    Google Scholar 

  3. Heesterman A.R.G: Matrices and Simplex Algorithms, D. Reidel Publishing Company 1983, Holland.

    Google Scholar 

  4. Jaakola J: Rajoitelogiikkaohjelmoinnin toteutus (Implementation of Constraint Logic Programming), Department of Computer Science, University of Helsinki, 1990. In Finnish.

    Google Scholar 

  5. Jaffar J. & Lassez J-L: Constraint Logic Programming, Proceedings of the 14th ACM POPL Conference, Munich, January 1987.

    Google Scholar 

  6. Jaffar J. & Michaylov S: Methodology and Implementation of a CLP System, Proceedings of the 4th International Conference on Logic Programming, Melbourne, 1987.

    Google Scholar 

  7. Schrijver A: Theory of Linear and Integer Programming, John Wiley & Sons Ltd. 1987, Great Britain.

    Google Scholar 

  8. Warren D.H.D: An Abstract Prolog Instruction Set, Technical Note 309, SRI International, 1983.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Pierre Deransart Jan Maluszyński

Rights and permissions

Reprints and permissions

Copyright information

© 1990 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Jaakola, J. (1990). Modifying the simplex algorithm to a constraint solver. In: Deransart, P., Maluszyński, J. (eds) Programming Language Implementation and Logic Programming. PLILP 1990. Lecture Notes in Computer Science, vol 456. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0024178

Download citation

  • DOI: https://doi.org/10.1007/BFb0024178

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

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

  • Online ISBN: 978-3-540-46298-9

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics