Polyhedral Omega: a New Algorithm for Solving Linear Diophantine Systems

Polyhedral Omega is a new algorithm for solving linear Diophantine systems (LDS), i.e., for computing a multivariate rational function representation of the set of all non-negative integer solutions to a system of linear equations and inequalities. Polyhedral Omegacombines methods from partition analysis with methods from polyhedral geometry. In particular, we combine MacMahon’s iterative approach based on the Omega operator and explicit formulas for its evaluation with geometric tools such as Brion decompositions and Barvinok’s short rational function representations. In this way, we connect two recent branches of research that have so far remained separate, unified by the concept of symbolic cones which we introduce. The resulting LDS solver Polyhedral Omegais significantly faster than previous solvers based on partition analysis and it is competitive with state-of-the-art LDS solvers based on geometric methods. Most importantly, this synthesis of ideas makes Polyhedral Omegathe simplest algorithm for solving linear Diophantine systems available to date. Moreover, we provide an illustrated geometric interpretation of partition analysis, with the aim of making ideas from both areas accessible to readers from a wide range of backgrounds.

[1]  Alexander Schrijver,et al.  Combinatorial optimization. Polyhedra and efficiency. , 2003 .

[2]  Benjamin Braun,et al.  s-Lecture hall partitions, self-reciprocal polynomials, and Gorenstein cones , 2012, 1211.0258.

[3]  Jean B. Lasserre,et al.  On Counting Integral Points in a Convex Rational Polytope , 2003, Math. Oper. Res..

[4]  S. Robins,et al.  Computing the Continuous Discretely , 2015 .

[5]  Alexander I. Barvinok,et al.  A Polynomial Time Algorithm for Counting Integral Points in Polyhedra when the Dimension Is Fixed , 1993, FOCS.

[6]  M. Brion Points entiers dans les polyèdres convexes , 1988 .

[7]  Arne Storjohann,et al.  Near optimal algorithms for computing Smith normal forms of integer matrices , 1996, ISSAC '96.

[8]  G. Andrews,et al.  MACMAHON’S PARTITION ANALYSIS XI: HEXAGONAL PLANE PARTITIONS , 2004 .

[9]  George E. Andrews,et al.  MacMahon's Partition Analysis: The Omega Package , 2001, Eur. J. Comb..

[10]  Percy Alexander MacMahon,et al.  Memoir on the theory of the partitions of numbers , 1912 .

[11]  M. Ziegler Volume 152 of Graduate Texts in Mathematics , 1995 .

[12]  Jesús A. De Loera,et al.  Integer Polynomial Optimization in Fixed Dimension , 2006, Math. Oper. Res..

[13]  Richard P. Stanley,et al.  Linear homogeneous Diophantine equations and magic labelings of graphs , 1973 .

[14]  D. Gouyou-Beauchamps Lecture Hall Partitions , 1997 .

[15]  A. Storjohann Algorithms for matrix canonical forms , 2000 .

[16]  J. Shaw Combinatory Analysis , 1917, Nature.

[17]  Jesús A. De Loera,et al.  Short rational functions for toric algebra and applications , 2004, J. Symb. Comput..

[18]  Carl W. Lee,et al.  Subdivisions and Triangulationsof Polytopes , 2004, Handbook of Discrete and Computational Geometry, 2nd Ed..

[19]  Jim Lawrence,et al.  Valuations and polarity , 1988, Discret. Comput. Geom..

[20]  G. Ziegler Lectures on Polytopes , 1994 .

[21]  Fu Liu Perturbation of transportation polytopes , 2013, J. Comb. Theory, Ser. A.

[22]  Guoce Xin A Fast Algorithm for MacMahon's Partition Analysis , 2004, Electron. J. Comb..

[23]  Guoce Xin The Ring of Malcev-Neumann Series and the Residue Theorem , 2004 .

[24]  Matthias Köppe,et al.  Computing Parametric Rational Generating Functions with a Primal Barvinok Algorithm , 2008, Electron. J. Comb..

[25]  A. Barvinok,et al.  An Algorithmic Theory of Lattice Points in Polyhedra , 1999 .

[26]  George E. Andrews,et al.  MacMahon’s Partition Analysis IV: Hypergeometric Multisums , 2001 .

[27]  G. Andrews,et al.  Macmahon's partition analysis IX: K -gon partitions , 2001 .

[28]  Jörg Rambau,et al.  Computing Triangulations Using Oriented Matroids , 2003, Algebra, Geometry, and Software Systems.

[29]  G. Andrews,et al.  MacMahon's partition analysis XII: Plane partitions , 2007 .

[30]  M. Brion,et al.  Residue formulae, vector partition functions and lattice points in rational polytopes , 1997 .

[31]  L. Griffiths,et al.  A note on linear homogeneous diophantine equations , 1946 .

[32]  Arthur Cayley The Collected Mathematical Papers: On an algebraical operation , 2009 .

[33]  Adrian Dobra,et al.  LATTICE POINTS, CONTINGENCY TABLES, AND SAMPLING , 2007 .

[34]  Komei Fukuda,et al.  Combinatorial Face Enumeration in Convex Polytopes , 1994, Comput. Geom..

[35]  Jesús A. De Loera,et al.  Pareto Optima of Multicriteria Integer Linear Programs , 2009, INFORMS J. Comput..

[36]  Guoce Xin,et al.  A Euclid style algorithm for MacMahon's partition analysis , 2012, J. Comb. Theory, Ser. A.

[37]  P. A. MacMahon Memoir on the theory of the partitions of numbers. Part II , 1899, Proceedings of the Royal Society of London.

[38]  Manuel Kauers,et al.  Formal Laurent series in several variables , 2013, Expositiones mathematicae.

[39]  Vincent Loechner,et al.  Counting Integer Points in Parametric Polytopes Using Barvinok's Rational Functions , 2007, Algorithmica.

[40]  Bruce C. Berndt,et al.  -Series with Applications to Combinatorics, Number Theory, and Physics , 2001 .

[41]  William J. Cook,et al.  On integer points in polyhedra , 1992, Comb..

[42]  A. Barvinok,et al.  Short rational generating functions for lattice point problems , 2002, math/0211146.

[43]  J. D. Loera,et al.  Triangulations: Structures for Algorithms and Applications , 2010 .

[44]  P. McMullen The maximum numbers of faces of a convex polytope , 1970 .

[45]  G. Andrews,et al.  MacMahon’s Partition Analysis V: Bijections, Recursions, and Magic Squares , 2001 .

[46]  Bogdan Ichim,et al.  The power of pyramid decomposition in Normaliz , 2012, J. Symb. Comput..

[47]  Hendrik W. Lenstra,et al.  Integer Programming with a Fixed Number of Variables , 1983, Math. Oper. Res..

[48]  Jesús A. De Loera,et al.  Algebraic and Geometric Ideas in the Theory of Discrete Optimization , 2012, MOS-SIAM Series on Optimization.

[49]  Alexander I. Barvinok,et al.  Computing the volume, counting integral points, and exponential sums , 1992, SCG '92.

[50]  G. Andrews,et al.  MacMahon's Partition Analysis VI: A New Reduction Algorithm , 2001 .

[51]  Jean B. Lasserre,et al.  An Alternative Algorithm for Counting Lattice Points in a Convex Polytope , 2005, Math. Oper. Res..

[52]  Komei Fukuda,et al.  Double Description Method Revisited , 1995, Combinatorics and Computer Science.

[53]  A. N. Varchenko,et al.  Combinatorics and topology of the disposition of affine hyperplanes in real space , 1987 .

[54]  Jesús A. De Loera,et al.  How to integrate a polynomial over a simplex , 2008, Math. Comput..

[55]  P. A. MacMahon III. Memoir on the theory of the partitions of numbers. Part I , 1896, Proceedings of the Royal Society of London.

[56]  Alexander Schrijver,et al.  Theory of linear and integer programming , 1986, Wiley-Interscience series in discrete mathematics and optimization.

[57]  Jesús A. De Loera,et al.  Effective lattice point counting in rational convex polytopes , 2004, J. Symb. Comput..

[58]  M. Beck,et al.  Dedekind–Carlitz polynomials as lattice-point enumerators in rational polyhedra , 2007, 0710.1323.

[59]  Igor Pak On Sampling Integer Points In Polyhedra , 2000 .

[60]  George E. Andrews,et al.  MacMahon's Partition Analysis: VIII. Plane Partition Diamonds , 2001, Adv. Appl. Math..

[61]  Guy Louchard,et al.  Boltzmann Samplers for the Random Generation of Combinatorial Structures , 2004, Combinatorics, Probability and Computing.