Skip to main content

Computing the Integer Points of a Polyhedron, I: Algorithm

  • Conference paper
  • First Online:
Book cover Computer Algebra in Scientific Computing (CASC 2017)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 10490))

Included in the following conference series:

Abstract

Let K be a polyhedron in \({\mathbb R}^d\), given by a system of m linear inequalities, with rational number coefficients bounded over in absolute value by L. In this series of two papers, we propose an algorithm for computing an irredundant representation of the integer points of K, in terms of “simpler” polyhedra, each of them having at least one integer point. Using the terminology of W. Pugh: for any such polyhedron P, no integer point of its grey shadow extends to an integer point of P. We show that, under mild assumptions, our algorithm runs in exponential time w.r.t. d and in polynomial w.r.t m and L. We report on a software experimentation. In this series of two papers, the first one presents our algorithm and the second one discusses our complexity estimates.

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 59.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 79.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

References

  1. Aubry, P., Lazard, D., Moreno Maza, M.: On the theories of triangular sets. J. Symb. Comput. 28, 105–124 (1999)

    Article  MathSciNet  MATH  Google Scholar 

  2. Barvinok, A.I.: A polynomial time algorithm for counting integral points in polyhedra when the dimension is fixed. Math. Oper. Res. 19(4), 769–779 (1994)

    Article  MathSciNet  MATH  Google Scholar 

  3. Barvinok, A.I.: Integer Points in Polyhedra. Contemporary Mathematics. European Mathematical Society (2008)

    Google Scholar 

  4. Beck, M.: Integer Points in Polyhedra-Geometry, Number Theory, Representation Theory, Algebra, Optimization, Statistics: AMS-IMS-SIAM Joint Summer Research Conference, 11–15 June 2006, Snowbird. Utah. Contemporary mathematics - Amer. Math, Soc. (2008)

    Google Scholar 

  5. Chen, C., Chen, X., Keita, A., Moreno Maza, M., Xie, N.: MetaFork: a compilation framework for concurrency models targeting hardware accelerators and its application to the generation of parametric CUDA kernels. In: Proceedings of CASCON 2015, pp. 70–79 (2015)

    Google Scholar 

  6. Cohen, H.: A Course in Computational Algebraic Number Theory, vol. 138. Springer Science & Business Media, Heidelberg (2013)

    Google Scholar 

  7. Feautrier, P.: Parametric integer programming. RAIRO Recherche Opérationnelle 22 (1988). http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.30.9957&rep=rep.1&type=pdf

  8. Feautrier, P.: Automatic parallelization in the polytope model. In: Perrin, G.-R., Darte, A. (eds.) The Data Parallel Programming Model. LNCS, vol. 1132, pp. 79–103. Springer, Heidelberg (1996). doi:10.1007/3-540-61736-1_44. http://dl.acm.org/citation.cfm?id=647429.723579

    Chapter  Google Scholar 

  9. Fischer, M.J., Fischer, M.J., Rabin, M.O.: Super-exponential complexity of presburger arithmetic. Technical report, Cambridge, MA, USA (1974)

    Google Scholar 

  10. Grünbaum, B.: Convex Polytops. Springer, New York (2003)

    Book  Google Scholar 

  11. Hung, M.S., Rom, W.O.: An application of the hermite normal form in integer programming. Linear Algebra Appl. 140, 163–179 (1990)

    Article  MathSciNet  MATH  Google Scholar 

  12. Jing, R.-J., Yuan, C.-M., Gao, X.-S.: A polynomial-time algorithm to compute generalized hermite normal form of matrices over \({\mathbb{Z}}[x]\). CoRR, abs/1601.01067 (2016)

    Google Scholar 

  13. Jones, C.N., Kerrigan, E.C., Maciejowski, J.M.: On polyhedral projection and parametric programming. J. Optim. Theory Appl. 138(2), 207–220 (2008)

    Article  MathSciNet  MATH  Google Scholar 

  14. Kannan, R., Bachem, A.: Polynomial algorithms for computing the smith and hermite normal forms of an integer matrix. SIAM J. Comput. 8(4), 499–507 (1979)

    Article  MathSciNet  MATH  Google Scholar 

  15. Khachiyan, L.: Fourier-motzkin elimination method. In: Floudas, C.A., Pardalos, P.M. (eds.) Encyclopedia of Optimization, 2nd edn, pp. 1074–1077. Springer, Heidelberg (2009). doi:10.1007/978-0-387-74759-0_187

    Chapter  Google Scholar 

  16. Köppe, M., Verdoolaege, S.: Computing parametric rational generating functions with a primal Barvinok algorithm. Electr. J. Comb. 15(1), R16 (2008)

    MathSciNet  MATH  Google Scholar 

  17. Pugh, W.: The omega test: a fast and practical integer programming algorithm for dependence analysis. In: Martin, J.L. (ed.) Proceedings Supercomputing 1991, Albuquerque, NM, USA, 18–22 November 1991, pp. 4–13. ACM (1991)

    Google Scholar 

  18. Pugh, W.: Counting solutions to presburger formulas: how and why. In: Sarkar, V., Ryder, B.G., Soffa, M.L. (eds.) Proceedings of the ACM SIGPLAN 1994 Conference on Programming Language Design and Implementation (PLDI), Orlando, Florida, USA, 20–24 June 1994, pp. 121–134. ACM (1994)

    Google Scholar 

  19. Schrijver, A.: Theory of Linear and Integer Programming. Wiley, New York (1986)

    MATH  Google Scholar 

  20. Storjohann, A.: A fast practical deterministic algorithm for triangularizing integer matrices. Citeseer (1996)

    Google Scholar 

  21. Storjohann, A.: Algorithms for matrix canonical forms. Ph.D. thesis, Swiss Federal Institute of Technology Zürich (2000)

    Google Scholar 

  22. Wonnacott, D.: Omega test. In: Encyclopedia of Parallel Computing, pp. 1355–1365 (2011)

    Google Scholar 

Download references

Acknowledgements

The authors would like to thank IBM Canada Ltd (CAS project 880) and NSERC of Canada (CRD grant CRDPJ500717-16), as well as the University of Chinese Academy of Sciences, UCAS Joint PhD Training Program, for supporting their work.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Rui-Juan Jing .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2017 Springer International Publishing AG

About this paper

Cite this paper

Jing, RJ., Moreno Maza, M. (2017). Computing the Integer Points of a Polyhedron, I: Algorithm. In: Gerdt, V., Koepf, W., Seiler, W., Vorozhtsov, E. (eds) Computer Algebra in Scientific Computing. CASC 2017. Lecture Notes in Computer Science(), vol 10490. Springer, Cham. https://doi.org/10.1007/978-3-319-66320-3_17

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-66320-3_17

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-66319-7

  • Online ISBN: 978-3-319-66320-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics