Linear Programming Using Limited-Precision Oracles

  • Ambros Gleixner
  • Daniel E. SteffyEmail author
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11480)


Linear programming is a foundational tool for many aspects of integer and combinatorial optimization. This work studies the complexity of solving linear programs exactly over the rational numbers through use of an oracle capable of returning limited-precision LP solutions. Under mild assumptions, it is shown that a polynomial number of calls to such an oracle and a polynomial number of bit operations, is sufficient to compute an exact solution to an LP. Previous work has often considered oracles that provide solutions of an arbitrary specified precision. While this leads to polynomial-time algorithms, the level of precision required is often unrealistic for practical computation. In contrast, our work provides a foundation for understanding and analyzing the behavior of the methods that are currently most effective in practice for solving LPs exactly.


Linear programming Oracle complexity Diophantine approximation Exact solutions Symbolic computation Rational arithmetic Extended-precision arithmetic Iterative refinement 


  1. 1.
    Abbott, J., Mulders, T.: How tight is Hadamard’s bound? Exp. Math. 10(3), 331–336 (2001). Scholar
  2. 2.
    Applegate, D.L., Cook, W., Dash, S., Espinoza, D.G.: Qsopt\(\_\)ex.
  3. 3.
    Applegate, D.L., Cook, W., Dash, S., Espinoza, D.G.: Exact solutions to linear programming problems. Oper. Res. Lett. 35(6), 693–699 (2007). Scholar
  4. 4.
    Azulay, D.-O., Pique, J.-F.Ç.: Optimized Q-pivot for exact linear solvers. In: Maher, M., Puget, J.-F. (eds.) CP 1998. LNCS, vol. 1520, pp. 55–71. Springer, Heidelberg (1998). Scholar
  5. 5.
    Chen, Z., Storjohann, A.: A BLAS based C library for exact linear algebra on integer matrices. In: Proceedings of the 2005 International Symposium on Symbolic and Algebraic Computation, ISSAC 2005, pp. 92–99 (2005).
  6. 6.
    Cheung, D., Cucker, F.: Solving linear programs with finite precision: II. Algorithms. J. Complex. 22(3), 305–335 (2006). Scholar
  7. 7.
    Cook, W., Steffy, D.E.: Solving very sparse rational systems of equations. ACM Trans. Math. Softw. 37(4), 39:1–39:21 (2011). Scholar
  8. 8.
    Dhiflaoui, M., et al.: Certifying and repairing solutions to large LPs: how good are LP-solvers? In: Proceedings of the 14th Annual ACM-SIAM Symposium on Discrete Algorithms, SODA 2003, pp. 255–256. SIAM (2003)Google Scholar
  9. 9.
    Edmonds, J.: Systems of distinct representatives and linear algebra. J. Res. Natl. Bur. Stan. 71B(4), 241–245 (1967)MathSciNetCrossRefGoogle Scholar
  10. 10.
    Edmonds, J., Maurras, J.F.: Note sur les \(Q\)-matrices d’Edmonds. RAIRO. Recherche Opérationnelle 31(2), 203–209 (1997).
  11. 11.
    Escobedo, A.R., Moreno-Centeno, E.: Roundoff-error-free algorithms for solving linear systems via Cholesky and LU factorizations. INFORMS J. Comput. 27(4), 677–689 (2015). Scholar
  12. 12.
    Escobedo, A.R., Moreno-Centeno, E.: Roundoff-error-free basis updates of LU factorizations for the efficient validation of optimality certificates. SIAM J. Matrix Anal. Appl. 38(3), 829–853 (2017). Scholar
  13. 13.
    Gärtner, B.: Exact arithmetic at low cost - a case study in linear programming. Comput. Geom. 13(2), 121–139 (1999). Scholar
  14. 14.
    Gleixner, A.M., Steffy, D.E., Wolter, K.: Iterative refinement for linear programming. INFORMS J. Comput. 28(3), 449–464 (2016). Scholar
  15. 15.
    Grötschel, M., Lovász, L., Schrijver, A.: Geometric Algorithms and Combinatorial Optimization. Algorithms and Combinatorics, vol. 2. Springer, Heidelberg (1988). Scholar
  16. 16.
    Karmarkar, N.: A new polynomial-time algorithm for linear programming. Combinatorica 4(4), 373–395 (1984). Scholar
  17. 17.
    Khachiyan, L.G.: Polynomial algorithms in linear programming (in Russian). Zhurnal Vychislitel’noi Matematiki i Matematicheskoi Fiziki 20(1), 51–68 (1980). English translation: USSR Computational Mathematics and Mathematical Physics, 20(1):53-72, 1980MathSciNetCrossRefGoogle Scholar
  18. 18.
    Koch, T.: The final NETLIB-LP results. Oper. Res. Lett. 32(2), 138–142 (2004). Scholar
  19. 19.
    Kwappik, C.: Exact linear programming. Master’s thesis, Universität des Saarlandes, May 1998Google Scholar
  20. 20.
    Lenstra, A.K., Lenstra, H.W., Lovász, L.: Factoring polynomials with rational coefficients. Mathematische Annalen 261(4), 515–534 (1982). Scholar
  21. 21.
    Renegar, J.: A polynomial-time algorithm based on Newton’s method, for linear programming. Math. Program. 40(1–3), 59–93 (1988). Scholar
  22. 22.
    Schrijver, A.: Theory of Linear and Integer Programming. Wiley, New York (1986)zbMATHGoogle Scholar
  23. 23.
    Steffy, D.E.: Exact solutions to linear systems of equations using output sensitive lifting. ACM Commun. Comput. Algebra 44(3/4), 160–182 (2011). Scholar
  24. 24.
    Wang, X., Pan, V.Y.: Acceleration of Euclidean algorithm and rational number reconstruction. SIAM J. Comput. 2(32), 548–556 (2003)MathSciNetCrossRefGoogle Scholar
  25. 25.
    Zuse Institute Berlin: SoPlex. Sequential object-oriented simPlex.

Copyright information

© Springer Nature Switzerland AG 2019

Authors and Affiliations

  1. 1.Konrad-Zuse-Zentrum für Informationstechnik BerlinBerlinGermany
  2. 2.Mathematics and StatisticsOakland UniversityRochesterUSA

Personalised recommendations