Transcript

UNIVERSITAT LINZJOHANNES KEPLER JKU

Technisch-NaturwissenschaftlicheFakultat

Linear Diophantine Systems:Partition Analysis and Polyhedral Geometry

DISSERTATION

zur Erlangung des akademischen Grades

Doktor

im Doktoratsstudium der

Technischen Wissenschaften

Eingereicht von:

Zafeirakis Zafeirakopoulos

Angefertigt am:

Research Institute for Symbolic Computation

Beurteilung:

Prof. Peter Paule (Betreuung)Prof. Matthias Beck

Linz, December, 2012

2

This version of the thesis was updated in October 2014. The update only concernsthe presentation and not the content of the thesis.

3

Abstract

The main topic of this thesis is the algorithmic treatment of two problems relatedto linear Diophantine systems. Namely, the first one is counting and the second one islisting the non-negative integer solutions of a linear system of equations/inequalities.

The general problem of solving polynomial Diophantine equations does not admit analgorithmic solution. In this thesis we restrict to linear systems, so that we can treatthem algorithmically. In 1915, MacMahon, in his seminal work β€œCombinatory Anal-ysis”, introduced a method called partition analysis in order to attack combinatorialproblems subject to linear Diophantine systems. Following that line, in the beginningof this century Andrews, Paule and Riese published fully algorithmic versions of par-tition analysis, powered by symbolic computation. Parallel to that, the last decadessaw significant progress in the geometric theory of lattice-point enumeration, startingwith Ehrhart in the 60’s, leading to important theoretical results concerning generatingfunctions of the lattice points in polytopes and polyhedra. On the algorithmic side ofpolyhedral geometry, Barvinok developed the first polynomial-time algorithm in fixeddimension able to count lattice points in polytopes.

The main goal of the thesis is to connect these two lines of research (partition analysisand polyhedral geometry) and combine tools from both sides in order to construct betteralgorithms.

The first part of the thesis is an overview of conic semigroups from both a geometricand an algebraic viewpoint. This gives a connection between polyhedra, cones andtheir generating functions to generating functions of solutions of linear Diophantinesystems. Next, we provide a geometric interpretation of Elliott Reduction and Omega2(two implementations of partition analysis). The partial-fraction decompositions used inthese two partition-analysis methods are interpreted as decompositions of cones. Withthis insight and employing tools from polyhedral geometry, such as Brion’s theoremand Barvinok’s algorithm, we propose a new algorithm for the evaluation of the Ξ©β‰₯operator, the central tool in MacMahon’s work on partition analysis. This gives animplementation of partition analysis heavily based on the geometric understanding ofthe method. Finally, a classification of linear Diophantine systems is given, in order tosystematically treat the algorithmic solution of linear Diophantine systems, especiallythe difference between parametric and non-parametric problems.

4

Zusammenfassung

Das Hauptaugenmerk dieser Arbeit liegt auf der algorithmischen Losung zweier Prob-leme, welche im Zusammenhang mit linearen diophantischen Systemen auftreten. Daserste Problem ist die Bestimmung der Anzahl der nicht-negativen, ganzzahligen Losun-gen linearer Systeme von (Un-)Gleichungen, das zweite die Auflistung ebendieser Losun-gen.

Die Losung von polynomiellen diophantischen Gleichungen ist nicht ohne Einschran-kungen algorithmisch handhabbar. Aus diesem Grund beschranken wir uns in der vor-liegenden Arbeit auf lineare Systeme. 1915 fuhrte MacMahon in seinem Werk ”Com-binatory Analysis” eine Methode namens Partition Analysis ein, um kombinatorischeProbleme zu losen, in denen lineare diophantische Systeme auftreten. Darauf aufbauend,jedoch unter weitreichender Miteinbeziehung von Techniken des symbolischen Rechnens,veroffentlichten Andrews, Paule und Riese zu Beginn dieses Jahrhunderts algorithmischeVarianten der Partition Analysis. Parallel dazu gab es in den letzten Jahrzehnten er-hebliche Fortschritte in der geometrischen Theorie zur Aufzahlung von Gittervektoren,beginnend mit Erhart in den 70er Jahren, welche zu wichtigen theoretischen Erkenntnis-sen bezuglich erzeugender Funktionen von Gittervektoren in Polytopen und Polyedernfuhrten. Einen wesentlichen Beitrag in der algorithmischen Entwicklung leistete Barvi-nok mit der Formulierung des ersten Algorithmus, der die Aufzahlung von Gittervektorenin Polytopen ermoglicht und bei fester Dimension eine polynomielle Laufzeit aufweist.

Das Ziel dieser Arbeit is es, beide Forschungsstrange -Partition Analysis und PolyederGeometrie- zu verbinden und die Werkzeuge aus beiden Theorien zu neuen, besserenAlgorithmen zu kombinieren. Der erste Teil gibt einen Uberblick uber konische Halb-gruppen aus zweierlei Blickwinkeln, dem geometrischen und dem algebraischen. Diesermoglicht es uns, die Verbindung von Polyedern, Kegeln und ihrer erzeugenden Funk-tionen zu den erzeugenden Funktionen der Losungen von linearen diophantischen Sys-temen herzustellen. Darauf folgend behandeln wir geometrische Interpretationen vonElliotts Reduction und Omega2, zweier Realisierungen von Partition Analysis. Die Par-tialbruchzerlegungen, welche in diesen beiden Methoden auftreten, werden als Zerlegun-gen von Kegeln interpretiert. Zusammen mit geeigneten Hilfsmitteln aus der PolyederGeometrie, wie etwa dem Satz von Brion und Barvinoks Algorithmus, fuhrt dies zurFormulierung eines neuen Algorithmus zur Anwendung des Omega-Operators, dem zen-tralen Werkzeug in MacMahons Arbeit an Partition Analysis. Wir erhalten darauseine algorithmische Realisierung von Partition Analysis, die entscheidend auf dem ge-ometrischen Verstandnis der Methode basiert. Abschließend wird eine Klassifikationvon linearen diophantischen Systemen eingefuhrt, um systematisch deren algorithmischeLosung aufarbeiten zu konnen. Speziell wird dabei auf die Unterscheidung zwischenparametrischen und nicht-parametrischen Problemen geachtet.

5

Ich erklare an Eides statt, dass ich die vorliegende Dissertation selbststndig und ohnefremde Hilfe verfasst, andere als die angegebenen Quellen und Hilfsmittel nicht benutztbzw. die wortlich oder sinngemaß entnommenen Stellen als solche kenntlich gemachthabe. Die vorliegende Dissertation ist mit dem elektronisch bermittelten Textdokumentidentisch.

Zafeirakis Zafeirakopoulos

6

Acknowledgments

Writing a thesis proved to be harder than what I thought. But, now I know, it wouldhave been impossible without the help of the people who supported me during the last3-4 years.

First I want to thank my advisor Prof. Peter Paule for his support in a range of issuesspanning scientific and everyday life. The two most important things I am grateful to himfor are his suggestion for my PhD topic and his support for my participation in the AIMSQuaRE for β€œPartition Theory and Polyhedral Geometry”. When I first mentioned tohim my interests, Prof. Paule successfully predicted that the topic of this thesis would befor me exciting enough so that even passing through frustrating and exhausting periods,today I am still as interested as the first day.

Concerning the SQuaRE meetings in the American Institute of Mathematics, I can-not exaggerate about how helpful they were for me. The three weeks of these meetingswere undoubtedly among the most intensive learning and working experiences I ever had.Each one of the participants - Prof. Matthias Beck, Prof. Ben Brown, Prof. MatthiasKoppe and Prof. Carla Savage - helped me in a different way to understand parts of thebeauty lying in the intersection of algebraic combinatorics, polyhedral geometry, numbertheory and the algorithmic methods involved.

Prof. Beck acted as a host during my five months stay in San Francisco visiting SanFrancisco State University in the context of a Marshall Plan Scholarship. Except forbeing excellent in his formal duty as a host (advising me during that period), Matt andTendai acted as real hosts, making my stay in San Francisco a very positive experienceboth in academic and social terms.

During my stay in San Francisco, I met Dr. Felix Breuer with whom I spent agood part of my time there discussing about interesting topics, not always concerningmathematics. During our mathematical discussions emerged a number of topics thathopefully I will have the pleasure to pursue in the future, as well as one chapter of thisthesis. Landing in a city as a stranger always gives a strange feeling, but Felix andChambui contributed in making this feeling negligible.

The first time I landed in a new city was in 2009. The task of making this moveeasier fell on the hands of Veronika, Flavia, Burcin and Ionela. To a large extend, I owethe fact that I am here to them and the great job they did in making Linz a warm place(which is not easy in any sense, especially after living 27 years in Athens), when I firstarrived.

PhD studies is like an extended summer camp. And I don’t just mean exhaustingbut fun. You meet people you like and then they leave, or you leave. You do not knowwhen you will see each other again, possibly next summer in a conference. But, if youare fortunate enough, you make some friends. I was fortunate to meet Max, Hamid,Jakob, Cevo, Nebiye and Madalina, who I do consider as friends.

Distance makes communication between friends harder, but you know that you careabout them and you hope they do the same. Although I love Athens as a city, aftertaking the time to think about what I really miss, it is the people. It is the friends I

7

know for half my life. A couple of them for more than that. For me, the most frustratingthing about living abroad was not being there in the little moments you never care about,except if you are not there.

Giorgos, Dimitris and NN, being themselves in a position similar to mine, distractedme efficiently through these years with pointless but enjoyable discussions. Elias provedto be always a valuable source of information and support. I also want to thank mycolleagues at RISC and especially Manuel, Matteo, Ralf and Veronika for the very usefuldiscussions and directions they gave me on various mathematical topics. At this pointI can say that the bridge at RISC is the place where I made the most friends and alsothe most work done these last years.

Finally, I want to thank my family. My parents supported me in all possible waysduring my studies in Greece and keep supporting me until today. I do owe them morethan I can possibly offer. My brother is still in Athens, in a stay-behind role. I owe tohim my luxury of being able to leave in order to pursue my goals. Achieving one goalonly asks for the next one. And for me that is to be able to support Ilke for the restof my life, the way she supported me during these years. Good that she is an endlesssource of happiness and inspiration for me.

8

Contents

1 Geometry, Algebra and Generating Functions 151.1 Polyhedra, Cones and Semigroups . . . . . . . . . . . . . . . . . . . . . . 151.2 Formal Power Series and Generating Functions . . . . . . . . . . . . . . . 301.3 Formal Series, Rational Functions and Geometry . . . . . . . . . . . . . . 41

2 Linear Diophantine Systems 512.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 512.2 Classification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

3 Partition Analysis 633.1 Partition Analysis Revisited . . . . . . . . . . . . . . . . . . . . . . . . . . 633.2 Algebraic Partition Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . 83

4 Partition Analysis via Polyhedral Geometry 914.1 Eliminating one variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . 924.2 Eliminating multiple variables . . . . . . . . . . . . . . . . . . . . . . . . . 984.3 Improvements based on geometry . . . . . . . . . . . . . . . . . . . . . . . 1014.4 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110

A Proof of β€œGeometry of Omega2” 111

9

10 CONTENTS

Introduction

Some History

One of the earliest recorded uses of geometry as a counting tool is the notion of figuratenumbers. Ancient Greeks used pebbles (χαλίκι, where the word calculus comes from),in order to do arithmetic. For example, an arrangement of pebbles would be used tocalculate triangular numbers. In general figurate numbers were popular in ancient times.

Today we mostly care about squares and some special cases (like pentagonal numbersin Euler’s celebrated theorem). Among the mathematicians that were interested infigurate numbers was, of course, Diophantus who wrote a book on polygonal numbers(see [25]). After an interesting turn of events, one of the most prominent methods forthe solution of linear Diophantine systems relies on generalizing figurate numbers.

This generalization bears the name of Eugene Ehrhart who made the first major con-tributions to what is today called Ehrhart theory. The goal is to compute and investigateproperties of functions enumerating the lattice points in polytopes. In dimension 2 andfor the simple regular polygons this coincides with the concept of figurate numbers, butnaturally we are interested in higher-dimensional polytopes and polytopes with morecomplicated geometry.

Diophantus in his masterpiece β€œArithmetica” dealt with the solution of equations[25]. But in the time of Diophantus, a couple of things were essentially different than inmodern mathematics:

βˆ™ No notion of zero existed.

βˆ™ Fractions were not treated as numbers (Diophantus was the first to do so).

βˆ™ There was no notation for arithmetic.

”Arithmetica” consisted of 13 books, out of which only six survived and possibly an-other four through Arab translations (found recently), dealing with the solution of 130equations. On one hand his work is important because it is the oldest account we havefor indefinite equations (equations with more than one solutions). More importantlythough, Diophantus introduced a primitive notational system for (what later was called)algebra.

For our purposes, the essential part of his work is his view on what is the solution ofan equation. He considered equations with positive rational coefficients whose solutions

11

12 CONTENTS

are positive rationals. Following this path, we consider a Diophantine problem to haveinteger coefficients and non-negative integer solutions.

In 1463 the German mathematician Regiomontanus, traveling to Italy, he came acrossa copy of Arithmetica. He considered it to be an important work when he reported to afriend of his about it. He intended to do the translation, but he could only find six outof the thirteen books that Diophantus mentioned in his introduction, thus he did notproceed [14].

Although the most famous marginal note to be found in a copy of Arithmeticais by Fermat (his last theorem), there is another one which is very interesting. TheByzantine scholar Chortasmenos notes β€œThy soul, Diophantus, be with Satan becauseof the difficulty of your problems” (funny enough next to what came to be known asFermat’s last theorem).

This last comment, combined with the note that Diophantus did not have a gen-eral method (after solving the 100th problem, you still have no clue how to attack the101st) is important for us. Of course, for non-linear Diophantine problems one cannotexpect a general method (Hilbert’s 10th problem). But we present algorithmic solutions(developed during the last century) for linear Diophantine systems and examine theirconnections.

Contributions

The main contribution of this thesis is in the direction of connecting partition analysis, amethod for solving linear Diophantine systems, with polyhedral geometry. The analyticviewpoint of traditional partition analysis methods (due to Elliott, MacMahon, An-drews, Paule and Riese) is interpreted in the context of polyhedral geometry. Throughthis interpretation we are allowed to use tools from geometry in order to enhance thealgorithmic procedures and the understanding of partition analysis. More precisely, themain contributions are:

Geometric and algebraic interpretation of partition analysis

βˆ™ In Theorem 3.2 a geometric interpretation of the generalized partial fraction de-composition employed in Omega2 is given.

βˆ™ We define geometric objects related to the crude generating function and providea geometric version of the Ξ©β‰₯ operator.

βˆ™ An algebraic version of Ξ©β‰₯ is given based on gradings of algebraic structures anda variant of Hilbert series.

CONTENTS 13

Algorithmic contributions to partition analysis

βˆ™ A new algorithm for the evaluation of the Ξ©β‰₯ operator, following the traditionalparadigm of recursive elimination of πœ† variables (see Section 4.1).

βˆ™ A new algorithm, motivated by the geometric understanding of the action of Ξ©β‰₯,that performs simultaneous elimination of all πœ† variables (see Section 4.2).

A second goal of the thesis, especially given the interest in algorithmic solutions, isthe classification of linear Diophantine problems. In the literature the notion of a linearDiophantine problem is not consistent and depends on the motivation of the author.

Finally, we note that the main reason why we believe it is important to explore suchconnections, although in both contexts (partition analysis and polyhedral geometry)there are already methods to attack the problem, is that knowledge transfer from onearea to another often helps to develop algorithmic tools that are more efficient.

14 CONTENTS

Chapter 1

Geometry, Algebra andGenerating Functions

In this chapter we present a basic introduction to geometric, algebraic and generatingfunction related concepts that will be used in later chapters. This introduction is notmeant to be complete but rather a recall of basic notions mostly to set up notation. InSection 1.1, some geometric notions and the discrete analog of cones are presented. Fora detailed introduction see [17, 11, 38]. In Section 1.2 a hierarchy of algebraic structuresrelated to formal power series is presented first and then an introduction to generatingfunctions is given. Finally, in Section 1.3 we present the relation of formal power seriesand generating functions via polyhedral geometry and give a short description of moreadvanced geometric tools we will use later.

We note that in this chapter we will use boldface fonts for vectors and the multi-indexnotation xπ‘Ž = π‘₯π‘Ž11 π‘₯π‘Ž22 . . . , π‘₯π‘Žπ‘‘π‘‘ .

1.1 Polyhedra, Cones and Semigroups

In this section we give a short introduction to polyhedra and polytopes. We define thefundamental objects of polyhedral geometry and provide terminology and notation thatwill be used later. For a more detailed introduction to polyhedral geometry see [17, 38]and references therein.

All of the theory developed in this section takes place in some Euclidean space. Forsimplicity of notation and clarity, we agree this to be R𝑑 for some 𝑑 ∈ N. We fix 𝑑 todenote the dimension of the ambient space R𝑑.

In Section 1.1.1 we will introduce polyhedra and in Section 1.1.2 we discuss aboutpolytopes, while in Section 1.1.3 we will present definitions and notation related topolyhedral cones. In Section 1.1.4 we introduce semigroups and their connection topolyhedral cones.

15

16 CHAPTER 1. GEOMETRY, ALGEBRA AND GENERATING FUNCTIONS

1.1.1 Polyhedra

There are many different ways to introduce the notion of polyhedra in literature [11, 17,38, 12]. According to our intuition, polyhedra are geometric objects with ”flat sides”.Thus, it is expected that we will resort to some sort of linear relations defining polyhedra.In order to make this more precise we will use linear functionals.

Definition 1.1 (Linear Functional)Given a real vector space R𝑑, a linear functional is a map 𝑓 : R𝑑 β†’ R such that

𝑓(π‘Žπ‘’+ 𝑏𝑣) = π‘Žπ‘“(𝑒) + 𝑏𝑓(𝑣)

for all 𝑒, 𝑣 ∈ R𝑑 and π‘Ž, 𝑏 ∈ R. οΏ½

Observe that any linear equation/inequality in 𝑑 variables π‘₯1, π‘₯2, . . . , π‘₯𝑑, i.e.

π‘‘βˆ‘π‘–=1

π‘Žπ‘–π‘₯𝑖 β‰₯ 𝑏 for π‘Ž1, π‘Ž2, . . . , π‘Žπ‘‘, 𝑏 ∈ R

can be expressed as 𝑓(x) β‰₯ 𝑏 in terms of a linear functional

𝑓(x) = (π‘Ž1, π‘Ž2, . . . , π‘Žπ‘‘)𝑇x.

For a ∈ R𝑑, we denote by π‘“π‘Ž(x) the linear functional π‘“π‘Ž(x) = (π‘Ž1, π‘Ž2, . . . , π‘Žπ‘‘)𝑇x.

Having a concise and formal way to express linear relations, the next step is to definethe solution space of a linear equation/inequality. Given a ∈ R𝑑 and 𝑏 ∈ R, the solutionspace of π‘“π‘Ž(x) = 𝑏 is called an affine hyperplane and is denoted by π»π‘Ž,𝑏, i.e.,

π»π‘Ž,𝑏 = {x ∈ R𝑑 : π‘“π‘Ž(x) = 𝑏}.

On the other hand, given a ∈ R𝑑 and 𝑏 ∈ R, the solution space of the inequalityπ‘“π‘Ž(x) β‰₯ 𝑏 is called an affine halfspace and is denoted by β„‹+

π‘Ž,𝑏, i.e.,

β„‹+π‘Ž,𝑏 = {x ∈ R𝑑 : π‘“π‘Ž(x) β‰₯ 𝑏} for some 𝑏 ∈ R.

Naturally, a second half-space is given by β„‹βˆ’π‘Ž,𝑏 = {x ∈ R𝑑 : π‘“π‘Ž(x) ≀ 𝑏}. We note that the

hyperplane π»π‘Ž,𝑏 is the intersection of the two halfspaces β„‹+π‘Ž,𝑏 and β„‹

βˆ’π‘Ž,𝑏, or, equivalently,

the hyperplane divides the Euclidean space into two halfspaces.

1.1. POLYHEDRA, CONES AND SEMIGROUPS 17

π‘₯

𝑦

𝑧

π‘₯

𝑦

𝑧

A hyperplane and a halfspace it defines.

Let’s now consider (finite) intersections of halfspaces. Given two linear functionals π‘“π‘Ž1and π‘“π‘Ž2 for some a1,a2 ∈ R𝑑, and two scalars 𝑏1, 𝑏2 ∈ R, we consider the intersection ofthe two halfspaces

β„‹+π‘Ž1,𝑏1βˆ©β„‹+

π‘Ž2,𝑏2={x ∈ R𝑑 : π‘“π‘Ž1(x) β‰₯ 𝑏1, π‘“π‘Ž2(x) β‰₯ 𝑏2

}For simplicity, we omit the linear functional notation and use matrix notation, as itis customary for systems of linear inequalities. In other words, given a set of vectorsai ∈ R𝑑 and scalars 𝑏𝑖 ∈ R for 𝑖 ∈ [π‘š], we writeβ‹‚

π‘–βˆˆ[π‘š]

β„‹+π‘Žπ‘–,𝑏𝑖

={x ∈ R𝑑 : 𝐴x β‰₯ 𝑏

}

where 𝐴 is the matrix with ai as its 𝑖-th row and 𝑏 = (𝑏1, 𝑏2, . . . , π‘π‘š)𝑇 .

With the above notation and terminology we can proceed with the definition of the firstfundamental object in polyhedral geometry.

Definition 1.2 (Polyhedron)A polyhedron is the intersection of finitely many affine halfspaces in R𝑑. More precisely,given 𝐴 ∈ Rπ‘šΓ—π‘‘ and b ∈ Rπ‘š, then the polyhedron 𝒫𝐴,𝑏 is the subset of R𝑑

𝒫𝐴,𝑏 = {x ∈ R𝑑 : 𝐴x β‰₯ 𝑏}.

οΏ½

An important subclass of polyhedra, in which we will restrict for the rest of the thesis, isthat of rational polyhedra. In the definition of 𝒫𝐴,𝑏 we assume 𝐴 ∈ Rπ‘šΓ—π‘‘ and b ∈ Rπ‘š.If 𝐴′ ∈ Zπ‘šΓ—π‘‘ and 𝑏′ ∈ Zπ‘š can be chosen such that 𝒫𝐴,𝑏 = 𝒫𝐴′,𝑏′ , then the polyhedron𝒫𝐴,𝑏 is called rational. For brevity, if no characterization is given, then we assume apolyhedron is rational.

18 CHAPTER 1. GEOMETRY, ALGEBRA AND GENERATING FUNCTIONS

π‘₯

𝑦

𝑧

A polyhedron

In the beginning of the section we fixed 𝑑 to denote the dimension of the ambientEuclidean space. Moreover, in the definitions of halfspaces and polyhedra we assumedthat these are subsets of R𝑑. Nevertheless, the dimension of a polyhedron is not neces-sarily equal to the dimension of the ambient space as we shall see. In order to define thenotion of the dimension of a polyhedron, we will use the affine hull of a set. Given a realvector space R𝑑 and a set 𝑆 βŠ‚ R𝑑, then affhullR𝑑 𝑆 is the set of all affine combinationsof elements in 𝑆, i.e.,

affhullR𝑑 𝑆 =

{π‘›βˆ‘

𝑖=1

𝛼𝑖si

𝑛 ∈ N*,

π‘›βˆ‘π‘–=1

𝛼𝑖 = 1, π‘Žπ‘– ∈ R

}.

Let 𝒫𝐴,𝑏 be a polyhedron in the ambient Euclidean space R𝑑. The dimension of𝒫𝐴,𝑏, denoted by dim𝒫𝐴,𝑏 is defined to be the dimension of the affine hull of 𝒫𝐴,𝑏, i.e.,

dim𝒫𝐴,𝑏 = dimR𝑑 (affhullR𝑑 𝒫𝐴,𝑏) .

Observe that dim𝒫𝐴,𝑏 ≀ 𝑑 in general. If dim𝒫𝐴,𝑏 = 𝑑, then we say that 𝒫𝐴,𝑏 is fulldimensional. A π‘˜-polyhedron is a polyhedron of dimension π‘˜.

1.1. POLYHEDRA, CONES AND SEMIGROUPS 19

π‘₯

𝑦

𝑧

A non full-dimensional polyhedron. The ambient space dimension is 3, while thedimension of the polyhedron is 2.

1.1.2 Polytopes

Although we will mostly deal with polyhedra, a very important object, especially whenit comes to lattice-point enumeration, is the polytope. Among the numerous equivalentdefinitions of a polytope, we chose the following:

Definition 1.3 (Polytope)A bounded polyhedron is called a polytope. οΏ½

A 3-polytope.

One of the fundamental properties of polytopes, which we will also use in laterchapters, is that a polytope has two equivalent representations, the H-representationand the V-representation. H-representation stands for halfspace representation and itis the set of halfspaces whose intersection is the polytope, i.e., the description we usedin the definition. V-representation stands for vertex representation. A polytope is theconvex hull of its vertices, thus it can be described by a finite set of points in R𝑑. For adetailed proof of this non-trivial fact see Appendix A in [17].

20 CHAPTER 1. GEOMETRY, ALGEBRA AND GENERATING FUNCTIONS

We note that the convex hull of a set of π‘˜ points 𝑆 ∈ R𝑑 is the smallest convex setcontaining 𝑆, or alternatively, the set of all convex combinations of elements from 𝑆, i.e.,

{π‘˜βˆ‘

𝑖=1

𝛼𝑖si

si ∈ 𝑆,

π‘˜βˆ‘π‘–=1

𝛼𝑖 = 1, 𝛼 ∈ R

}.

In order to establish terminology and to define the notion of vertex used above, wedefine the notions of supporting hyperplanes and faces of polyhedra and polytopes. Ahyperplane 𝐻 ∈ R𝑑 is said to support a set 𝑆 βŠ† R𝑑 if

βˆ™ 𝑆 is contained in one of the two closed halfspaces determined by 𝐻,

βˆ™ there exists π‘₯ ∈ 𝑆 such that π‘₯ ∈ 𝐻.

In other words, a supporting hyperplane 𝐻 for the polyhedron 𝑃 is a hyperplane thatintersects 𝑃 and leaves 𝑃 entirely on one side.

π‘₯𝑦

z

π‘₯𝑦

𝑧

Supporting hyperplanes for a cube in 3D

With the use of supporting hyperplanes, we can define now the faces of a polyhedron orpolytope 𝑃 in R𝑑. A face 𝐹 of 𝑃 is the intersection of 𝑃 with a supporting hyperplane𝑆. The dimension of a face 𝐹 is the dimension of affhullR𝑑 𝐹 . A face of dimensionπ‘˜ is called a π‘˜-face. In particular a 0-face is called vertex, a 1-face is called edge orextreme ray and a (dim𝑃 βˆ’ 1)-face is called facet. We note that a face of a polyhedron(resp. polytope) is again a polyhedron (resp. polytope) and that the definition of facedimension is compatible with the the definition of the dimension of a polyhedron.

1.1. POLYHEDRA, CONES AND SEMIGROUPS 21

A facet, a 1-face and a vertex of a 3-polytope.

Simplices are polytopes of very simple structure and are used as building blocks inpolyhedral geometry. We first define the standard simplex in dimension 𝑑.

Definition 1.4 (Standard Simplex)The standard 𝑑-simplex is the subset of R𝑑 defined by

Δ𝑑 =

{(π‘₯1, π‘₯2 . . . , π‘₯𝑑) ∈ R𝑑

π‘‘βˆ‘π‘–=1

π‘₯𝑖 ≀ 1 and π‘₯𝑖 β‰₯ 0 βˆ€π‘–

}Equivalently, the standard 𝑑-simplex Δ𝑑 is the convex hull of the 𝑑+ 1 points:

𝑒0 = (0, 0, 0, . . . , 0), 𝑒1 = (1, 0, 0, . . . , 0), 𝑒2 = (0, 1, 0, . . . , 0), . . . 𝑒𝑑 = (0, 0, 0 . . . , 1).

οΏ½

In general a 𝑑-simplex is defined to be the convex hull of 𝑑 + 1 affinely independentpoints in R𝑑.

π‘₯𝑦

𝑧

π‘₯

𝑦

𝑧

The standard 3-simplex and the simplex defined by (1, 1, 0), (2, 3, 0), (0, 3, 0) and(1, 2, 4).

22 CHAPTER 1. GEOMETRY, ALGEBRA AND GENERATING FUNCTIONS

1.1.3 Cones

In polyhedral geometry, the main object is the polyhedron but the main tool is thepolyhedral cone. It is usual to use cones in order to compute with polyhedra andpolytopes or in general to investigate their properties. A fundamental relation is givenby Brion’s theorem (see Theorem 1.3), connecting polyhedra and cones. Cones arepolyhedra of a special type. They are finite intersections of linear halfspaces.

Definition 1.5 (Polyhedral Cone)Given a set of linear functionals 𝑓𝑖(x) : R𝑑 ↦→ R for 𝑖 ∈ [π‘˜], we define the polyhedralcone

𝐢 ={x ∈ R𝑑

𝑓𝑖(x) β‰₯ 0 for all 𝑖 ∈ [π‘˜]

}οΏ½

For the definition of a cone we used inequalities, complying with the definition of poly-hedron. In what follows though, we will most often define cones via their generators.We first define the conic hull of a set of vectors.

Definition 1.6Given a set of vectors {v1,v2, . . . ,vk} ∈ R𝑑, its conic hull is

co(v1,v2, . . . ,vk) =

{π‘˜βˆ‘

𝑖=1

π‘Ÿπ‘–vi

π‘Ÿπ‘– ∈ R, π‘Ÿπ‘– β‰₯ 0

}.

οΏ½

The following lemma certifies that a cone can be defined via a finite set of generators.

Lemma 1. A polyhedral cone is the conic hull of its (finitely many) extreme rays. οΏ½

Now, given a1,a2, . . . ,ak ∈ R𝑑, we define the cone generated by a1,a2, . . . ,ak as

π’žR (a1,a2, . . . ,ak) = co (a1,a2, . . . ,ak) =

{x ∈ R𝑑

π‘₯ =

π‘˜βˆ‘π‘–=1

ℓ𝑖ai, ℓ𝑖 β‰₯ 0, ℓ𝑖 ∈ R

}.

A cone will be called rational if there exists a set of generators for the cone such thatthe generators contain only rational coordinates. As with polyhedra, since all our conesare rational, we omit the characterization.

1.1. POLYHEDRA, CONES AND SEMIGROUPS 23

π‘₯

𝑦

𝑧

A polyhedral cone.

Among cones, there are two special types that have a central role in computationalpolyhedral geometry. These are simplicial and unimodular cones. A cone in R𝑑 is calledsimplicial if and only if it is generated by linearly independent vectors in R𝑑. We notethat although usually the definition of a simplicial cone asserts 𝑑 linearly independentgenerators, we do not enforce this restriction. The reason is that often our cones, andpolyhedra in general, will not be full dimensional.

A simplicial cone.

The connection to simplices is more than nominal, in particular a section by a hyperplane(not containing the cone apex) of a simplicial π‘˜-cone is a (π‘˜ βˆ’ 1)-simplex. For the restof the section, except if stated differently, our cones are simplicial.

An object encoding all the information contained in a cone is the fundamentalparallelepiped of the cone.

Definition 1.7 (Fundamental Parallelepiped)Given a simplicial cone 𝐢 = π’žR (a1,a2, . . . ,ad) ∈ R𝑑, we define its fundamental paral-lelepiped as

ΠR(𝐢) =

{π‘‘βˆ‘

𝑖=1

π‘˜π‘–ai

π‘˜π‘– ∈ [0, 1)

}

24 CHAPTER 1. GEOMETRY, ALGEBRA AND GENERATING FUNCTIONS

and the set of lattice points in the fundamental parallelepiped as

Ξ Z𝑑(𝐢) = Ξ R(𝐢) ∩ Z𝑑

οΏ½

Note that we assume as working lattice the standard lattice Z𝑑.In the figure below we can see that the cone is spanned by copies of its fundamental

parallelepiped. This is a general fact, i.e., any simplicial cone is spanned by copies of itsfundamental parallelepiped.

(1, 0)

(1, 3)

+(1, 3)

+(1, 0)

The fundamental parallelepiped of the cone generated by (1, 0) and (1, 3).

A cone 𝐢 is called unimodular if and only if Ξ Z𝑑(𝐢) = {0}. An equivalent definitionis that the matrix of cone generators is a unimodular matrix, i.e., it has determinantequal to Β±1. The following lemma gives a condition for a non full-dimensional cone tobe unimodular.

Lemma 2. Let 𝐢 = π’žR (a1,a2, . . . ,an) in R𝑑, for 𝑛 ≀ 𝑑. Let 𝐺 = [a1,a2, . . . ,an],the matrix with ai as columns. If 𝐺 contains a full rank square 𝑛 Γ— 𝑛 submatrix withdeterminant Β±1, then 𝐢 is unimodular. οΏ½

Proof. Let 𝐼 be an index set such that [𝐺𝑖]π‘–βˆˆπΌ is a full rank square 𝑛×𝑛 submatrix withdeterminant Β±1, where 𝐺𝑖 is the 𝑖-th row of 𝐺. Without loss of generality rearrange thecoordinate system such that 𝐼 are the first 𝑛 coordinates. Let 𝐢𝑛 be the (orthogonal)projection of 𝐢 into 𝑅𝑛. Then 𝐢𝑛 is unimodular. Since projection maps lattice pointsto lattice points, the only way that 𝐢 is not unimodular is that Ξ (𝐢) contains latticepoints that all project to the origin. In that case, there would be a generator of theform (0, 0, . . . , 0,an+1,an+2, . . . ,am), which contradicts the assumption that [𝐺𝑖]π‘–βˆˆπΌ isfull rank.

All cones we have seen until now are pointed cones, i.e., they contain a vertex.According to the definition of cone, this is not necessary. A cone may contain a line orhigher dimensional spaces. It is easy to see though, that a cone is pointed if and onlyif it does not contain a line. The unique vertex of a pointed cone is called the apex ofthe cone. Observe that simplicial cones are always pointed.

1.1. POLYHEDRA, CONES AND SEMIGROUPS 25

1.1.4 Semigroups

A semigroup is a very basic algebraic structure, essentially expressing that a set has awell behaved operation. The semigroup operation will be called addition and will bedenoted by +.

Definition 1.8 (Semigroup)A semigroup is a set 𝑆 together with a binary operation + such that

βˆ™ For all π‘Ž, 𝑏 ∈ 𝑆 we have π‘Ž+ 𝑏 ∈ 𝑆.

βˆ™ For all π‘Ž, 𝑏, 𝑐 ∈ 𝑆, we have (π‘Ž+ 𝑏) + 𝑐 = π‘Ž+ (𝑏+ 𝑐).

οΏ½

If a semigroup has an identity element, i.e., there exists 𝑒 in 𝑆 such that for all π‘Ž in𝑆 we have 𝑒 + π‘Ž = π‘Ž + 𝑒 = π‘Ž, then it is called a monoid. The standard example of amonoid is the set of natural numbers N.

Let 𝑆 be a semigroup with operation +. A set 𝐴 βŠ‚ 𝑆 is called a subsemigroup of 𝑆if it is closed under the operation +, i.e., for all π‘Ž and 𝑏 in 𝐴 we have that π‘Ž+ 𝑏 is in 𝐴.

An important notion connecting the algebraic and geometric points of view is thatof an affine semigroup. We note that all semigroups we consider in what follows areaffine (except if the contrary is explicitly stated) due to Theorem 1.1. For brevity wemay omit the characterization affine later.

Definition 1.9 (Affine semigroup [20])A finitely generated semigroup that is isomorphic to a subsemigroup of Z𝑑 for some 𝑑 iscalled affine semigroup. We will call rank(𝑆) or dimension of 𝑆 the number 𝑑, i.e., theleast dimension such that the semigroup 𝑆 is a subsemigroup of Z𝑑. οΏ½

The following theorem by Gordan, in the frame of invariant theory, shows the con-nection between cones and semigroups.

Theorem 1.1 (Gordan’s Lemma, [33])If 𝐢 βŠ‚ R𝑑 is a rational cone and𝐺 a subgroup of Z𝑑, then 𝐢∩𝐺 is an affine semigroup. οΏ½

Gordan’s Lemma allows us to think of lattice points in cones as semigroups. We define,the other way around, the cone of a semigroup.

Definition 1.10 (Cone of 𝑆)Given a subsemigroup 𝑆 of Z𝑑, let π’ž (𝑆) be the smallest cone in R𝑑 containing 𝑆. οΏ½

Given a semigroup 𝑆, a set {𝑔1, 𝑔2, . . . , 𝑔𝑛} βŠ‚ 𝑆 is called a generating set for 𝑆 if andonly if for all π‘Ž in 𝑆 there exist β„“1, β„“2, . . . , ℓ𝑛 in N such that π‘Ž =

βˆ‘π‘›π‘–=0 ℓ𝑖𝑔𝑖. We say that

the semigroup 𝑆 is generated by 𝐺 βŠ‚ 𝑆 if 𝐺 is a generating set for 𝑆. Note that we donot set any kind of requirements about the elements of the generating set.

We already used the term lattice points in an intuitive way. Formally lattice pointsare elements of a lattice and lattice is a group isomorphic to Z𝑑 (see [20]]). If no otherlattice is specified, then one should assume that lattice means Z𝑑.

We next investigate semigroups that have special structural properties. Let 𝑆 bethe intersection of a rational cone with a subgroup of Z𝑑 (due to Gordan’s Lemma the

26 CHAPTER 1. GEOMETRY, ALGEBRA AND GENERATING FUNCTIONS

intersection is a semigroup). An important question is whether the semigroup generatedby the generators of the cone is equal to 𝑆. In order to formalize the question we needthe notions of integral element and integral closure.

Definition 1.11 (Integral element, [20])Given a lattice β„’ and a subsemigroup 𝑆 of β„’, an element π‘₯ ∈ β„’ is called integral over 𝑆if 𝑐π‘₯ ∈ 𝑆 for some 𝑐 ∈ N. οΏ½

Definition 1.12 (Integral Closure)Given a lattice β„’ and a semigroup 𝑆 of β„’, the set of all elements of β„’ that are integralover 𝑆 is called the integral closure of 𝑆 in β„’ and is denoted by 𝑆𝐿. οΏ½

A semigroup 𝑆 is called integrally closed over (or saturated in) a lattice β„’ if 𝑆 = 𝑆ℒ .Thus, the question above becomes β€œis 𝑆 saturated?”. When we say that 𝑆 is saturated,without specifying the lattice, we mean that it is saturated in Z𝑑. Note that most authorswould mean that the semigroup is saturated in its group of differences Z𝑆, rather thanZ𝑑.

The following proposition provides the connection between a saturated semigroupand its cone.

Proposition 1 (2.1.1. in [20]). Let 𝑆 be an affine semigroup of the lattice β„’ generatedby 𝑔1, 𝑔2, . . . , 𝑔𝑛. Then

βˆ™ 𝑆ℒ = β„’ ∩ π’žR (𝑔1, 𝑔2, . . . , 𝑔𝑛)

βˆ™ βˆƒπ‘ 1, 𝑠2, . . . , π‘ π‘˜ such that 𝑆ℒ =β‹ƒπ‘˜

𝑖=1 𝑠𝑖 + 𝑆

βˆ™ 𝑆ℒ is an affine semigroup.

οΏ½

Now it is clear that there are three objects we could think of as cones, namely thepolyhedral cone, the lattice points contained in the polyhedral cone and the semigroupgenerated by the generators of the cone. This already shows that we need some notationto distinguish these cases, but before establishing it, we will examine cones whose apicesare not the origin and cones that have open faces.

Let 𝐢 ∈ R𝑑 be the cone π’žR (𝑔1, 𝑔2, . . . , 𝑔𝑛) and let 𝐢 β€² ∈ R𝑑 be the cone 𝐢 translatedby the vector π‘ž ∈ R𝑑. Then we have a bijection πœ‘ : R𝑑 β†’ R𝑑 given by πœ‘(π‘₯) = π‘ž + π‘₯,where addition is the vector space addition, such that 𝐢 β€² = πœ‘(𝐢). As long as π‘ž is in thelattice β„’, then lattice points are mapped to lattice points. Although πœ‘ is a semigrouphomomorphism, it is not a monoid homomorphism. This is why we prefer to view themonoids coming from cones with apex at the origin as semigroups and not monoids. It isimportant to note that any unimodular transformation, i.e., a linear transformation givenby a square matrix with determinant Β±1, preserves the lattice point structure. 1 Thus

1for translation we have to homogenize in order to have a square matrix with determinant Β±1 givingthe transformation. Otherwise we can allow transformations given by a unimodular matrix plus atranslation.

1.1. POLYHEDRA, CONES AND SEMIGROUPS 27

there exists a bijection between the lattice points of the original and the transformedcone. This fact will be used later in order to enumerate lattice points in the fundamentalparallelepiped of a cone.

Translation of cones.

Assume 𝐢 is a simplicial cone and let [π‘˜] = 𝐼 βŠ‚ N be the index set for its generators.Then each face of 𝐢 can be identified with a set 𝐼𝐹 βŠ† 𝐼, since a face has the form{

π‘₯ ∈ R𝑑

π‘₯ =

π‘˜βˆ‘π‘–=1

β„“π‘–π‘Žπ‘–, ℓ𝑖 ∈ R, ℓ𝑖 > 0 for 𝑖 /∈ 𝐼𝐹 , ℓ𝑗 = 0 for 𝑗 ∈ 𝐼𝐹

}.

Essentially, this means that the face is generated by a subset of the generators. Notethat 𝐼𝐹 contains the indices of the generators of the simplicial cone 𝐢 that are not usedto generate 𝐹 . A facet is identified with the index of the single generator not used togenerate it.

π‘₯

𝑦

π‘Ž1

π‘Ž2

π‘Ž3{2}

{1, 2}

Half-open cones

Given a cone 𝐢, removing from 𝐢 the points lying on a facet 𝐹 of 𝐢, we obtaina cone 𝐢 β€² that has the same faces as 𝐢 except for the faces included in 𝐹 . From the

28 CHAPTER 1. GEOMETRY, ALGEBRA AND GENERATING FUNCTIONS

previous discussion, for each facet we need only to mention the generator correspondingto that facet. We will use a 0 βˆ’ 1 vector π‘œ to express the openess of a cone, i.e., theopeness vector has an entry of 1 in the position π‘˜ if the facet corresponding to the π‘˜-thgenerator is open. If 𝐼 = [π‘˜] then the cone is open and if βˆ… = 𝐼 βŠ‚ [π‘˜] then the cone ishalf-open.

The above discussion motivates an updated definition of polyhedral cones and relatednotation.

Definition 1.13Given π‘Ž1, π‘Ž2, . . . , π‘Žπ‘˜, π‘ž ∈ Z𝑑 and an index set 𝐼 βŠ† [π‘˜], we define:

βˆ™ the (real) cone generated by π‘Ž1, π‘Ž2, . . . , π‘Žπ‘˜ at π‘ž as

π’žπΌR (π‘Ž1, π‘Ž2, . . . , π‘Žπ‘˜; π‘ž) =

{π‘₯ ∈ R𝑑 : π‘₯ = π‘ž +

π‘˜βˆ‘π‘–=1

β„“π‘–π‘Žπ‘–, ℓ𝑖 β‰₯ 0, ℓ𝑖 ∈ R, ℓ𝑗 > 0 for 𝑗 ∈ 𝐼

}

βˆ™ the semigroup generated by π‘Ž1, π‘Ž2, . . . , π‘Žπ‘˜ at π‘ž as

π’žπΌZ (π‘Ž1, π‘Ž2, . . . , π‘Žπ‘˜; π‘ž) =

{π‘₯ ∈ R𝑑 : π‘₯ = π‘ž +

π‘˜βˆ‘π‘–=1

β„“π‘–π‘Žπ‘–, ℓ𝑖 β‰₯ 0, ℓ𝑖 ∈ Z, ℓ𝑗 > 0 for 𝑗 ∈ 𝐼

}

βˆ™ given a lattice β„’, the saturated semigroup generated by π‘Ž1, π‘Ž2, . . . , π‘Žπ‘˜ at π‘ž as

π’žπΌR,β„’ (π‘Ž1, π‘Ž2, . . . , π‘Žπ‘˜; π‘ž) = π’žπΌR (π‘Ž1, π‘Ž2, . . . , π‘Žπ‘˜; π‘ž) ∩ β„’

π’žR ((1, 1), (2, 0)) π’žZ ((1, 1), (2, 0)) π’žR,Z𝑑 ((1, 1), (2, 0))

π’žR ((1, 1), (2, 0); (1, 3)) π’žZ ((1, 1), (2, 0); (1, 3)) π’žR,Z𝑑 ((1, 1), (2, 0); 1, 3))

1.1. POLYHEDRA, CONES AND SEMIGROUPS 29

π’ž{1}R ((1, 1), (2, 0); (1, 3)) π’ž{1}Z ((1, 1), (2, 0); (1, 3)) π’ž{1}R,Z𝑑 ((1, 1), (2, 0); (1, 3))

Illustration of the definitions.

οΏ½

An important tool in polyhedral geometry is triangulation. A polyhedral objectwith complicated geometry can be decomposed into simpler ones. The building block isthe simplex. Since we are interested mostly in cones, we present the definition for thetriangulation of a cone.

Definition 1.14 (Triangulation of a cone)We define a triangulation of a real cone 𝐢 = π’žR (𝑔1, 𝑔2, . . . , π‘”π‘˜) as a finite collection ofsimplicial cones Ξ“ = {𝐢1, 𝐢2, . . . , 𝐢𝑑} such that:

βˆ™β‹ƒπΆπ‘– = 𝐢,

βˆ™ If 𝐢 β€² ∈ Ξ“ then every face of 𝐢 β€² is in Ξ“,

βˆ™ 𝐢𝑖 ∩ 𝐢𝑗 is a common face of 𝐢𝑖 and 𝐢𝑗 .

οΏ½

The following proposition says that we can triangulate a cone without introducing newrays.

Proposition 2 (see [17]). A pointed convex polyhedral cone 𝐢 admits a triangulation Ξ“whose 1-dimensional cones are the extreme rays of 𝐢. οΏ½

A concept that we will use heavily in later chapters is that of the vertex cone.

Definition 1.15 (Tangent and Feasible Cone)Let 𝑃 βŠ† R𝑑 be a polyhedron and 𝑣 a vertex of 𝑃 , the tangent cone 𝒦𝑣 and the feasiblecone ℱ𝑣 of 𝑃 at 𝑣 are defined by

ℱ𝑣 := {𝑒 | βˆƒπ›Ώ > 0 : 𝑣 + 𝛿𝑒 ∈ 𝑃} ,𝒦𝑣 := 𝑣 + ℱ𝑣.

οΏ½

We will call 𝒦𝑣 a vertex cone.

30 CHAPTER 1. GEOMETRY, ALGEBRA AND GENERATING FUNCTIONS

1.2 Formal Power Series and Generating Functions

1.2.1 Formal Power Series

Starting from the univariate polynomial ring, we will climb up an hierarchy of algebraicstructures that are related to polyhedral geometry and partition analysis. For a moredetailed exposition see [34, 37] and references therein.

Let K be a field, that we can assume is the field of complex numbers. As usual, wedenote by K[𝑧] the polynomial ring in the variable 𝑧. We will generalize polynomials infour ways, namely by considering fractions of polynomials, allowing an infinite numberof terms, allowing negative exponents and considering more than one variables.

The polynomial ring K[𝑧] contains no zero-divisors, thus it is an integral domain.Since K[𝑧] is an integral domain, we can define its fraction field, i.e., the field of univariaterational functions, denoted by K(𝑧). A polynomial can be considered as a formal sumβˆ‘

π‘–βˆˆπΌπ‘Žπ‘–π‘§

𝑖 for some finite index set 𝐼 βŠ† N and π‘Žπ‘– ∈ K.

If we allow as index sets infinite subsets of the natural numbers, then we obtain formalpowerseries

π‘Ž(𝑧) =

βˆžβˆ‘π‘–=0

π‘Žπ‘–π‘§π‘– for π‘Žπ‘– ∈ K.

Another way to see formal powerseries is as sequences. Given an infinite sequence 𝐴 =[π‘Ž1, π‘Ž2, . . .] with elements from K and a formal variable 𝑧, then π‘Ž(𝑧) represents 𝐴. Theusual definition of formal powerseries is as sequences. Define the following two operationsof addition and (Cauchy) multiplication for two formal powerseries π‘Ž(𝑧) and 𝑏(𝑧):

π‘Ž(𝑧) + 𝑏(𝑧) =

βˆžβˆ‘π‘–=0

(π‘Žπ‘– + 𝑏𝑖) 𝑧𝑖,

π‘Ž(𝑧)𝑏(𝑧) =βˆžβˆ‘π‘–=0

βŽ›βŽ π‘–βˆ‘π‘—=0

π‘Žπ‘—π‘π‘–βˆ’π‘—

⎞⎠ 𝑧𝑖.

The ring of formal powerseries is the set

KJ𝑧K =

{ βˆžβˆ‘π‘–=0

π‘Žπ‘–π‘§π‘–

π‘Žπ‘– ∈ K

}

equipped with the above defined addition and multiplication. Note that the ring ofpolynomials is a subring of the ring of formal powerseries. If we allow for polynomialscontaining negative exponents (but only finitely many terms), then we obtain the ring ofLaurent polynomials. We denote this ring by K

[𝑧, π‘§βˆ’1

]or K

[𝑧±1]. Next, we construct

the polynomial ring K[π‘₯, 𝑦] as (K[𝑦]) [π‘₯], i.e., the ring of polynomials in π‘₯ with coefficientsin the ring K[𝑦] . We define recursively the polynomial ring in 𝑑 variables, denoted by

1.2. FORMAL POWER SERIES AND GENERATING FUNCTIONS 31

K[𝑧1, 𝑧2, . . . , 𝑧𝑑]. The fraction field of K[𝑧1, 𝑧2, . . . , 𝑧𝑑], which is the multivariate versionof the rational function field, is denoted by K(𝑧1, 𝑧2, . . . , 𝑧𝑑). As in the univariate case,allowing for negative exponents, we obtain the multivariate Laurent polynomial ring,denoted by K[𝑧±1

1 , 𝑧±12 , . . . , 𝑧±1

𝑑 ]. Like we did with polynomials, we can construct thering KJπ‘₯, 𝑦K of formal powerseries in π‘₯ and 𝑦 as the ring of formal powerseries in π‘₯with coefficients in KJ𝑦K. A ring that we will use extensively in the next chapters isthat of multivariate formal powerseries in 𝑑 variables, defined recursively and denotedby KJ𝑧1, 𝑧2, . . . , 𝑧𝑑K.

An important property of the ring of formal powerseries is given by the following

Lemma 3 (see [27]). If 𝐷 is an integral domain then 𝐷J𝑧K is an integral domain aswell. οΏ½

Now, let us define the field of univariate Laurent series, which can be thought ofeither as the fraction field of the ring of univariate formal powerseries or as Laurentpolynomials with finitely many terms of negative exponent but possibly infinitely manyterms of positive exponent. More formally

Definition 1.16 (Univariate formal Laurent series)The set of formal expressions

KL𝑧M =

{βˆ‘π‘˜βˆˆZ

π‘Žπ‘˜π‘§π‘˜

π‘Žπ‘˜ ∈ K, π‘Žπ‘˜ = 0 for all but finitely many negative values of π‘˜

}

equipped with the usual addition and (Cauchy) multiplication is the field of univariateformal Laurent series. οΏ½

The multivariate equivalent is much harder to deal with. In particular, there aremany candidates as appropriate generalizations. We will explore some of them.

In [37], Xin presents two generalizations of formal Laurent series. The first and morestraightforward is that of iterated Laurent series.

Definition 1.17 (Iterated Laurent series, Section 2.1 in [37])The field of iterated Laurent series in π‘˜ variables is defined recursively as

KβŸ¨βŸ¨π‘§1, 𝑧2, . . . , π‘§π‘˜βŸ©βŸ© = KβŸ¨βŸ¨π‘§1, 𝑧2, . . . , π‘§π‘˜βˆ’1⟩⟩Lπ‘§π‘˜M

where KβŸ¨βŸ¨π‘§1⟩⟩ = L𝑧1M. οΏ½

Next he presents Malcev-Neuman series, which allow the most general setting amongthe ones presented here.

Definition 1.18 (Malcev-Neuman series, Theorem 3-1.6 in [37])Let 𝐺 be a totally ordered monoid and 𝑅 a commutative ring with unit. A formal seriesπœ‚ on 𝐺 has the form

πœ‚ =βˆ‘π‘”βˆˆπΊ

π‘Žπ‘”π‘”

32 CHAPTER 1. GEOMETRY, ALGEBRA AND GENERATING FUNCTIONS

where π‘Žπ‘” ∈ 𝑅 and 𝑔 is regarded as a symbol. The support of πœ‚ is defined to be theset {𝑔 ∈ 𝐺 | π‘Žπ‘” = 0}. A Malcev-Neumann series is a formal series on 𝐺 that has a well-ordered support. We define 𝑅𝑀[𝐺] to be the set of all such MN-series. Then 𝑅𝑀[𝐺] is aring. οΏ½

In [34], Aparicio-Monforte and Kauers introduce three algebraic structures relatedto multivariate formal Laurent series. They use polyhedral cones and the notion of acompatible additive ordering for their definitions.

Definition 1.19 (Compatible additive ordering [34])Given a pointed simplicial cone 𝐢 ∈ R𝑑 with apex at the origin, a total order ≀ on Z𝑑 iscalled additive if for all π‘Ž, 𝑏, 𝑐 ∈ Z𝑑 we have π‘Ž ≀ 𝑏→ π‘Ž+𝑐 ≀ 𝑏+𝑐. It is called compatiblewith the cone 𝐢 if 0 ≀ π‘˜ for all π‘˜ ∈ 𝐢. οΏ½

First they define the ring of multivariate formal Laurent series supported in a cone.

Definition 1.20 (Multivariate Laurent series from cones [34])Given a pointed cone 𝐢 ∈ R𝑑, the set

K𝐢 J𝑧1, 𝑧2, . . . , 𝑧𝑑K =

{βˆ‘π‘˜βˆˆπΆ

π‘Žπ‘˜π‘§π‘˜

π‘Žπ‘˜ ∈ K

}

equipped with the usual addition and Cauchy multiplication forms a ring . οΏ½

A larger ring is obtained if we fix an ordering and consider the collection π’ž of all conesthat are compatible with this ordering ≀. Then

K≀ J𝑧1, 𝑧2, . . . , 𝑧𝑑K =β‹ƒπΆβˆˆπ’ž

K𝐢 J𝑧1, 𝑧2, . . . , 𝑧𝑑K

is a ring.

Finally, Aparicio-Monforte and Kauers construct a field of multivariate formal Lau-rent series by taking the union of translates of K≀ J𝑧1, 𝑧2, . . . , 𝑧𝑑K to all lattice points.

K≀L𝑧1, 𝑧2, . . . , 𝑧𝑑M =β‹ƒπ‘’βˆˆZ𝑑

𝑧𝑒K≀ J𝑧1, 𝑧2, . . . , 𝑧𝑑K .

The lattice points of a pointed cone form a well-ordered set. Moreover, given theadditive compatible ordering, required by the construction of K≀ J𝑧1, 𝑧2, . . . , 𝑧𝑑K, the sup-port of each object in K≀ J𝑧1, 𝑧2, . . . , 𝑧𝑑K is well-ordered (and 0 is the minimum). Finally,in the construction of K≀L𝑧1, 𝑧2, . . . , 𝑧𝑑M the supports appearing in K≀J𝑧1, 𝑧2, . . . , 𝑧𝑑K maybe translated, but this does not affect the fact that they are well-ordered. This meansthat these three constructions are examples of Malcev-Neuman series, as noted in [34].

Now we will put into the picture of the algebraic structures the sets of power seriesand rational functions occurring in the geometric context. The generating function forthe lattice points of a rational simplicial polyhedral cone is a rational function, see nextsection.

1.2. FORMAL POWER SERIES AND GENERATING FUNCTIONS 33

Definition 1.21 (Polyhedral Laurent Series [16])The space 𝑃𝐿 of polyhedral Laurent series is the K[𝑧±1

1 , 𝑧±12 , . . . , 𝑧±1

𝑑 ]-submodule ofK[[𝑧±1

1 , 𝑧±12 , . . . , 𝑧±1

𝑑 ]] generated by the set of formal series⎧βŽͺ⎨βŽͺβŽ©βˆ‘

π‘ βˆˆ(𝐢∩Z𝑑)

𝑧𝑠

𝐢 is a simplicial rational cone

⎫βŽͺ⎬βŽͺ⎭ .

οΏ½

Since any cone can be triangulated by using only simplicial cones, we have that PLcontains the formal power series expressions of the generating functions of all rationalcones. Due to the vertex cone decomposition of polyhedra (see Section 1.3.2), 𝑃𝐿 alsocontains the generating functions of all polyhedra.

The following diagram presents the relations of the structures discussed above.

34 CHAPTER 1. GEOMETRY, ALGEBRA AND GENERATING FUNCTIONS

[𝑧±1 , 𝑧±2 , . . . , 𝑧±𝑛 ]

Malcev-Neuman

KβŸ¨βŸ¨π‘§1, 𝑧2, . . . , π‘§π‘›βŸ©βŸ© Kβ‰₯L𝑧1, 𝑧2, . . . , 𝑧𝑛M

K𝐢J𝑧1, 𝑧2, . . . , 𝑧𝑛KK (𝑧1, 𝑧2, . . . , 𝑧𝑛)

KJ𝑧1, 𝑧2, . . . , 𝑧𝑛K

KL𝑧M

K[𝐺]

𝑃𝐿

K[𝑧±11 , 𝑧±1

2 , . . . , 𝑧±1𝑑 ]

Generatingfunctions of

cones

K(𝑧)

K[𝑧1, 𝑧2, . . . , 𝑧𝑛]

KJ𝑧K

K[𝑧±1]

K[𝑧]

Relations of algebraic structures related to polynomials, formal power series andrational functions.

1.2. FORMAL POWER SERIES AND GENERATING FUNCTIONS 35

1.2.2 Generating Functions

One of the most important tools in combinatorics and number theory, when dealingwith infinite sequences, is that of generating functions. The hope is that a generatingfunction, although encoding full information of an infinite object, has a short (or at leastfinite) representation. We will restrict the definitions presented here in a way that coversour use of generating functions without introducing generality that reduces clarity. Fora detailed introduction see [27, 36].

The generating function is a tool for representing infinite sequences in a handy way.A sequence is a map from N to a set of values. We will assume that our values comefrom a field K, but we note that for the most part of the thesis, the only possible valuesare 0 and Β±1. The usual notation for a sequence is 𝐴 = [π‘Ž0, π‘Ž1, π‘Ž2, . . .] = (π‘Žπ‘–)π‘–βˆˆN. Wedefine the generating function of 𝐴 as the formal sum

Φ𝐴 =βˆžβˆ‘π‘–=0

π‘Žπ‘–π‘§π‘–

This is a formal powerseries in KJ𝑧K.If we want to compute the generating function of a set 𝑆, subset of the natural

numbers, we can use the above definition by considering the sequence 𝐴 = [π‘Ž0, π‘Ž1, π‘Ž2, . . .],where π‘Žπ‘– = 1 if 𝑖 ∈ 𝑆 and π‘Žπ‘– = 0 otherwise. More formally, we consider the indicatorfunction of the set 𝑆, defined as

[𝑆](π‘₯) =

{1 : π‘₯ ∈ 𝑆,0 : π‘₯ /∈ 𝑆.

and then 𝐴 = ([𝑆](𝑖))π‘–βˆˆN. We will use the notation Φ𝑆 for the generating function ofthe set 𝑆, where Φ𝑆 = Φ𝐴 for 𝐴 = ([𝑆](𝑖))π‘–βˆˆN. Naturally, the first example is the naturalnumbers:

Ξ¦N(𝑧) =βˆ‘π‘–βˆˆN

[N](𝑖)𝑧𝑖 =βˆ‘π‘–βˆˆN

𝑧𝑖 =1

(1βˆ’ 𝑧).

A slight variation is the sequence of even natural numbers. Then we have

Ξ¦2N(𝑧) =βˆ‘π‘–βˆˆN

[2N](𝑖)𝑧𝑖 =βˆ‘π‘—βˆˆN

𝑧2𝑗 =1

(1βˆ’ 𝑧2).

Although these two examples look too simple, it is their multivariate versions that coverthe majority of the cases we are interested in.

With the above definition we can use generating functions to deal with subsets ofthe natural numbers, but this is not sufficient for our purposes. We need to be able todescribe sets containing negative integers. Thus, we extend the definition for subsets ofZ. Given a set 𝑆 βŠ† Z, we define

Φ𝑆 =βˆ‘π‘–βˆˆπ‘†

𝑧𝑖.

36 CHAPTER 1. GEOMETRY, ALGEBRA AND GENERATING FUNCTIONS

This is not a formal powerseries anymore and depending on the set 𝑆 it may not be aformal Laurent series either.

Although univariate generating functions are very useful for counting, for our pur-poses multivariate ones are essential. The generalization is straightforward.

Definition 1.22 (Generating Function)Given a set 𝑆 βŠ‚ Z𝑑, we define the generating function of 𝑆 as the formal sum

Φ𝑆 =βˆ‘π‘–βˆˆZ𝑑

[𝑆](𝑖)𝑧𝑖.

οΏ½

The formal sum representation of a set is no more than syntactic sugar. The represen-tation of a set of numbers or of its formal sum representation have the same (potentially)infinite number of terms. As already stated, the expectation is to have a more condensedrepresentation. A glimpse on that was given in the example of the generating functionof the natural numbers, through the use of the geometric series expansion formula. Weproceed now more formally and setting the necessary notation, defining what a rationalgenerating function is.

Definition 1.23 (Rational Generating Function)Let 𝑆 βŠ‚ Z𝑑. If there exists a rational function in K(𝑧1, 𝑧2, . . . , 𝑧𝑑), which has a seriesexpansion equal to Φ𝑆 , then we denote that rational function by πœŒπ‘† (𝑧1, 𝑧2, . . . , 𝑧𝑑) andcall it a rational generating function of 𝑆. οΏ½

Here one should note that we make no assumptions on the form of the rationalfunction (e.g. reduced, the denominator has a specific form etc.). This means that aformal powerseries (or formal Laurent series) may have more than one rational functionforms. In the other way, the same rational function can have more than one seriesexpansions. In other words, although the formal sum generating function of a set is a welldefined object, the rational generating function of a set is subject to more parameters.It is not well defined (yet), but extremely useful. We will heavily use rational generatingfunctions and in Section 1.3 we will explain why we are on safe ground.

1.2.3 Generating Functions for Semigroups

In this thesis we deal with generating functions related to polyhedra. For this, it is suffi-cient to compute with generating functions of cones. There are two types of semigroupsthat are of interest for us, the discrete semigroup generated by a set of integer vectorsand the corresponding saturated semigroup. We first compute the generating functionof the semigroup 𝑆 = π’žZ ((1, 3), (1, 0)).

1.2. FORMAL POWER SERIES AND GENERATING FUNCTIONS 37

π’žZ (N) ((1, 3), (1, 0)).The generating function as a formal power series is

Φ𝑆(z) =βˆ‘

i∈{π‘˜(1,3)+β„“(1,0)|π‘˜,β„“βˆˆN}

zi =βˆ‘π‘˜,β„“βˆˆN

zπ‘˜(1,3)+β„“(1,0) =

(βˆ‘π‘˜βˆˆN

zπ‘˜(1,3)

)(βˆ‘β„“βˆˆN

zβ„“(1,0)

).

Thus, by the geometric series expansion formula we have

πœŒπ‘†(z) =

(1

1βˆ’ z(1,3)

)(1

1βˆ’ z(1,0)

)=

1(1βˆ’ 𝑧1𝑧32

)(1βˆ’ 𝑧1)

.

In general it is easy to see that if a1,a2, . . . ,an are linearly independent, then for thesemigroup 𝑆 = π’žZ (a1,a2, . . . ,an) we have

πœŒπ‘†(z) =1

(1βˆ’ za1) (1βˆ’ za2) Β· Β· Β· (1βˆ’ zan).

This is true because in the expansion of 1(1βˆ’za1 )(1βˆ’za2 )Β·Β·Β·(1βˆ’zan ) we get as exponents all

non-negative integer combinations of the exponents in the denominator.Observe that if we translate the semigroup to a lattice point, then the structure does

not change at all.

π’žZ (N) ((1, 3), (1, 0); (1, 1)).

38 CHAPTER 1. GEOMETRY, ALGEBRA AND GENERATING FUNCTIONS

There is a bijection between π’žZ ((1, 3), (1, 0)) and π’žZ ((1, 3), (1, 0; (1, 1)), given by 𝑓(s) =s+ (1, 1). Translating this to generating functions we have that

Ξ¦π’žZ((1,3),(1,0);(1,1))(z) =

βˆ‘i∈{π‘˜(1,3)+β„“(1,0)+(1,1)|π‘˜,β„“βˆˆN}

zi

=βˆ‘π‘˜,β„“βˆˆN

zπ‘˜(1,3)+β„“(1,0)+(1,1)

= z(1,1)

(βˆ‘π‘˜βˆˆN

zπ‘˜(1,3)

)(βˆ‘β„“βˆˆN

zβ„“(1,0)

).

Now it is clear that the generating function for π’žZ ((1, 3), (1, 0; (1, 1)) is rational , namely

πœŒπ’žZ((1,3),(1,0);(1,1))(z) = z(1,1)

(1

1βˆ’ z(1,3)

)(1

1βˆ’ z(1,0)

)=

𝑧1𝑧2(1βˆ’ 𝑧1𝑧32

)(1βˆ’ 𝑧1)

.

In general for a semigroup 𝑆 = π’žZ (a1,a2, . . . ,an;q) we have

πœŒπ‘†(z) =zq

(1βˆ’ za1) (1βˆ’ za2) Β· Β· Β· (1βˆ’ zan).

Saturated Semigroup

Let’s consider the saturated semigroup 𝑆 = π’žR,Z𝑑 ((1, 3), (1, 0)), and compute its gener-

ating function as a formal powerseries Φ𝑆 =βˆ‘π‘ βˆˆπ‘†

z𝑠.

π’žR,Z𝑑 ((1, 3), (1, 0)).

We observe in the following figure that 𝑆 can be partitioned in three sets. The bluepoints are reachable starting from the origin and using only the cone generators. Thered points are reachable by using only the cone generators if we start from the point(1, 1). And similarly for the green ones if we start from (1, 2).

1.2. FORMAL POWER SERIES AND GENERATING FUNCTIONS 39

The saturated semigroup separated in three subsets.

This provides a direct sum decomposition

π’žR,Z𝑑 ((1, 3), (1, 0)) = π’žZ ((1, 3), (1, 0))βŠ• π’žZ ((1, 3), (1, 0); (1, 1))βŠ• π’žZ ((1, 3), (1, 0); (1, 2)) .

In general we have the following relation:

π’žR,Z𝑑 (a1,a2, . . . ,an) = βŠ•q∈ΠZ𝑑(π’žR(a1,a2,...,an))π’žZ (a1,a2, . . . ,an;q) .

If the apex π‘ž of the cone of the saturated semigroup is not the origin, we have to translateevery lattice point by π‘ž, thus multiply the generating function by zq.From the relation above and the form of the rational generating function of a discretesemigroup π’žZ (a1,a2, . . . ,an;q) we immediately deduce the lemma:

Lemma 4. For a saturated semigroup 𝑆 = π’žR,Z𝑑 (a1,a2, . . . ,an; π‘ž) we have

πœŒπ‘†(z) =π‘§π‘žβˆ‘

π›ΌβˆˆΞ Z𝑑(π’žR(a1,a2,...,an)) z

𝛼

(1βˆ’ za1) (1βˆ’ za2) Β· Β· Β· (1βˆ’ zan).

οΏ½

Generating Functions of Open Cones

Given a simplicial cone

π’žπΌR (a1,a2, . . . ,ak;q) =

{π‘₯ ∈ R𝑑 : π‘₯ = π‘ž +

π‘˜βˆ‘π‘–=1

ℓ𝑖a𝑖, ℓ𝑖 ∈ N, ℓ𝑗 > 0 for 𝑗 ∈ 𝐼

}we can apply the inclusion exclusion principle to get an expression of the open cone asa signed sum of closed cones

π’žπΌR (a1,a2, . . . ,ak;q) =βˆ‘π‘€βŠ‚πΌ

(βˆ’1)|𝑀 |π’žR((ai)π‘–βˆˆπΌβˆ–π‘€ ;q

).

40 CHAPTER 1. GEOMETRY, ALGEBRA AND GENERATING FUNCTIONS

Example 1. Given the half-open cone π’ž{1,2}R ((1, 0, 0), (0, 1, 0), (0, 0, 1)) we have

π’ž{1,2}R ((1, 0, 0), (0, 1, 0), (0, 0, 1)) = π’žR ((1, 0, 0), (0, 1, 0), (0, 0, 1))

βˆ’ (π’žR ((1, 0, 0), (0, 0, 1)) + π’žR ((0, 1, 0), (0, 0, 1)))

+ π’žR ((0, 0, 1)) .

π‘₯

𝑦

π‘Ž1

π‘Ž2

π‘Ž3

{1}

⟨(1, 0, 0), (0, 0, 1)⟩

{2}

{1, 2}

Inclusion-exclusion for π’ž{1,2}R ((1, 0, 0), (0, 1, 0), (0, 0, 1); 0).

οΏ½

1.3. FORMAL SERIES, RATIONAL FUNCTIONS AND GEOMETRY 41

1.3 Formal Series, Rational Functions and Geometry

In this section we review some facts from polyhedral geometry and generating functionsof polyhedra. The main goal is to arrive to a consistent correspondence between ratio-nal generating functions for polyhedra and formal powerseries. This is done throughthe definition of expansion directions. In the end of the section we present two funda-mental theorems from polyhedral geometry for the decomposition of rational generatingfunctions and shortly review Barvinok’s algorithm.

1.3.1 Indicator and rational generating functions

We start by the definition of the space of indicator functions of rational polyhedra.

Definition 1.24 (from [11])The real vector space spanned by indicator functions [𝑃 ] of rational polyhedra 𝑃 ∈ R𝑑

is called the algebra of rational polyhedra in R𝑑 and is denoted by 𝒫Q(R𝑑). οΏ½

Theorem 3.3 in [11] is essential for the connection of geometry with rational functions.

Theorem 1.2 (VIII.3.3 in [11])There exists a map

𝜏 : 𝒫Q(R𝑑)β†’ C (𝑧1, 𝑧2, . . . , 𝑧𝑑)

such that

βˆ™ 𝜏 is a linear transformation (valuation).

βˆ™ If 𝑃 ∈ R𝑑 is a rational polyhedron without lines, then 𝜏 [𝑃 ] = πœŒπ‘ƒ (z) such thatπœŒπ‘ƒβˆ©Z𝑑(z) = Ξ¦

π‘ƒβˆ©Z𝑑(z), provided that Ξ¦π‘ƒβˆ©Z𝑑(z) converges absolutely.

βˆ™ For a function 𝑔 ∈ 𝒫Q(R𝑑)and q ∈ Z𝑑, let β„Ž(z) = 𝑔(zβˆ’ q) be a shift of 𝑔. Then

πœβ„Ž = zqπœπ‘”.

βˆ™ If 𝑃 ∈ R𝑑 is a rational polyhedron containing a line, then 𝜏 [𝑃 ] ≑ 0.

οΏ½

Let us see how this map works in an example.

Example 2. Let 𝑑 = 1. We consider the polyhedra:

βˆ™ 𝑃+ = R+ (including the origin)

βˆ™ π‘ƒβˆ’ = Rβˆ’ (including the origin)

βˆ™ 𝑃 = R (the real line)

βˆ™ 𝑃0 = {0}

The associated generating functions (converging in appropriate regions) are:

42 CHAPTER 1. GEOMETRY, ALGEBRA AND GENERATING FUNCTIONS

βˆ™ Φ𝑃+∩Z(𝑧) =βˆ‘

π‘šβˆˆπ‘ƒ+∩Zπ‘§π‘š =

βˆžβˆ‘π‘š=0

π‘§π‘š =1

1βˆ’ 𝑧= πœŒπ‘ƒ+∩Z(𝑧)

βˆ™ Ξ¦π‘ƒβˆ’βˆ©Z(𝑧) =βˆ‘

π‘šβˆˆπ‘ƒβˆ’βˆ©Zπ‘§π‘š =

0βˆ‘π‘š=βˆ’βˆž

π‘§π‘š =1

1βˆ’ π‘§βˆ’1= πœŒπ‘ƒβˆ’βˆ©Z(𝑧)

βˆ™ Φ𝑃0∩Z(𝑧) =βˆ‘

π‘šβˆˆπ‘ƒ0∩Zπ‘§π‘š = π‘₯0 = 1 = πœŒπ‘ƒ0∩Z(𝑧)

From Theorem 1.2 we have that:

βˆ™ 𝜏 [𝑃+] =1

1βˆ’π‘§

βˆ™ 𝜏 [π‘ƒβˆ’] =1

1βˆ’π‘§βˆ’1

βˆ™ 𝜏 [𝑃0] = 1

By inclusion-exclusion we have

[𝑃 ] = [𝑃+] + [π‘ƒβˆ’]βˆ’ [𝑃0]

Thus one expects that

0 = 𝜏 [𝑃 ] = 𝜏 [𝑃+] + 𝜏 [π‘ƒβˆ’]βˆ’ 𝜏 [𝑃0] =1

1βˆ’ 𝑧+

1

1βˆ’ π‘§βˆ’1βˆ’ 1

which is indeed the case. In other words

πœŒπ‘ƒβˆ©Z(𝑧) = πœŒπ‘ƒ+∩Z(𝑧) + πœŒπ‘ƒβˆ’βˆ©Z(𝑧)βˆ’ πœŒπ‘ƒ0∩Z(𝑧).

οΏ½

Example 3. Compute the integer points of 𝑃 = [π‘˜, 𝑛] βŠ‚ R for π‘˜ < 𝑛. Let 𝑃1 = [βˆ’βˆž, 𝑛]and 𝑃2 = [π‘˜,∞]. Then

[𝑃 ] = [𝑃1] + [𝑃2]βˆ’ [R]

and

βˆ™ Φ𝑃1∩Z(𝑧) =βˆ‘βˆž

π‘š=π‘˜ π‘§π‘š = π‘§π‘˜

1βˆ’π‘§ β†’ 𝜏 [𝑃1] =π‘§π‘˜

1βˆ’π‘§ = πœŒπ‘ƒ1∩Z(𝑧)

βˆ™ Φ𝑃2∩Z(𝑧) =βˆ‘π‘›

π‘š=βˆ’βˆž π‘§π‘š = 𝑧𝑛

1βˆ’π‘§βˆ’1 β†’ 𝜏 [𝑃2] =𝑧𝑛

1βˆ’π‘§βˆ’1 = πœŒπ‘ƒ2∩Z(𝑧)

βˆ™ 𝜏 [R] = 0 = 𝜌R∩Z(𝑧)

Thus

πœŒπ‘ƒβˆ©Z =π‘§π‘˜

1βˆ’ 𝑧+

𝑧𝑛

1βˆ’ π‘§βˆ’1=

π‘§π‘˜ βˆ’ 𝑧𝑛+1

1βˆ’ 𝑧

1.3. FORMAL SERIES, RATIONAL FUNCTIONS AND GEOMETRY 43

This is expected becauseπ‘§π‘˜

1βˆ’ 𝑧is the generating function of the ray starting at π‘˜, while

𝑧𝑛+1

1βˆ’ 𝑧is the generating function of the ray starting at 𝑛+1. Subtracting the second from

the first we obtain the segment 𝑃 .If we evaluate πœŒπ‘ƒβˆ©Z(𝑧) at 𝑧 = 1 (using de l’Hospital’s rule) we get 𝑛 βˆ’ π‘˜ + 1, the

number of lattice points in 𝑃 . οΏ½

Theorem 1.2 provides a correspondence between different representations of gener-ating functions of polyhedra.

Given an indicator function 𝑔 : R𝑑 β†’ {0, 1}, 𝑔 ∈ 𝒫Q(R𝑑), we consider its restriction

𝑔′ : Z𝑑 β†’ {0, 1}. We denote by 𝒫Q(Z𝑑)the set of restricted indicator functions.

𝒫𝑑R 𝒫Q

(R𝑑)

𝒫𝑑Z 𝒫Q

(Z𝑑)

Kβ‰₯J𝑧K K(𝑧)

𝑓1

𝑓2

𝑓3

𝑓4

𝑓5

𝜏

𝑓6

𝑓7

𝑓8

Figure 1.1: Polyhedra, indicator functions, Laurent and rational generating functions.

The arrows in Figure 1.1 have the following meaning:

𝑓1 Bijection between polyhedra in R𝑑 and their indicator functions.

𝑓2 Map a polyhedron 𝑃 ∈ R𝑑 to 𝑃 ∩ Z𝑑 .

𝑓3 Bijection between sets of lattice points of polyhedra and their Laurent series gen-erating functions.

𝑓4 Bijection between lattice points in polyhedra and their restricted indicator func-tions.

𝑓5 Bijection between restricted indicator function of polyhedra and their Laurentseries generating functions.

𝑓6 Map the restricted indicator function of a polyhedron to a rational function.

𝑓7 Restriction.

𝑓8 Map a Laurent series with support in a polyhedron to a rational function.

44 CHAPTER 1. GEOMETRY, ALGEBRA AND GENERATING FUNCTIONS

In order to be able to map multivariate Laurent series to rational functions we restrictto series in Kβ‰₯J𝑧K, i.e., we assume that the series have support in a pointed cone [34].The most important maps are 𝑓8 and 𝑓6, but unfortunately they are not bijective. Wewill first see why and then fix this bijection.

When trying to establish the connection between formal powerseries, rational func-tions and polyhedral geometry we encounter problems due to the one-to-many relationbetween rational functions and their Laurent expansions.

Example 4 ([23]). Consider the finite set 𝑆 = {0, 1, 2, . . . , π‘Ž} βŠ‚ N. Its rational gener-ating function is the truncated geometric series

πœŒπ‘†(𝑧) =1βˆ’ π‘§π‘Ž+1

1βˆ’ 𝑧

Now we can rewrite this expression as

πœŒπ‘†(𝑧) =1

(1βˆ’ 𝑧)βˆ’ π‘§π‘Ž+1

(1βˆ’ 𝑧)

=1

(1βˆ’ 𝑧)+

π‘§π‘Ž

(1βˆ’ π‘§βˆ’1)

and we can expand each summand using the geometric series expansion formula.

πœŒπ‘†(𝑧) =1

(1βˆ’ 𝑧)+

π‘§π‘Ž

(1βˆ’ π‘§βˆ’1)

=(𝑧0 + 𝑧1 + 𝑧2 + . . .

)+(π‘§π‘Ž + π‘§π‘Žβˆ’1 + π‘§π‘Žβˆ’2 + . . .

)= 2Φ𝑆(𝑧) +

βˆžβˆ‘π‘–=π‘Ž+1

𝑧𝑖 +βˆ’1βˆ‘

𝑖=βˆ’βˆžπ‘§π‘–.

If we interpret each of the summands geometrically we end up with the required segmentcounted twice and the rest of the line counted once, which is not what we expected. Thisis due to the fact that the power series expansions around 0 and∞ of the two summands,viewed as analytic functions, have disjoint regions of convergence. In particular we have:

1

(1βˆ’ 𝑧)=

{𝑧0 + 𝑧1 + 𝑧2 + Β· Β· Β· for|𝑧| < 1,βˆ’π‘§βˆ’1 βˆ’ π‘§βˆ’2 βˆ’ π‘§βˆ’3 Β· Β· Β· for|𝑧| > 1

and

π‘§π‘Ž

1βˆ’ π‘§βˆ’1=

{βˆ’π‘§π‘Ž+1 βˆ’ π‘§π‘Ž+2 βˆ’ π‘§π‘Ž+3 Β· Β· Β· for|𝑧| < 1,π‘§π‘Ž + π‘§π‘Žβˆ’1 + π‘§π‘Žβˆ’2 Β· Β· Β· for|𝑧| > 1.

Thus, only the choices where the region of convergence coincide seem natural:

1.3. FORMAL SERIES, RATIONAL FUNCTIONS AND GEOMETRY 45

πœŒπ‘†(𝑧) =1

(1βˆ’ 𝑧)+

π‘§π‘Ž

(1βˆ’ π‘§βˆ’1)

=(𝑧0 + 𝑧1 + 𝑧2 + Β· Β· Β·

)+(βˆ’π‘§π‘Ž+1 βˆ’ π‘§π‘Ž+2 βˆ’ π‘§π‘Ž+3 Β· Β· Β·

)= Φ𝑆(𝑧)

or

πœŒπ‘†(𝑧) =1

(1βˆ’ 𝑧)+

π‘§π‘Ž

(1βˆ’ π‘§βˆ’1)

=(βˆ’π‘§βˆ’1 βˆ’ π‘§βˆ’2 βˆ’ π‘§βˆ’3 Β· Β· Β·

)+(π‘§π‘Ž + π‘§π‘Žβˆ’1 + π‘§π‘Žβˆ’2 Β· Β· Β·

)= Φ𝑆(𝑧).

οΏ½

Moving from the rational generating function of a set to its geometric representation,we are fixing an expansion direction. This is implicitly done through choosing theLaurent expansion we will interpret geometrically. In Example 4 essentially we pick adirection (either towards positive infinity of negative infinity) and consistently take seriesexpansions with respect to this direction. Even if each of the summands have a perfectlymeaningful expansion with respect to any direction, when we want to make sense out oftheir sum (or simultaneously consider their geometry) we need a consistent choice. Thefollowing example shows how this is important for our purposes.

Example 5. Consider the rational function 𝑓(𝑧) = 𝑧3

(1βˆ’π‘§) . One can take either theβ€œforward” or the β€œbackward” expansion of 𝑓 as Laurent power series corresponding toexpansions around 0 or ∞.

𝑧3

(1βˆ’ 𝑧)=

{𝑧3 + 𝑧4 + 𝑧5 + 𝑧6 + Β· Β· Β· = 𝐹1

βˆ’π‘§2 βˆ’ 𝑧1 βˆ’ 𝑧0 βˆ’ π‘§βˆ’1 βˆ’ Β· Β· Β· = 𝐹2

If we denote by 𝐹 ′𝑖 the power series having only the terms of 𝐹𝑖 that have non-negative

exponents then𝐹 β€²1 = 𝑧3 + 𝑧4 + 𝑧5 + 𝑧6 + Β· Β· Β· = Ξ¦[3,∞](𝑧)

and𝐹 β€²2 = βˆ’π‘§2 βˆ’ 𝑧1 βˆ’ 𝑧0 = βˆ’Ξ¦[0,2](𝑧)

Observe that the two resulting rational functions 𝜌[3,∞](𝑧) and βˆ’πœŒ[0,2](𝑧) are different,one is a polynomial and the other is not, although 𝐹1 and 𝐹2 are expansions of the samerational function. οΏ½

The operation of keeping only the terms with non-negative exponents is a specialkind of taking intersections in terms of geometry. Moreover, it is an essential part of thecomputation of Ξ©β‰₯ in a geometric way (see Section 3.1).

46 CHAPTER 1. GEOMETRY, ALGEBRA AND GENERATING FUNCTIONS

Now we will define the notion of forward expansion direction more formally. Forbi ∈ R𝑛, let 𝐡 = {b1,b2, . . . ,bn} be an ordered basis of R𝑛 and

𝐻𝐡 =

{βˆ‘π‘–

ℓ𝑖bi : ℓ𝑖 ∈ R, if 𝑗 ∈ [𝑛] is minimal such that ℓ𝑗 = 0 then ℓ𝑗 > 0

}βˆͺ {0}.

We need the notion of the recession cone in order to define directions.

Definition 1.25 (Recession Cone)Given a polyhedron 𝑃 , its recession cone is defined as

rec(𝑃 ) = {𝑦 ∈ R𝑛 : π‘₯+ 𝑑𝑦 ∈ 𝑃 for all π‘₯ ∈ 𝑃 and for all 𝑑 β‰₯ 0}

οΏ½

In order for a Laurent series with support 𝑆 to be well defined we require that thereexists a polyhedron 𝑃 such that 𝑆 βŠ‚ 𝑃 and rec(𝑃 ) βŠ‚ 𝐻𝐡, for some ordered basis 𝐡. Wesay that 𝐻𝐡 defines the β€œforward directions”, in the following sense.

Definition 1.26 (Forward Direction)For any ordered basis 𝐡 of R𝑛 we call 𝑣 ∈ R𝑛 forward if and only if 𝑣 ∈ 𝐻𝐡. οΏ½

Note that for every 𝑣 ∈ Z𝑛 βˆ’ {0} either 𝑣 or βˆ’π‘£ is forward. Now we can fix theproblem we had in the diagram about correspondence of generating functions.

Lemma 5. Fix an ordered basis. If Laurent series expansions are taken, consistently,only with respect to forward directions, then there is a bijection between Laurent seriesgenerating functions of lattice points of polyhedra and the respective rational generatingfunctions. οΏ½

From now on, we will use series expansions using only forward directions.

Example 6. Let 𝑃1 = [π‘˜,∞] and 𝑃2 = [βˆ’βˆž, 𝑛]. We want to compute Φ𝑃1+𝑃2(𝑧) and

πœŒπ‘ƒ1+𝑃2(𝑧).

The forward directions are given by the basis 𝐡 = {1} of R and thus 𝐻𝐡 containsall vectors that have positive first coordinate, i.e., 𝑣 ∈ R with 𝑣 > 0. In other words, weaccept any Laurent series that are (possibly) infinite towards ∞, but not towards βˆ’βˆž.

We have

Φ𝑃1∩Z(𝑧) =

βˆžβˆ‘π‘š=π‘˜

π‘§π‘š =π‘§π‘˜

1βˆ’ 𝑧⇒ 𝜏 [𝑃1] =

π‘§π‘˜

1βˆ’ 𝑧= πœŒπ‘ƒ1∩Z(𝑧)

but for the second cone, the expansion should be consistent, i.e., towards ∞. Thus wewill use 𝑃3 = [𝑛+ 1,∞] and the fact that 𝑃2 = Rβˆ’ 𝑃3. We know that [𝑃2] = [R]βˆ’ [𝑃3]since 𝑃2 ∩ 𝑃3 = βˆ…. From Theorem 1.2 we know that 𝜏 [R] = 0, thus [𝑃2] = βˆ’[𝑃3]. Thisimplies that in the computation of the rational generating function we can ignore R.

Φ𝑃2∩Z(𝑧) = Ξ¦R∩Z(𝑧)βˆ’ Φ𝑃3∩Z(𝑧) =

βˆžβˆ‘π‘š=βˆ’βˆž

π‘§π‘š βˆ’βˆžβˆ‘

π‘š=𝑛+1

π‘§π‘š

1.3. FORMAL SERIES, RATIONAL FUNCTIONS AND GEOMETRY 47

∼ βˆ’βˆžβˆ‘

π‘š=𝑛+1

π‘§π‘š = βˆ’ 𝑧𝑛+1

1βˆ’ 𝑧⇒ 𝜏 [𝑃2] = βˆ’

𝑧𝑛+1

1βˆ’ 𝑧= πœŒπ‘ƒ2∩Z(𝑧).

∼ means that the two Laurent series correspond to polyhedra with the same rationalfunction. Geometrically this means to β€œflip” the ray from pointing to βˆ’βˆž to pointing to∞.

Thus

πœŒπ‘ƒβˆ©Z(𝑧) =π‘§π‘˜

1βˆ’ π‘§βˆ’ 𝑧𝑛+1

1βˆ’ 𝑧=

π‘§π‘˜ βˆ’ 𝑧𝑛+1

1βˆ’ 𝑧.

οΏ½

The reason why this phenomenon is not a problem for the classical Ξ©β‰₯ algorithms (seeSection 3.1) is that by the construction of the crude generating function, we make a choiceof expansion directions for all πœ† variables. In particular, when converting the multisumexpression into a rational function, we chose to consider only β€œforward” expansions forall variables (where forward is defined with respect to the standard basis).

1.3.2 Vertex cone decompositions

We present two theorems that provide formulas for writing the rational generating func-tion of a polyhedron as a sum of rational generating functions of vertex cones. The maindifference between the two formulas is that in the Lawrence-Varchenko formula all conesinvolved are considered as forward expansions, while in Brion’s formula this is not true.

As a matter of fact, Brion’s formula holds true in the indicator functions level modingout lines, which is equivalent to changing the direction of a ray. When reading theformula in the rational function level though, this is not visible since the generatingfunctions of cones obtained by flipping directions are different as Laurent series but thesame as rational functions.

Theorem 1.3 (Brion, 4.5 in [11])Let 𝑃 βŠ‚ R𝑑 be a rational polyhedron and 𝒦𝑣 be the tangent cone of 𝑃 at vertex 𝑣. Then

[𝑃 ] =βˆ‘

𝑣 vertex of 𝑃

[𝒦𝑣] mod polyhedra containing lines

οΏ½

Observe that from a general inclusion exclusion formula for indicator functions of tangentcones, if we mod out polyhedra containing lines, then only the vertex cones survive. Asa corollary, applying the map of Theorem1.2, we obtain

Proposition 3 (see [17]). If 𝑃 is a rational polyhedron, then

πœŒπ‘ƒ (z) =βˆ‘

𝑣 vertex of 𝑃

πœŒπ’¦π‘£(z)

οΏ½

48 CHAPTER 1. GEOMETRY, ALGEBRA AND GENERATING FUNCTIONS

A similar theorem is given by Lawrence and Varchenko (independently), see [16].Assume 𝑃 is a simple polytope in R𝑑 and fix a direction πœ‰ ∈ R𝑑 that is not perpendicularto any edge of 𝑃 . Denote by 𝐸+

𝑣 (πœ‰) the set of edge directions 𝑀 at the vertex 𝑣 suchthat 𝑀 Β· πœ‰ > 0 and πΈβˆ’

𝑣 (πœ‰) the set of edge directions 𝑀 such that 𝑀 Β· πœ‰ < 0. We definethe vertex cones at 𝑣 by flipping the direction of the edges that belong in πΈβˆ’

𝑣 (πœ‰). Moreprecisely

πΎπœ‰π‘£ = 𝑣 +

βˆ‘π‘€βˆˆπΈ+

𝑣 (πœ‰)

Rβ‰₯0𝑀 +βˆ‘

π‘€βˆˆπΈβˆ’π‘£ (πœ‰)

R<0𝑀

Theorem 1.4 (Lawrence-Varchenko, [16])At the rational generating functions level we have

πœŒπ‘ƒ (z) =βˆ‘

𝑣 a vertex in 𝑃

(βˆ’1)|πΈβˆ’π‘£ (πœ‰)|𝜌

πΎπœ‰π‘£(z)

οΏ½

In other words, for each flip when constructing the vertex cone we multiply the rationalgenerating function of the cone by βˆ’1. In the following figures, we see in action theapplication of a vertex cone decomposition for a pentagon. 2

-

-

-

-

-

+

1.3.3 Barvinok’s Algorithm

Barvinok’s algorithm [12, 28], if the dimension is fixed, is a polynomial-time algorithmthat computes the rational generating function of a rational polyhedron.

The main idea behind the algorithm is to compute a unimodular decomposition ofthe given polyhedron. To this end, we first triangulate in order to obtain simplicialcones. If we try to decompose a simplicial cone 𝐢 into cones that sum up to 𝐢 (possiblyusing inclusion-exclusion), in the worst case, we will need as many cones as the numberof lattice points in the fundamental parallelepiped of the cone. This means that insteadof having a potentially exponentially big numerator polynomial, we have a sum of verysimple rational functions (with numerator equal to 1), but with potentially exponentiallymany summands.

2These figures were shown to me by Felix Breuer.

1.3. FORMAL SERIES, RATIONAL FUNCTIONS AND GEOMETRY 49

Barvinok proposed the use of signed decompositions. Instead of decomposing thecone 𝐢 into unimodular cones that are contained in 𝐢, one can find a unimodulardecomposition where cones with generators in the exterior of 𝐢 are involved. In thatcase, the generating functions of the unimodular cones involved in the sum will have asign. The advantage of such a signed unimodular decomposition is that it is computablein polynomial time (in fixed dimension), which implies that the number of unimodularcones is not exponential as well.

Algorithm 1 Summary of Barvinok’s algorithm

Require: 𝑃 βŠ‚ R𝑑 is a rational polyhedron in h-representation

1: Compute the vertices of 𝑃 , denoted by 𝑣𝑖.2: Compute the vertex cones 𝑃𝑣𝑖 .3: If necessary, triangulate 𝑃𝑣𝑖 .4: Compute a signed unimodular decomposition (find a shortest vector).5: Compute the lattice points in the fundamental parallelepiped of each cone.6: return

βˆ‘π‘–=1,2...,(number of cones) πœ–π‘–

1βˆπ‘‘π‘—=1

(1βˆ’zb

]ij) , where πœ–π‘– is the sign of the 𝑖-th cone

in the signed decomposition and 𝑏𝑖1, 𝑏𝑖2 . . . , 𝑏𝑖𝑑 are the generators of the 𝑖-th cone.

50 CHAPTER 1. GEOMETRY, ALGEBRA AND GENERATING FUNCTIONS

Chapter 2

Linear Diophantine Systems

’Here lies Diophantus,’ the wonderbehold. Through art algebraic, thestone tells how old: ’God gave him hisboyhood one-sixth of his life, Onetwelfth more as youth while whiskersgrew rife; And then yet one-seventhere marriage begun; In five yearsthere came a bouncing new son. Alas,the dear child of master and sageAfter attaining half the measure ofhis father’s life chill fate took him.After consoling his fate by the scienceof numbers for four years, he endedhis life.’

Diophantus tombstone

The main focus of this thesis is on the solution of linear Diophantine systems. Inthis chapter, we introduce some of their properties and provide a classification that isuseful when considering algorithms for solving linear Diophantine systems.

2.1 Introduction

Definition

As the name suggests we have a linear system of equations/inequalities. From linearalgebra, the standard representation of linear systems is in matrix notation. Since werespect Diophantus’ viewpoint, our matrices will always be in Zπ‘šΓ—π‘‘. In addition, thereis the restriction that the solutions are non-negative integers.

Let M be the set Z Γ— [𝑑1, 𝑑2, . . . , π‘‘π‘˜], where [𝑑1, 𝑑2, . . . , π‘‘π‘˜] denotes the multiplicativemonoid generated by 𝑑1, 𝑑2, . . . , π‘‘π‘˜. In other words, M is the set of monomials in the

51

52 CHAPTER 2. LINEAR DIOPHANTINE SYSTEMS

variables 𝑑𝑖 with integer coefficients. We first give the definition of a linear Diophantinesystem.

Definition 2.1Given 𝐴 ∈ Zπ‘šΓ—π‘‘, 𝑏 ∈ Mπ‘š and ♦ ∈ {β‰₯,=}, the triple (𝐴, 𝑏,♦) is called a linear Dio-phantine system. Note that the relation is considered componentwise (one inequal-ity/equation per row). Let 𝑆 = {π‘₯ ∈ N𝑑|𝐴π‘₯♦𝑏}. οΏ½

We denote the family of solution sets 𝑆 as 𝑆(t) in order to indicate the dependenceon the parameters. Moreover, we will denote by |𝑆(t)| the function on t mapping eachset in the family to its cardinality. We will refer to the family of sets 𝑆(t) as the solutionset of the linear Diophantine system.

Assuming that 𝑏 lives in (ZΓ— [𝑑1, 𝑑2, . . . , π‘‘π‘˜])π‘š is essential for the understanding of a

certain category of problems, but for many interesting problems one can restrict tohaving constant right-hand side, i.e., 𝑏 ∈ Zπ‘š. In the latter case, we use 𝑆 and |𝑆|, sincethe family contains only one member.

Characteristics

A linear Diophantine system has two important characteristics. These are related toits geometry and influence greatly the algorithmic treatment. A linear Diophantinesystem defines a polyhedron, whose lattice points are the solutions to the system. If thepolyhedron is bounded, i.e, it is a polytope, then we say that the linear Diophantinesystem is bounded. If the polyhedron is parametric, we say that the linear Diophantinesystem is parametric. We will clarify the notion of parametric with two examples.

The (vector partition function) problem((1 32 1

),

(𝑏1𝑏2

),β‰₯)

is parametric, since the right hand side contains (honest) elements of Z Γ— [𝑏1, 𝑏2]. Thechoice of 𝑏1 and 𝑏2 can change considerably the geometry of the problem. The changein geometry is apparent for 𝑏1 = 4, 𝑏2 = 9 and 𝑏1 = 4, 𝑏2 = 3 in the following figures.

0 2 4 6 8 10

0

2

4

6

8

0 2 4 6 8 10

0

2

4

6

8

2.1. INTRODUCTION 53

On the other hand, the problem (of symmetric 3Γ— 3 magic squares with magic sum 𝑑)βŽ›βŽβŽ›βŽ 1 1 1 0 0 00 1 0 1 1 00 0 1 0 1 1

⎞⎠ ,

βŽ›βŽ 𝑑𝑑𝑑

⎞⎠ ,=

⎞⎠is not a parametric problem, since the (positive integer) parameter 𝑑 does not changethe geometry of the problem (every element of the right hand side is a non-constantunivariate monomial in 𝑑). In other words, we can consider the polytope 𝑃 , defined bythe linear Diophantine systemβŽ›βŽβŽ›βŽ 1 1 1 0 0 0

0 1 0 1 1 00 0 1 0 1 1

⎞⎠ ,

βŽ›βŽ 111

⎞⎠ ,=

⎞⎠and the problem is restated as counting (or listing) lattice points in 𝑑𝑃 , i.e., in dilationsof 𝑃 . Thus 𝑑 is a dilation parameter and is not changing the geometry of the problem.

It is important for any further analysis to define properly the size of a linear Dio-phantine problem. There are three input size quantities that are all relevant concerningthe size of a problem:

βˆ™ 𝐡 is the number of bits needed to represent the matrix 𝐴.

βˆ™ 𝑑 is the number of variables.

βˆ™ π‘š is the number of relations (equations/inequalities).

In the number of relations we do not count the non-negativity constraints for thevariables. In the number of variables we do not count parameters in parametric problems.These two rules are essential in order to differentiate between problems and to defineproblem equivalence.

Counting vs Listing

Given a linear Diophantine system, one can ask two questions:

βˆ™ How many solutions are there?

βˆ™ What are the solutions?

The first is called the counting problem, while the second is the listing problem.We are interested in solving these two problems in an efficient way. The listing of thesolutions may be exponentially big in comparison to the input size 𝐡 (or even infinite),thus we need a representation of the answer that encodes the solutions in an efficientway. We resort to the use of generating functions for that reason. More precisely, thesolution to the listing problem is a full (or multivariate) generating function, while forthe counting problem is a counting generating function.

54 CHAPTER 2. LINEAR DIOPHANTINE SYSTEMS

In the literature, depending on the motivation of each author, the problem specifi-cation is (sometimes silently) altered. In order to tackle the problem in an algorithmicway, we have to first resolve the specification issue. The formal definitions we use forthe two problems we are interested in are

Definition 2.2 (Listing Linear Diophantine Problem)Given a linear Diophantine system (𝐴, 𝑏,♦) ∈ Zπ‘šΓ—π‘‘Γ—Mπ‘šΓ—{=,β‰₯}, denote by 𝑆(t) thesolution set of the linear Diophantine system. Compute the generating function

ℒ𝐴,𝑏,♦(z,q) =βˆ‘t∈Zπ‘š

βŽ›βŽ βˆ‘xβˆˆπ‘†(t)

zx

⎞⎠qt.

οΏ½

Definition 2.3 (Counting Linear Diophantine Problem)Given a linear Diophantine system (𝐴, 𝑏,♦) ∈ Zπ‘šΓ—π‘‘Γ—Mπ‘šΓ—{=,β‰₯}, denote by 𝑆(t) thesolution set of the system. Compute the generating function

π’žπ΄,𝑏,♦(t) =βˆ‘t∈Zπ‘š

|𝑆(t)|qt.

οΏ½

Complexity

The reason why we restrict to linear systems is that algorithmic treatment of the general(polynomial) problem is not feasible. This is the celebrated Hilbert’s 10th problem, whichMatiyasevich [32] solved in the negative direction. In other words, there is no algorithmto decide if a polynomial has integer solutions.

Although the restriction to linear systems makes the problem algorithmically solv-able, it does not make it efficiently solvable. The problem remains NP-hard.

Reduction

The decision problem of linear Diophantine systems (LDS) is

decide if there exists π‘₯ ∈ N𝑑

such that 𝐴π‘₯ β‰₯ 𝑏

In order to show that LDS is NP-hard we reduce from 3-SAT [26]:

given a boolean expression 𝐡(π‘₯) =β‹€π‘š

𝑖=1𝐢𝑖 in 𝑑-variables,where 𝐢𝑖 is a disjunction of three literalsdecide if there exists π‘₯ ∈ {0, 1}𝑑 such that 𝐡(π‘₯) = 1

2.1. INTRODUCTION 55

For each clause π‘Œπ‘– βˆ¨π‘Œπ‘— βˆ¨π‘Œπ‘˜, where π‘Œπ‘’ is either 𝑦𝑒 or ¬𝑦𝑒, we construct an inequality𝑋𝑖 +𝑋𝑗 +π‘‹π‘˜ β‰₯ 1 where 𝑋𝑒 is π‘₯𝑒 or (1βˆ’ π‘₯𝑒) accordingly.

Let π‘Žπ‘–π‘₯ β‰₯ 𝑏𝑖 be the inequality corresponding to the 𝑖-th clause of 𝐡(π‘₯). Moreover,

let 𝑄 =

βŽ‘βŽ’βŽ’βŽ’βŽ£π‘Ž1π‘Ž2...π‘Žπ‘š

⎀βŽ₯βŽ₯βŽ₯⎦ ∈ Zπ‘šΓ—π‘‘ , 𝑏+ =

βŽ‘βŽ’βŽ’βŽ’βŽ£π‘1𝑏2...π‘π‘š

⎀βŽ₯βŽ₯βŽ₯⎦ ∈ Zπ‘š , π‘βˆ’ =

βŽ‘βŽ’βŽ’βŽ’βŽ£βˆ’1βˆ’1...βˆ’1

⎀βŽ₯βŽ₯βŽ₯⎦ ∈ Z𝑑 and 𝐼𝑑 be the rank

𝑑 unit matrix.

Then if 𝐴 =

[π‘„βˆ’πΌπ‘‘

]and 𝑏 =

[𝑏+

π‘βˆ’

]we have

π‘₯ ∈ N𝑑 such that 𝐴π‘₯ β‰₯ 𝑏⇔ 𝐡(π‘₯) = 1.

We note that this reduction is polynomial.

56 CHAPTER 2. LINEAR DIOPHANTINE SYSTEMS

2.2 Classification

We examine the hierarchy of problems related to linear Diophantine systems from theperspective of the nature of the problem. Although many problems admit the samealgorithmic solution, their nature may be very diverse. Similarly, problems that looksimilar may differ a lot when it comes to their algorithmic solution. There is a twofoldmotivation for this classification. On one hand, it clarifies (by refining) the specificationsof the linear Diophantine problems. On the other hand, it provides useful insight con-cerning the algorithmics, by providing base, degenerate or special cases for the β€œgeneral”problems.

Moreover, since many problems are equivalent, it is useful to have an overview of thealternatives one has for solving a particular instance of a problem by reformulating it asan instance of another.

Another important aspect is that a problem (and its solution) may change a lotdepending on whether one is interested in the full generating function β„’ (listing problem)or the counting generating function π’ž (counting problem).

Each of these two types of problems contains several subproblems, depending on thedomain of the coefficients and the relation involved (equation or inequality).

2.2.1 Classification

For a problem (𝐴, 𝑏,♦), we will use a four letter notation MHRT, where M is the domainof the matrix 𝐴, H is M if the problem is parametric with respect to 𝑏, O if the problem ishomogeneous or the domain of 𝑏 if the problem is inhomogeneous, R is β‰₯ or = dependingon whether we have inequalities or equations and T is B for bounded or U for unboundedproblems.

In the diagram we see the inclusion relations (if a class A is included in class B, thenan instance from A is also an instance of B).

The following list gives some rules eliminating some of the cases:

1. *𝑂 *𝐡 has {0} as its solution set.

2. N* β‰₯ * is unbounded.

3. N𝑂 * * is trivially satisfied (N𝑑 is its solution set).

4. NZ β‰₯ * is trivially satisfied (N𝑑 is its solution set).

5. NZ=* is infeasible.

We note that a problem is assumed to belong to one of the above classes and notany of its subclasses in order to apply the rules. For example, the last rule means thatthe inhomogeneous part has a negative entry, otherwise we would consider the problemin the class of problems with inhomogeneous part in N.

Omitting the cases covered above, we obtain the following diagram:

2.2. CLASSIFICATION 57

Z,M,=, π‘ˆ Z,M,β‰₯, π‘ˆ

N,M,β‰₯, π‘ˆ

Z,M,=, 𝐡 Z,M,β‰₯, 𝐡

N,M,=, 𝐡

Z,Z,=, π‘ˆ Z,Z,β‰₯, π‘ˆ

Z,Z,=, 𝐡 Z,Z,β‰₯, 𝐡

Z,N,=, π‘ˆ Z,N,β‰₯, π‘ˆ

N,N,β‰₯, π‘ˆ

Z,N,=, 𝐡

N,N,=, 𝐡

Z, 0,=, π‘ˆ Z, 0,β‰₯, π‘ˆ

We now present examples for some of the cases and provide names and referencesused in literature when available.

58 CHAPTER 2. LINEAR DIOPHANTINE SYSTEMS

N,N,=, 𝐡

Name: Magic Squares

References: [4], Ch.4. Prop 4.6.21 in [35], S6.2 in [17]

Description: 3Γ— 3 symmetric matrices of row and column sum equal to 𝑛

Matrix 𝐴 vector 𝑏 ParametersβŽ›βŽœβŽœβŽœβŽ1 1 1 0 0 0

0 1 0 1 1 0

0 0 1 0 1 1

βŽžβŽŸβŽŸβŽŸβŽ βŽ›βŽœβŽœβŽœβŽ

1

1

1

⎞⎟⎟⎟⎠ 𝑛

Listing (𝑧0𝑧1𝑧2𝑧3𝑧4𝑧5π‘ž3βˆ’1)(𝑧1𝑧5π‘žβˆ’1)(𝑧0𝑧4π‘žβˆ’1)(𝑧2𝑧3π‘žβˆ’1)(𝑧0𝑧3𝑧5π‘žβˆ’1)(𝑧1𝑧2𝑧4π‘ž2βˆ’1)

Counting (1+π‘ž+π‘ž2

(1βˆ’π‘ž)4(1+π‘ž)

Name: Magic Pentagrams

References: S3, page 14 in [5]

Description: Partitions of 𝑛 into parts satisfying relations given by a pentagram withthe parts as vertices and inequalities given by the edges.

Matrix 𝐴 vector π‘βŽ›βŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽ

1 0 0 1 0 1 0 0 0 1

1 0 1 0 0 0 1 1 0 0

0 1 0 0 1 1 1 0 0 0

0 0 1 0 1 0 0 0 1 1

0 1 0 1 0 0 0 1 1 0

⎞⎟⎟⎟⎟⎟⎟⎟⎟⎟⎠

βŽ›βŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽ

2

2

2

2

2

⎞⎟⎟⎟⎟⎟⎟⎟⎟⎟⎠Listing

π‘žπ‘§210𝑧23𝑧

37𝑧

34

(βˆ’π‘§3𝑧6+𝑧7𝑧10)(βˆ’π‘§3𝑧4+𝑧8𝑧10)(𝑧4𝑧27𝑧9𝑧10π‘žβˆ’1)(𝑧2𝑧3𝑧4𝑧7𝑧10π‘žβˆ’1)Β·

1(𝑧3𝑧24𝑧5𝑧7π‘žβˆ’1)(𝑧3𝑧24𝑧

27𝑧10π‘žβˆ’π‘§1)

Counting (π‘ž2+3π‘ž+1)(π‘ž2+13π‘ž+1)(π‘žβˆ’1)6

2.2. CLASSIFICATION 59

Z,Z,β‰₯, 𝐡

Name: Solid Partitions on a Cube

References: S4.1 in [4]

Description: Partitions of 𝑛 subject to relations given by a cube where the vertices arethe parts and the directed edges indicate the inequalities.

Matrix 𝐴 vector π‘βŽ›βŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽ

1 βˆ’1 0 0 0 0 0 0

1 0 βˆ’1 0 0 0 0 0

1 0 0 0 βˆ’1 0 0 0

0 1 0 βˆ’1 0 0 0 0

0 1 0 0 0 βˆ’1 0 0

0 0 1 βˆ’1 0 0 0 0

0 0 1 0 0 0 βˆ’1 0

0 0 0 1 0 0 0 βˆ’1

0 0 0 0 1 βˆ’1 0 0

0 0 0 0 1 0 βˆ’1 0

0 0 0 0 0 1 0 βˆ’1

0 0 0 0 0 0 1 βˆ’1

1 1 1 1 1 1 1 1

βˆ’1 βˆ’1 βˆ’1 βˆ’1 βˆ’1 βˆ’1 βˆ’1 βˆ’1

⎞⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎠

βŽ›βŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽœβŽ

0...

0

1

βˆ’1

⎞⎟⎟⎟⎟⎟⎟⎟⎟⎟⎠

Listing 𝑧4𝑧2𝑧1π‘ž3

(1βˆ’π‘§6π‘ž)(𝑧5π‘žβˆ’1)(𝑧1π‘žβˆ’1)(𝑧1𝑧2π‘ž2βˆ’1)(𝑧1𝑧2𝑧4π‘ž3βˆ’1)(𝑧1𝑧2𝑧3𝑧4π‘ž4βˆ’1)Β·

1(𝑧1𝑧2𝑧3𝑧4𝑧5𝑧7π‘ž6βˆ’1)(𝑧1𝑧2𝑧3𝑧4𝑧5𝑧6𝑧7𝑧8π‘ž8βˆ’1)

Counting (π‘ž16+2π‘ž14+2π‘ž13+3π‘ž12+3π‘ž11+5π‘ž10+4π‘ž9+8π‘ž8+4π‘ž7+5π‘ž6+3π‘ž5+3π‘ž4+2π‘ž3+2π‘ž2+1)(π‘žβˆ’1)8(π‘ž+1)4(π‘ž2+1)2(π‘ž2+π‘ž+1)2(π‘ž2βˆ’π‘ž+1)(π‘ž4+1)(π‘ž4+π‘ž3+π‘ž2+π‘ž+1)

Β·1

(π‘ž6+π‘ž5+π‘ž4+π‘ž3+π‘ž2+π‘ž+1)

60 CHAPTER 2. LINEAR DIOPHANTINE SYSTEMS

N,M,=, 𝐡

Name: Vector Partition Function

References: Section 4 in [15]

Description: Non-negative integer counts the natural solutions of

π‘₯1 + 2π‘₯2 + π‘₯3 = 𝑏1

π‘₯1 + π‘₯2 + π‘₯4 = 𝑏2

Matrix 𝐴 vector 𝑏 ParametersβŽ›βŽ1 2 1 0

1 1 0 1

⎞⎠ βŽ›βŽ 𝑏1

𝑏2

⎞⎠ 𝑏1, 𝑏2

Counting

⎧βŽͺβŽͺβŽͺ⎨βŽͺβŽͺβŽͺβŽ©π‘214 + 𝑏1 +

7+(βˆ’1)𝑏1

8 , 𝑏1 ≀ 𝑏2

𝑏1𝑏2 βˆ’π‘214 βˆ’

𝑏222 + 𝑏1+𝑏2

2 + 7+(βˆ’1)𝑏1

8 , 𝑏1 > 𝑏2 >𝑏1βˆ’32

𝑏222 βˆ’

3·𝑏22 + 1 , 𝑏2 ≀ 𝑏1βˆ’3

2

Z, 0,β‰₯, 𝐡

Name: Lecture Hall Partitions

References: [18]

Description: Partitions of 𝑛 where 2π‘Ž ≀ 𝑏, 3𝑏 ≀ 2𝑐 and 4𝑐 ≀ 3𝑑.

Matrix 𝐴 vector π‘βŽ›βŽœβŽœβŽœβŽ2 βˆ’1 0 0

0 3 βˆ’2 0

0 0 4 βˆ’3

βŽžβŽŸβŽŸβŽŸβŽ βŽ›βŽœβŽœβŽœβŽ

0

0

0

⎞⎟⎟⎟⎠Listing

βˆ’π‘§1𝑧32𝑧43𝑧

54π‘ž

13

(𝑧2𝑧3𝑧4π‘ž3βˆ’1)(𝑧1𝑧22𝑧23𝑧

24π‘ž

7βˆ’1)(𝑧1𝑧22𝑧33𝑧

34π‘ž

9βˆ’1)(𝑧1𝑧22𝑧33𝑧

44π‘ž

10βˆ’1)

Counting (π‘ž2βˆ’π‘ž+1)(π‘ž4+1)(π‘žβˆ’1)4(π‘ž2+π‘ž+1)(π‘ž4+π‘ž3+π‘ž2+π‘ž+1)

2.2. CLASSIFICATION 61

Z,M,β‰₯, 𝐡

Name: Vector Partition Function

References: Section 4 in [15]

Description: Non-negative integer solutions ofβˆ’π‘₯1 βˆ’ 2π‘₯2 β‰₯ 𝑏1

βˆ’π‘₯1 βˆ’ π‘₯2 β‰₯ 𝑏2

Matrix 𝐴 vector 𝑏 ParametersβŽ›βŽβˆ’1 βˆ’2

βˆ’1 βˆ’1

⎞⎠ βŽ›βŽ 𝑏1

𝑏2

⎞⎠ 𝑏1, 𝑏2

Counting

⎧βŽͺβŽͺβŽͺ⎨βŽͺβŽͺβŽͺβŽ©π‘214 + 𝑏1 +

7+(βˆ’1)𝑏1

8 , 𝑏1 ≀ 𝑏2

𝑏1𝑏2 βˆ’π‘214 βˆ’

𝑏222 + 𝑏1+𝑏2

2 + 7+(βˆ’1)𝑏1

8 , 𝑏1 > 𝑏2 >𝑏1βˆ’32

𝑏222 βˆ’

3·𝑏22 + 1 , 𝑏2 ≀ 𝑏1βˆ’3

2

Z,Z,β‰₯, π‘ˆ

Matrix 𝐴 vector π‘βŽ›βŽ1 βˆ’1

1 βˆ’2

⎞⎠ βŽ›βŽ 3

βˆ’2

⎞⎠

0 2 4 6 8 10

0

2

4

6

8

Listingβˆ’π‘§21

(𝑧1βˆ’1)(βˆ’π‘§21+π‘ž)(𝑧21𝑧2βˆ’1)

Counting 5π‘ž(2π‘ž+3)(π‘žβˆ’1)3

62 CHAPTER 2. LINEAR DIOPHANTINE SYSTEMS

N,M,β‰₯, π‘ˆ

Name: Vector Partition Function

Matrix 𝐴 vector π‘βŽ›βŽ1 3

2 1

⎞⎠ βŽ›βŽ 𝑏1

𝑏2

⎞⎠

0 2 4 6 8 10

0

2

4

6

8

0 2 4 6 8 10

0

2

4

6

8

Listing 𝑁(1βˆ’π‘§1)(1βˆ’π‘§2)(1βˆ’π‘ž1𝑧1)(1βˆ’π‘ž22𝑧1)(1βˆ’π‘ž1π‘ž22𝑧1)(1βˆ’π‘ž31𝑧2)(1βˆ’π‘ž2𝑧2)(1βˆ’π‘ž31π‘ž2𝑧2)where 𝑁 = π‘ž52𝑧

31𝑧

32π‘ž

71 + π‘ž42𝑧

31𝑧

32π‘ž

71 βˆ’ π‘ž42𝑧

31𝑧

22π‘ž

71 βˆ’ π‘ž32𝑧

21𝑧

22π‘ž

71 + π‘ž52𝑧

31𝑧

32π‘ž

61 + π‘ž42𝑧

31𝑧

32π‘ž

61 βˆ’

π‘ž52𝑧21𝑧

32π‘ž

61 βˆ’ π‘ž42𝑧

21𝑧

32π‘ž

61 βˆ’ π‘ž32𝑧

21𝑧

32π‘ž

61 βˆ’ π‘ž22𝑧

21𝑧

32π‘ž

61 βˆ’ π‘ž42𝑧

31𝑧

22π‘ž

61 + π‘ž42𝑧

21𝑧

22π‘ž

61 βˆ’ π‘ž32𝑧

21𝑧

22π‘ž

61 +

π‘ž22𝑧21𝑧

22π‘ž

61 + π‘ž32𝑧1𝑧

22π‘ž

61 + π‘ž2𝑧1𝑧

22π‘ž

61 + π‘ž52𝑧

31𝑧

32π‘ž

51 + π‘ž42𝑧

31𝑧

32π‘ž

51 βˆ’ π‘ž52𝑧

21𝑧

32π‘ž

51 βˆ’ π‘ž42𝑧

21𝑧

32π‘ž

51 βˆ’

π‘ž32𝑧21𝑧

32π‘ž

51 βˆ’ π‘ž22𝑧

21𝑧

32π‘ž

51 + π‘ž32𝑧1𝑧

32π‘ž

51 + π‘ž22𝑧1𝑧

32π‘ž

51 βˆ’ π‘ž42𝑧

31𝑧

22π‘ž

51 + π‘ž42𝑧

21𝑧

22π‘ž

51 βˆ’ π‘ž32𝑧

21𝑧

22π‘ž

51 +

π‘ž22𝑧21𝑧

22π‘ž

51 βˆ’π‘ž2𝑧

22π‘ž

51 +π‘ž32𝑧1𝑧

22π‘ž

51 βˆ’π‘ž22𝑧1𝑧

22π‘ž

51 +π‘ž2𝑧1𝑧

22π‘ž

51 βˆ’π‘ž42𝑧

31𝑧

22π‘ž

41 βˆ’π‘ž52𝑧

21𝑧

22π‘ž

41 βˆ’π‘ž42𝑧

21𝑧

22π‘ž

41 βˆ’

3π‘ž32𝑧21𝑧

22π‘ž

41 βˆ’ π‘ž22𝑧

21𝑧

22π‘ž

41 βˆ’ π‘ž2𝑧

21𝑧

22π‘ž

41 βˆ’ π‘ž2𝑧

22π‘ž

41 + 2π‘ž32𝑧1𝑧

22π‘ž

41 + π‘ž22𝑧1𝑧

22π‘ž

41 + 2π‘ž2𝑧1𝑧

22π‘ž

41 +

π‘ž42𝑧21𝑧2π‘ž

41 + 2π‘ž32𝑧

21𝑧2π‘ž

41 + 2π‘ž22𝑧

21𝑧2π‘ž

41 + π‘ž2𝑧

21𝑧2π‘ž

41 βˆ’ π‘ž22𝑧1𝑧2π‘ž

41 βˆ’ π‘ž2𝑧1𝑧2π‘ž

41 βˆ’ π‘ž42𝑧

31𝑧

22π‘ž

31 +

π‘ž42𝑧21𝑧

22π‘ž

31βˆ’π‘ž32𝑧

21𝑧

22π‘ž

31+π‘ž22𝑧

21𝑧

22π‘ž

31βˆ’π‘ž2𝑧

22π‘ž

31+2π‘ž32𝑧1𝑧

22π‘ž

31+π‘ž22𝑧1𝑧

22π‘ž

31+2π‘ž2𝑧1𝑧

22π‘ž

31+π‘ž32𝑧

21𝑧2π‘ž

31+

π‘ž22𝑧21𝑧2π‘ž

31βˆ’π‘ž32𝑧1𝑧2π‘ž

31βˆ’2π‘ž22𝑧1𝑧2π‘ž

31βˆ’2π‘ž2𝑧1𝑧2π‘ž

31βˆ’π‘§1𝑧2π‘ž

31βˆ’π‘ž42𝑧

31𝑧

22π‘ž

21+π‘ž42𝑧

21𝑧

22π‘ž

21βˆ’π‘ž32𝑧

21𝑧

22π‘ž

21+

π‘ž22𝑧21𝑧

22π‘ž

21 βˆ’ π‘ž2𝑧

22π‘ž

21 + π‘ž32𝑧1𝑧

22π‘ž

21 βˆ’ π‘ž22𝑧1𝑧

22π‘ž

21 + π‘ž2𝑧1𝑧

22π‘ž

21 + π‘ž32𝑧

21𝑧2π‘ž

21 + π‘ž22𝑧

21𝑧2π‘ž

21 + π‘ž2𝑧2π‘ž

21 βˆ’

π‘ž32𝑧1𝑧2π‘ž21 βˆ’ π‘ž22𝑧1𝑧2π‘ž

21 βˆ’ π‘ž2𝑧1𝑧2π‘ž

21 βˆ’π‘§1𝑧2π‘ž

21 +𝑧2π‘ž

21 βˆ’ π‘ž32𝑧

21π‘ž1 βˆ’ π‘ž22𝑧

21π‘ž1 βˆ’ π‘ž2𝑧

21π‘ž1 βˆ’ π‘ž32𝑧

21𝑧

22π‘ž1 βˆ’

π‘ž2𝑧22π‘ž1 + π‘ž32𝑧1𝑧

22π‘ž1 + π‘ž2𝑧1𝑧

22π‘ž1 + π‘ž2𝑧1π‘ž1 + π‘ž42𝑧

21𝑧2π‘ž1 +2π‘ž32𝑧

21𝑧2π‘ž1 +2π‘ž22𝑧

21𝑧2π‘ž1 + π‘ž2𝑧

21𝑧2π‘ž1 +

π‘ž2𝑧2π‘ž1 βˆ’ π‘ž32𝑧1𝑧2π‘ž1 βˆ’ 2π‘ž22𝑧1𝑧2π‘ž1 βˆ’ 2π‘ž2𝑧1𝑧2π‘ž1 βˆ’ 𝑧1𝑧2π‘ž1 + 𝑧2π‘ž1 + π‘ž2𝑧1 βˆ’ π‘ž22𝑧1𝑧2 βˆ’ π‘ž2𝑧1𝑧2 +1

Chapter 3

Partition Analysis

3.1 Partition Analysis Revisited

Partition analysis is a general methodology for the treatment of linear Diophantinesystems. The methodology is commonly attributed to MacMahon [31], since he wasthe first to apply it in a way similar to the one used today, that is, for the solution ofcombinatorial problems subject to linear Diophantine systems.

MacMahon’s motivation was the proof of his conjectures about plane partitions. Thiswas his declared goal in Combinatory Analysis. The fact that he failed to actually givean answer to the problem was like signing the death certificate of his own child. Incombination with other reasons, including the lack of interest for computational proce-dures in mathematics for most of the 20th century, MacMahon’s method did not becomemainstream among mathematicians.

Except for the theoretical side of the method, there is an algorithmic aspect. Thecomputational and algorithmic nature of the method was evident since the beginning.MacMahon employed an algorithm of Elliott in order to turn his method into an algo-rithm. In [24], Elliott introduced the basics of the methodology and used it to solvelinear homogeneous Diophantine equations. In particular, Elliott’s method is of inter-est because it is algorithmic (in the strict modern sense of the term). Elliott himself,although lacking modern terminology, is arguing on the termination of the procedure.Naturally, given the lack of computers at that time, MacMahon resorted in findingshortcuts (rules) for the most usual cases. This list of rules, included in CombinatoryAnalysis, he expanded as needed for the problem at hand.

It was Andrews who observed the computational potential of MacMahon’s partitionanalysis and waited for the right problem to apply it. In the late 1990’s, the seminal pa-per of Bousquet–Melou and Eriksson [18] on lecture-hall partitions appeared. Andrewssuggested to Paule to explore the capacity of partition analysis combined with sym-bolic computation. This collaboration gave a series of papers, among which [4] and [5]deal with implementations of two fully algorithmic versions of partition analysis, calledOmega, empowered by symbolic computation.

There are different algorithmic (and non-algorithmic) realizations of the general idea.

63

64 CHAPTER 3. PARTITION ANALYSIS

Their relation is illustrated in the following figure. In what follows we will see in chrono-logical order the milestones of partition analysis. Although the goal is to present thehistory, we will allow for a modern view. In particular, we will see some geometric andalgebraic aspects that help understanding partition analysis.

MacMahon

Xin

Ell Ell2

AndrewsPauleRiese

omega

omega2

Elliott

PolyhedralOmega

3.1.1 Elliott

One of the first references relevant to partition analysis is Elliott’s article β€œOn linearhomogeneous Diophantine equation” [24]. The work of Elliott is exciting, if not foranything else, because it addresses mathematicians that lived a century apart. It wasof interest to MacMahon, who based his method on Elliott’s decomposition, but also to21st century mathematicians for explicitly giving an important algorithm. Although, aswe shall see, the algorithm has very bad complexity, it can be considered as an earlyalgorithm for the enumeration of lattice points in cones (among other things).

The problem Elliott considers is to find all non-negative integer solutions to theequation

π‘šβˆ‘π‘–=1

π‘Žπ‘–π‘₯𝑖 βˆ’π‘š+π‘›βˆ‘

𝑖=π‘š+1

𝑏𝑖π‘₯𝑖 = 0 for π‘Žπ‘–, 𝑏𝑖 ∈ N. (3.1)

In other words, we consider one homogeneous linear Diophantine equation. It should benoted that Elliott himself (as well as subsequent authors) expressed the equation in theform Diophantus would prefer, without using negative coefficients.

The starting point for Elliott’s work is the fact that even if one computes the set ofβ€œsimple solutions”, i.e., solutions that are not combinations of others, there are syzygies

3.1. PARTITION ANALYSIS REVISITED 65

preventing us from writing down formulas giving each and every solution of the equationexactly once. He proceeds by explaining that his method computes a generating functionwhose terms are in one-to-one correspondence with the solutions of the equation. Elliottstates that this generating function is obtained β€œby a finite succession of simple stages”.This sentence exhibits an impressive insight on what an algorithm is, as well as Elliott’srealization that he has an algorithm at hand. We quote Elliott outlining his idea in [24]:

The principle is that in the infinite expansion which is the formal product ofthe infinite expansions1 + πœ‰1𝑒

π‘Ž1 + πœ‰21𝑒2π‘Ž1 + Β· Β· Β·

1 + πœ‰2π‘’π‘Ž2 + πœ‰22𝑒

2π‘Ž2 + Β· Β· Β·...1 + πœ‰π‘šπ‘’π‘Žπ‘š + πœ‰2π‘šπ‘’2π‘Žπ‘š + Β· Β· Β·1 + πœ‰π‘š+1𝑒

βˆ’π‘π‘š+1 + πœ‰2π‘š+1π‘’βˆ’2π‘π‘š+1 + Β· Β· Β·

1 + πœ‰π‘š+2π‘’βˆ’π‘π‘š+2 + πœ‰2π‘š+2𝑒

βˆ’2π‘π‘š+2 + Β· Β· Β·...1 + πœ‰π‘š+𝑛𝑒

βˆ’π‘π‘š+𝑛 + πœ‰2π‘š+π‘›π‘’βˆ’2π‘π‘š+𝑛 + Β· Β· Β·

the terms free from 𝑒 are of the form πœ‰π‘₯11 πœ‰π‘₯2

2 Β· Β· Β· πœ‰π‘₯π‘šπ‘š πœ‰

π‘₯π‘š+1

π‘š+1 πœ‰π‘₯π‘š+2

π‘š+2 Β· Β· Β· πœ‰π‘₯π‘š+π‘›π‘š+𝑛 with

1 for numerical coefficient, where π‘₯1, π‘₯2, . . . , π‘₯π‘š, π‘₯π‘š+1, . . . , π‘₯π‘š+𝑛 are a set ofpositive integers (zero included), which satisfy our Diophantine equation 3.1,and that there is just one such term for each set of solutions.

In other words, the generating function for determining the sets of solu-tions, each once, of 3.1, as sets of exponents of the πœ‰π‘–β€™s in its several terms,is the expression for the part which is free from 𝑒 of the expansion of

1

(1βˆ’ πœ‰1π‘’π‘Ž1) Β· Β· Β· (1βˆ’ πœ‰π‘šπ‘’π‘Žπ‘š)(1βˆ’ πœ‰π‘š+1π‘’βˆ’π‘π‘š+1) Β· Β· Β· (1βˆ’ πœ‰π‘š+π‘›π‘’βˆ’π‘π‘š+𝑛)(3.2)

in the positive powers of the πœ‰π‘–β€™s.The problem is, in any case, to extract from 3.2, and to examine, this

generating function. The extraction may be effected by a finite number ofeasy steps as follows.

The principle presented here by Elliott is the basis of partition analysis, i.e., intro-ducing an extra variable, denoted by 𝑒 in Elliott and by πœ† in modern partition analysis.We switch from πœ‰ and 𝑒 to 𝑧 and πœ† in order to conform with more modern notationalconventions. The method of Elliott computes a partial fraction decomposition of anexpression

π‘˜βˆπ‘–

1

1βˆ’π‘šπ‘–, (3.3)

where π‘šπ‘– ∈[𝑧1, 𝑧2, . . . , π‘§π‘˜, πœ†, πœ†

βˆ’1]and π‘˜ ∈ N, into a sum of the formβˆ‘ Β±1∏(1βˆ’ 𝑝𝑖)

+βˆ‘ Β±1∏

(1βˆ’ π‘žπ‘—)(3.4)

66 CHAPTER 3. PARTITION ANALYSIS

with 𝑝𝑖 ∈ [𝑧1, 𝑧2, . . . , π‘§π‘˜, πœ†] and π‘žπ‘— ∈ [𝑧1, 𝑧2, . . . , π‘§π‘˜, πœ†βˆ’1].

We note that some authors refer to rational functions of the form 3.3 as Elliott rationalfunctions. The algorithm is based on the fact

1

(1βˆ’ π‘₯πœ†π›Ό)(1βˆ’ π‘¦πœ†π›½ )

=1

1βˆ’ π‘₯π‘¦πœ†π›Όβˆ’π›½

(1

1βˆ’ π‘₯πœ†π›Ό+

1

1βˆ’ π‘¦πœ†π›½

βˆ’ 1

)(3.5)

=1

(1βˆ’ π‘₯π‘¦πœ†π›Όβˆ’π›½)(1βˆ’ π‘₯πœ†π›Ό)+

1

(1βˆ’ π‘₯π‘¦πœ†π›Όβˆ’π›½)(1βˆ’ π‘¦πœ†π›½ )βˆ’ 1

(1βˆ’ π‘₯π‘¦πœ†π›Όβˆ’π›½).

Observe that given 𝛼 and 𝛽 positive integers, after applying 3.5, we obtain a sum ofterms where in each of them either the number of factors containing πœ† reduced or theexponent of πœ† reduced (in absolute value) in one of the factors while it did not changein the other. This observation is the proof of termination Elliott gives for his algorithm.

Let’s see a very simple example, where by applying (3.5) once, we obtain the desiredpartial fraction decomposition.

Example 7.

1

(1βˆ’ π‘₯πœ†)(1βˆ’ π‘¦πœ†)

=1

(1βˆ’ π‘₯𝑦)(1βˆ’ π‘₯πœ†)+

1

(1βˆ’ π‘₯𝑦)(1βˆ’ π‘¦πœ†)βˆ’ 1

(1βˆ’ π‘₯𝑦)

=

(1

(1βˆ’ π‘₯𝑦)(1βˆ’ π‘₯πœ†)βˆ’ 1

(1βˆ’ π‘₯𝑦)

)+

1

(1βˆ’ π‘₯𝑦)(1βˆ’ π‘¦πœ†)

.

Notice that the terms in the parenthesis contain only non-negative πœ† exponents, whilethe last term contains only non-positive ones as requested by (3.4). οΏ½

Each of the summands inβˆ‘π‘–

Β±1βˆπ‘—(1βˆ’ 𝑝𝑖)

can be expanded using the geometric-series

expansion formula. It is easy to see that the summands contributing to the generatingfunction for the solution of Equation 3.1 are exactly the ones where in their expansion

πœ† does not appear. This happens only for the termsΒ±1∏

π‘˜(1βˆ’ π‘π‘˜)where all π‘π‘˜ are πœ†-free.

Summing up only these terms we get the desired generating function.In order to translate this rational function identity to an identity about cones we

first observe that1

(1βˆ’ π‘₯πœ†π›Ό)(1βˆ’ π‘¦πœ†π›½ )

is the generating function of the 2-dimensional cone 𝐢 = π’žR ((1, 0, 𝛼), (1, 0,βˆ’π›½)), sinceLemma 2 guarantees that the numerator in the rational generating function of 𝐢 isindeed 1.

Observe that the point (1, 1, π›Όβˆ’ 𝛽) is in the interior of the cone 𝐢. This means thatthe cones 𝐴 = π’žR ((1, 0, 𝛼), (1, 1, π›Όβˆ’ 𝛽)) and 𝐡 = π’žR ((1, 0,βˆ’π›½), (1, 1, π›Όβˆ’ 𝛽)) subdividethe cone 𝐢. Their intersection is exactly the ray starting from the origin and passing

3.1. PARTITION ANALYSIS REVISITED 67

through (1, 1, 𝛼 βˆ’ 𝛽). By a simple inclusion-exclusion argument we have the signeddecomposition 𝐢 = 𝐴+ 𝐡 βˆ’ (𝐴 ∩ 𝐡). This decomposition translated to the generatingfunction level is exactly the partial fraction decomposition employed by Elliott. In theexample shown below, after three applications of Elliott’s decomposition we obtain thedesired cone.

π‘₯ 𝑦

πœ†

π‘₯ 𝑦

πœ†

π‘₯ 𝑦

πœ†

π‘₯ 𝑦

πœ†

π‘₯ 𝑦

πœ†

π‘₯ 𝑦

πœ†

π‘₯ 𝑦

πœ†

π‘₯ 𝑦

πœ†

Elliott’s decomposition

The Algorithm

It is easy to see that, after a finite number of steps, we end up with a sum of cones ofthree types:

1. the generators contain only zero last coordinate (πœ†-coordinate);

2. the generators contain only non-negative (but not all zero) last coordinate;

3. the generators contain only non-positive (but not all zero) last coordinate.

Note that all the cones involved are unimodular.For equations we sum up the generating functions corresponding to cones of the 1st

type. For inequalities, we intersect each cone with the non-negative πœ† halfspace. Thismeans that we discard the cones of the 3rd type and sum up the generating functions ofthe rest of the cones. Then we (orthogonally) project with respect to the πœ†-coordinate.The sum of rational generating functions for the lattice points in each cone we obtainedis the partial fraction decomposition obtained by Elliott’s algorithm.

68 CHAPTER 3. PARTITION ANALYSIS

Elliott for Systems

It is important to note that Elliott’s method relies on the fact that the numerators inall the expressions involved are equal to 1. Of course after bringing all the terms thealgorithm returns over a common denominator, there is no guarantee that the numeratorwill be 1. But for each term returned the condition is preserved. Thus it is possible toiteratively apply the algorithm to eliminate πœ†β€™s in order to solve systems of equationsor inequalities. We note that Elliott proves that the numerators will always be Β±1. Norepetitions occur in the computed expression.

Example 8. The system of linear homogeneous inequalities {7π‘Ž βˆ’ 𝑏 β‰₯ 0, π‘Ž βˆ’ 3𝑏 β‰₯ 0}can be solved by Elliott, resulting in 1

(1βˆ’π‘₯)(1βˆ’π‘₯3𝑦), if the inequality π‘Ž βˆ’ 3𝑏 β‰₯ 0 is treated

first. If the order is reversed then the intermediate expression

βˆ’1βˆ’ π‘₯𝑦6

πœ†17 βˆ’ π‘₯𝑦5

πœ†14 βˆ’ π‘₯𝑦4

πœ†11 βˆ’ π‘₯𝑦3

πœ†8 βˆ’ π‘₯𝑦2

πœ†5 βˆ’ π‘₯π‘¦πœ†2

(1βˆ’ π‘₯πœ†)(1βˆ’ π‘₯𝑦7

πœ†20 )

is violating the condition that numerators are equal to 1.The first inequality of the system is redundant, i.e., if we ignore it the solution set does

not change. Thus, choosing the right order, the intermediate expression 1(1βˆ’π‘₯πœ†7)(1βˆ’π‘₯3π‘¦πœ†20)

behaves well. We could still apply Elliott’s method if we did not bring the intermediateexpression over a common denominator. οΏ½

3.1.2 MacMahon

MacMahon presented his investigations concerning integer partition theory in a series ofseven memoirs, published between 1895 and 1916. In the second memoir [30], MacMahonobserves that the theory of partitions of numbers develops in parallel to that of linearDiophantine equations and in his masterpiece β€œCombinatory Analysis” [31] he notes:

The most important part of the volume. Sections VIII et seq., arises frombasing the theory of partitions upon the theory of Diophantine inequalities.This method is more fundamental than that of Euler, and leads directly to ahigh degree of generalization of the theory of partitions, and to several inves-tigations which are grouped together under the title of β€œPartition Analysis”.

In order to attack the problem of solving linear Diophantine systems, MacMahon(like Elliott) introduced extra variables. Let 𝐴 ∈ Zπ‘šΓ—π‘‘ and b ∈ Zπ‘š. We want to findall x ∈ N𝑑 satisfying 𝐴x β‰₯ b. The generating function of the solution set is

Φ𝐴,𝑏(z) =βˆ‘π΄xβ‰₯b

zx.

Let’s introduce extra variables πœ†1, πœ†2, . . . , πœ†π‘š to encode the inequalities 𝐴x β‰₯ b, trans-forming the generating function to βˆ‘

x∈N𝑑,𝐴xβ‰₯b

πœ†π΄xzx

3.1. PARTITION ANALYSIS REVISITED 69

The πœ† variables are introduced to encode the inequalities, but the solutions we aresearching for live in dimension 𝑑. The πœ† dimensions are used to control that aftera certain decomposition we can filter out the solutions involving negative exponents.Following this principle, MacMahon introduced the concept of the crude generatingfunction. But before that, we need to see the Ξ©β‰₯ operator. MacMahon defined it inArticle 66 of [30]:

Suppose we have a function

𝐹 (π‘₯, π‘Ž) (3.6)

which can be expanded in ascending powers of π‘₯. Such expansion being eitherfinite or infinite, the coefficients of the various powers of π‘₯ are functions ofπ‘Ž which in general involve both positive and negative powers of π‘Ž. We mayreject all terms containing negative powers of π‘Ž and subsequently put π‘Ž equalto unity. We thus arrive at a function of π‘₯ only, which may be representedafter Cayley (modified by the association with the symbol β‰₯) by

Ξ©β‰₯ 𝐹 (π‘₯, π‘Ž) (3.7)

the symbol β‰₯ denoting that the terms retained are those in which the powerof π‘Ž is β‰₯ 0.

The notation Ξ©β‰₯ is now a standard and usually referred to as β€œMacMahon’s Omega”. Itis worth noting, at least in order to give credit where credit is due, as MacMahoon did,that the first use of this notation is by Cayley in [22]. MacMahon extends the notationto multivariate functions and defines the Ξ©= operator.

A more modern definition of the Ξ©β‰₯ operator is given in [4], by Andrews,Paule andRiese:

The Ξ©β‰₯ operator is defined on functions with absolutely convergent mul-tisum expansions

βˆžβˆ‘π‘ 1=βˆ’βˆž

βˆžβˆ‘π‘ 2=βˆ’βˆž

Β· Β· Β·βˆžβˆ‘

π‘ π‘Ÿ=βˆ’βˆžπ΄π‘ 1,𝑠2,...,π‘ π‘Ÿπœ†

𝑠11 πœ†π‘ 2

2 Β· Β· Β·πœ†π‘ π‘Ÿπ‘Ÿ

in an open neighborhood of the complex circles |πœ†π‘–| = 1. The action of Ξ©β‰₯is given by

Ξ©β‰₯

βˆžβˆ‘π‘ 1=βˆ’βˆž

βˆžβˆ‘π‘ 2=βˆ’βˆž

Β· Β· Β·βˆžβˆ‘

π‘ π‘Ÿ=βˆ’βˆžπ΄π‘ 1,𝑠2,...,π‘ π‘Ÿπœ†

𝑠11 πœ†π‘ 2

2 Β· Β· Β·πœ†π‘ π‘Ÿπ‘Ÿ :=

βˆžβˆ‘π‘ 1=0

βˆžβˆ‘π‘ 2=0

Β· Β· Β·βˆžβˆ‘

π‘ π‘Ÿ=0

𝐴𝑠1,𝑠2,...,π‘ π‘Ÿ .

70 CHAPTER 3. PARTITION ANALYSIS

This definition is concerned with convergence issues, while MacMahon considered Ξ©β‰₯acting on purely formal objects. In what follows we take the purely formal side (beingon safe ground due to geometry). But we also address the justified concerns aboutconvergence, relating them to the geometric issues.

In order to use the Ξ©β‰₯ operator for the solution of linear Diophantine systems,MacMahon resorts to the construction of a generating function he calls crude. This isin principal a multivariate version of Elliott’s construction.

Definition 3.1 (Crude Generating Function)Given 𝐴 ∈ Zπ‘šΓ—π‘‘ and b ∈ Zπ‘š we define the crude generating function as

ΦΩ𝐴,𝑏 (z;πœ†) := Ξ©β‰₯

βˆ‘x∈N𝑛

zxπ‘šβˆπ‘–=1

πœ†π΄π‘–xβˆ’π‘π‘–π‘– .

οΏ½

We stress the fact that the assignment is meant formally, since it is easy to see that

Ξ©β‰₯Ξ¦πœ†π΄,𝑏(𝑧;πœ†) = Φ𝐴,𝑏(z)

as well as

ΦΩ𝐴,𝑏(z;πœ†) =

βˆ‘x∈N𝑛,𝐴xβ‰₯𝑏

zx = Φ𝐴,𝑏(z).

This means that Ξ©β‰₯βˆ‘

x∈N𝑛 zxβˆπ‘š

𝑖=1 πœ†π΄π‘–xβˆ’π‘π‘–π‘– is the answer to the problem of solving a

linear Diophantine system. Thus, it is expected that the computation of the action ofthe Ξ©β‰₯ operator is not easy.

We define the πœ†-generating function as an intermediate step, both in order to increaseclarity in this section and because it is essential when discussing geometry later. Inprincipal, the πœ†-generating function is the crude generating function without prependingΞ©β‰₯. Given 𝐴 ∈ Zπ‘šΓ—π‘‘ and b ∈ Zπ‘š we define the πœ† generating function as

Ξ¦πœ†π΄,𝑏(z, πœ†) =

βˆ‘x∈N𝑑

zxπ‘šβˆπ‘–=1

πœ†π΄π‘–xβˆ’π‘π‘–π‘– .

Based on the geometric series expansion formula

(1βˆ’ 𝑧)βˆ’1 =βˆ‘π‘₯β‰₯0

𝑧π‘₯

we can transform the series into a rational function. The rational form of Ξ¦πœ†π΄,𝑏(z) is

denoted by πœŒπœ†π΄,𝑏(z) and it has the form

πœŒπœ†π΄,𝑏(z, πœ†) = πœ†βˆ’bπ‘šβˆπ‘–=1

1(1βˆ’ π‘§π‘–πœ†(𝐴𝑇 )𝑖

)

3.1. PARTITION ANALYSIS REVISITED 71

We present an example that we will also use for the geometric interpretation of Ξ©β‰₯,

Let 𝐴 = [ 2 3 ] and 𝑏 = 5.

Then

Ξ¦πœ†π΄,𝑏(𝑧1, 𝑧2, πœ†) =

βˆ‘π‘₯1,π‘₯2∈N

πœ†2π‘₯1+3π‘₯2βˆ’5𝑧π‘₯11 𝑧π‘₯2

2

and

πœŒπœ†π΄,𝑏(𝑧1, 𝑧2, πœ†) =πœ†βˆ’5

(1βˆ’ 𝑧1πœ†2)(1βˆ’ 𝑧2πœ†3)

These generating functions can be directly translated to cones by examining theirrational form and recalling the form for the generating function of lattice points in cones.

In the following figure, we see the geometric steps for creating the πœ†-cone (equivalentof the πœ†-generating function) and then applying the Ξ©β‰₯ operator.

At first we lift the standard generators of the positive quadrant of R𝑑 by appendingthe exponents of the πœ† variables (thus lifting the generators in R𝑑+π‘š). We translate thelifted cone by the exponent of πœ† in the numerator. Then we intersect with the positivequadrant of R𝑑+π‘š and project the intersection to R𝑑. The generating function of theobtained polyhedron is the result of the action of Ξ©β‰₯ on the πœ†-generating function.

π‘₯𝑦

πœ†

Consider the first quadrant and lift thestandard generators according to the

input.

π‘₯𝑦

πœ†

Shift according to the inhomogeneouspart in the negative πœ† direction the

cone generated by the lifted generators.Intersect with the π‘₯𝑦-plane.

72 CHAPTER 3. PARTITION ANALYSIS

π‘₯𝑦

πœ†

Take the part of the cone (apolyhedron) living above the π‘₯𝑦-plane

and project its lattice points.

π‘₯𝑦

πœ†

The projected polyhedron contains thesolutions to the inequality.

Given the geometric interpretation of the crude generating function, one could arguethat it is actually a refined one. Or if we consider the generating series as a cloth-hanging rope, then the crude generating function is a cloth-hanging grid allowing us toparametrize the hanging.

3.1.3 MacMahon’s Rules

Although the machinery of MacMahon was very powerful, it was not very practical.Lacking computing machines, he had to resort to lookup tables in order to solve problemshe was interested in. In his partition theory memoirs and in ”Combinatory Analysis”,he presents a set of rules. These are adhoc rules he was inventing when needed in orderto solve some combinatorial problem he was presenting.

Here we present nine of the rules MacMahon used for the evaluation of the Ξ©β‰₯operator, taken from [4]. Most of the proofs are easy, so we restrict to observationsusing geometric insight.

MacMahon Rules 1 & 2

The first two rules in MacMahon’s list are:For 𝑠 ∈ N* :

Ξ©β‰₯1

(1βˆ’ πœ†π‘₯)(1βˆ’ 𝑦

πœ†π‘ 

) =1

(1βˆ’ π‘₯) (1βˆ’ π‘₯𝑠𝑦)

and

Ξ©β‰₯1

(1βˆ’ πœ†π‘ π‘₯)(1βˆ’ 𝑦

πœ†

) =1 + π‘₯𝑦 1βˆ’π‘¦π‘ βˆ’1

1βˆ’π‘¦

(1βˆ’ π‘₯) (1βˆ’ π‘₯𝑦𝑠).

3.1. PARTITION ANALYSIS REVISITED 73

The rules are about evaluating Ξ©β‰₯1

(1βˆ’πœ†π‘₯)(1βˆ’ π‘¦πœ†π‘  )

and Ξ©β‰₯1

(1βˆ’πœ†π‘ π‘₯)(1βˆ’ π‘¦πœ†)

. There is an appar-

ent symmetry in the input, but elimination results in structurally different numerators,

i.e., 1 versus 1 + π‘₯𝑦 1βˆ’π‘¦π‘ βˆ’1

1βˆ’π‘¦ . This phenomenon is better understood if we look at thesaturated semigroup that is the solution set of each linear Diophantine system. Thesetwo cases correspond to the inequalities π‘₯ βˆ’ 𝑠𝑦 β‰₯ 0 and 𝑠π‘₯ βˆ’ 𝑦 β‰₯ 0 respectively. Thetwo cones generated by following the Cayley Lifting construction are

π‘₯𝑦

πœ†

π‘₯

𝑦

πœ†

π‘₯

𝑦

πœ†

π‘₯𝑦

πœ†

π‘₯𝑦

πœ†

π‘₯𝑦

πœ†

The geometry of the first two MacMahon rules.The numerator in the rational generating function expresses the lattice points in thefundamental parallelepiped. Since the first cone is unimodular, the numerator is 1. Forthe second cone, we observe that the fundamental parallelepiped, except for the origin,contains a vertical segment (truncated geometric series) at π‘₯ = 1. The length of thesegment is 𝑠 and since the fundamental parallelepiped is half-open, the lattice points ofthis segment are (1, π‘ž) for π‘ž = 1, 2, . . . , 𝑠. The rational function

π‘₯𝑦1βˆ’ π‘¦π‘ βˆ’1

1βˆ’ 𝑦=

π‘₯𝑦 βˆ’ π‘₯𝑦𝑠

1βˆ’ 𝑦

is exactly the generating function of that segment.

MacMahon Rule 4

Ξ©β‰₯1

(1βˆ’ πœ†π‘₯) (1βˆ’ πœ†π‘¦)(1βˆ’ 𝑧

πœ†

) =1βˆ’ π‘₯𝑦𝑧

(1βˆ’ π‘₯) (1βˆ’ 𝑦) (1βˆ’ π‘₯𝑧) (1βˆ’ 𝑦𝑧).

Although the rational function on which Ξ©β‰₯ acts has three factors in the denominator,the resulting rational generating function has four factors in the denominator. Moreover,we observe that the numerator has terms with both positive and negative signs. We willgive a geometric view on these observations. The πœ†-cone defined in the left hand sideof the MacMahon rule is π’žR ((1, 0, 0, 1), (0, 1, 0, 1), (0, 0,βˆ’1, 1)) . If we compute theintersection of this cone with the positive quadrant of R4, we obtain a cone generated by

74 CHAPTER 3. PARTITION ANALYSIS

(1, 0, 0, 1), (0, 1, 0, 1), (1, 0, 1, 0) and (0, 1, 1, 0). Let’s project this into R3 (by eliminatingthe last coordinate). We obtain a non-simplicial cone. We provide two decompositionsof the cone into simplicial cones. We used Normaliz [21] for the computations.

The first decomposition is by triangulation as shown here:

π‘₯𝑦

𝑧

π‘₯

𝑦

𝑧

π‘₯

𝑦

𝑧

π‘₯

𝑦

𝑧

π‘₯

𝑦

𝑧

The generating function of the green cone π’žR ((1, 0, 0), (0, 1, 0), (1, 0, 1)) is

1

(1βˆ’ π‘₯) (1βˆ’ 𝑦) (1βˆ’ π‘₯𝑧)

while that of the red cone π’žR ((0, 1, 0), (0, 1, 1), (1, 0, 1)) is

1

(1βˆ’ 𝑦) (1βˆ’ π‘₯𝑧) (1βˆ’ 𝑦𝑧).

If we perform inclusion-exclusion (subtracting the purple cone), we obtain:

1

(1βˆ’ π‘₯) (1βˆ’ 𝑦) (1βˆ’ π‘₯𝑧)+

1

(1βˆ’ 𝑦) (1βˆ’ π‘₯𝑧) (1βˆ’ 𝑦𝑧)βˆ’ 1

(1βˆ’ 𝑦) (1βˆ’ π‘₯𝑧)=

(1βˆ’ π‘₯𝑦) (1βˆ’ 𝑦)

(1βˆ’ π‘₯) (1βˆ’ 𝑦) (1βˆ’ π‘₯𝑧) (1βˆ’ 𝑦𝑧)βˆ’ 1

(1βˆ’ 𝑦) (1βˆ’ π‘₯𝑧)=

(1βˆ’ π‘₯𝑦) (1βˆ’ 𝑦)βˆ’ (1βˆ’ π‘₯𝑧)

(1βˆ’ 𝑦) (1βˆ’ 𝑦) (1βˆ’ π‘₯𝑧) (1βˆ’ 𝑦𝑧)=

1βˆ’ π‘₯𝑦𝑧

(1βˆ’ 𝑦) (1βˆ’ 𝑦) (1βˆ’ π‘₯𝑧) (1βˆ’ 𝑦𝑧)

The second decomposition is not a triangulation, but a signed cone decomposition (a laBarvinok).

π‘₯𝑦

𝑧

π‘₯

𝑦

𝑧

π‘₯

𝑦

𝑧

π‘₯

𝑦

𝑧

We first consider the whole positive quadrant and then subtract the half-open cone

π’ž(0,0,1)R ((1, 0, 1), (0, 1, 1), (0, 0, 1)) . Half-opening the cone is equivalent (as far as latticepoints are concerned) to shifting the cone by the generator (0, 0, 1). Thus we have atthe generating function level:

3.1. PARTITION ANALYSIS REVISITED 75

1

(1βˆ’ π‘₯) (1βˆ’ 𝑦) (1βˆ’ 𝑧)βˆ’ 𝑧

(1βˆ’ π‘₯𝑧) (1βˆ’ 𝑦𝑧) (1βˆ’ 𝑧)=

(1βˆ’ π‘₯𝑧) (1βˆ’ 𝑦𝑧)βˆ’ 𝑧 (1βˆ’ π‘₯) (1βˆ’ 𝑦)

(1βˆ’ π‘₯) (1βˆ’ 𝑦) (1βˆ’ 𝑧) (1βˆ’ π‘₯𝑧) (1βˆ’ 𝑦𝑧)=

(1βˆ’ 𝑧)βˆ’ π‘₯𝑦𝑧 (1βˆ’ 𝑧)

(1βˆ’ 𝑦) (1βˆ’ 𝑦) (1βˆ’ 𝑧) (1βˆ’ π‘₯𝑧) (1βˆ’ 𝑦𝑧)=

1βˆ’ π‘₯𝑦𝑧

(1βˆ’ 𝑦) (1βˆ’ 𝑦) (1βˆ’ π‘₯𝑧) (1βˆ’ 𝑦𝑧)

MacMahon Rule 6

Ξ©β‰₯1

(1βˆ’ πœ†2π‘₯)(1βˆ’ 𝑦

πœ†

) (1βˆ’ 𝑧

πœ†

) =1 + π‘₯𝑦 + π‘₯𝑧 + π‘₯𝑦𝑧

(1βˆ’ π‘₯) (1βˆ’ π‘₯𝑦2) (1βˆ’ π‘₯𝑧2).

In this rule we observe that we have a positive sum of four terms in the numerator.The Ξ©-polyhedron is a cone that is simplicial but not unimodular. Observe in the figurethe four points in the fundamental parallelepiped, corresponding to the four terms in

the sum.

π‘₯

𝑦

𝑧

π‘₯

𝑦

𝑧

Other MacMahon Rules

Although the list of rules is not comprehensive, in the sense that they cannot cover allcases needed to treat linear Diophantine systems, they can solve certain combinatorialproblems. For the rest of MacMahon’s rules similar geometric observations apply, butthe geometry becomes more complicated and the reasoning behind the numerators orthe denominators appearing is not as simple anymore. A list of other MacMahon rulesis given here:

MacMahon Rule 3

Ξ©β‰₯1

(1βˆ’ πœ†π‘₯)(1βˆ’ 𝑦

πœ†

) (1βˆ’ 𝑧

πœ†

) =1

(1βˆ’ π‘₯) (1βˆ’ π‘₯𝑦) (1βˆ’ π‘₯𝑧).

76 CHAPTER 3. PARTITION ANALYSIS

MacMahon Rule 5

Ξ©β‰₯1

(1βˆ’ πœ†π‘₯) (1βˆ’ πœ†π‘¦)(1βˆ’ 𝑧

πœ†2

) =1 + π‘₯𝑦𝑧 βˆ’ π‘₯2𝑦𝑧 βˆ’ π‘₯𝑦2𝑧

(1βˆ’ π‘₯) (1βˆ’ 𝑦) (1βˆ’ π‘₯2𝑧) (1βˆ’ 𝑦2𝑧).

MacMahon Rule 7

Ξ©β‰₯1

(1βˆ’ πœ†2π‘₯) (1βˆ’ πœ†π‘¦)(1βˆ’ 𝑧

πœ†

) =1 + π‘₯𝑧 βˆ’ π‘₯𝑦𝑧 βˆ’ π‘₯𝑦𝑧2

(1βˆ’ π‘₯) (1βˆ’ 𝑦) (1βˆ’ 𝑦𝑧) (1βˆ’ π‘₯𝑧2).

MacMahon Rule 8

1

(1βˆ’ πœ†π‘₯) (1βˆ’ πœ†π‘¦) (1βˆ’ πœ†π‘§)(1βˆ’ 𝑀

πœ†

) =

1βˆ’ π‘₯𝑦𝑀 βˆ’ π‘₯𝑧𝑀 βˆ’ 𝑦𝑧𝑀 + π‘₯𝑦𝑧𝑀 + π‘₯𝑦𝑧𝑀2

(1βˆ’ π‘₯) (1βˆ’ 𝑦) (1βˆ’ 𝑧) (1βˆ’ π‘₯𝑀) (1βˆ’ 𝑦𝑀) (1βˆ’ 𝑧𝑀).

MacMahon Rule 9

Ξ©β‰₯1

(1βˆ’ πœ†π‘₯) (1βˆ’ πœ†π‘¦)(1βˆ’ 𝑧

πœ†

) (1βˆ’ 𝑀

πœ†

) =

1βˆ’ π‘₯𝑦𝑧 βˆ’ π‘₯𝑦𝑀 βˆ’ π‘₯𝑦𝑧𝑀 + π‘₯𝑦2𝑧𝑀 + π‘₯2𝑦𝑧𝑀

(1βˆ’ π‘₯) (1βˆ’ 𝑦) (1βˆ’ π‘₯𝑧) (1βˆ’ π‘₯𝑀) (1βˆ’ 𝑦𝑧) (1βˆ’ 𝑦𝑀).

3.1.4 Andrews-Paule-Riese

In 1997, Bousquet–Melou and Eriksson presented a theorem on lecture-hall partitionsin [18]. This theorem gathered a lot of attention from the community (and it stilldoes, with many lecture-hall type theorems appearing still today). Andrews, who hadalready studied MacMahon’s method and was aware of its computational potential,figured that lecture-hall partitions offered the right problems to attack algorithmicallyvia partition analysis. At the same time he planned to spend a semester during hissabbatical at the Research Institute for Symbolic Computation (RISC) in Austria towork with Paule. It is only natural that the result was a fully algorithmic versionof MacMahon’s method powered by symbolic computation. This collaboration gavea series of 10 papers [4, 1, 10, 5, 6, 7, 3, 8, 9, 2]. Many interesting theorems anddifferent kinds of partitions are defined and explored in this series, but for us the twomost important references are [4] and [5], which contain the algorithmic improvementson partition analysis. Namely, in [4] the authors introduce Omega, a Mathematicapackage based on a fully algorithmic partition analysis version, while in [5] they presenta more advanced partial fraction decomposition (and the related Mathematica packageOmega2) solving some of the problems appearing in Omega. While presenting the twomethods, we will see some geometric aspects of theirs.

3.1. PARTITION ANALYSIS REVISITED 77

Omega

The main tool in Omega is the Fundamental Recurrence for the Ξ©β‰₯ operator, given byLemma 6. Following MacMahon, or Elliott for that matter, iterative application of thisrecurrence is enough for computing the action of Ξ©β‰₯.

Lemma 6 (Fundamental Recurrence, Theorem 2.1 in [4]). For π‘š,𝑛 ∈ N* and π‘Ž ∈ Z:

Ξ©β‰₯πœ†π‘Ž

(1βˆ’ π‘₯1πœ†) Β· Β· Β· (1βˆ’ π‘₯π‘›πœ†)(1βˆ’ 𝑦1πœ† ) Β· Β· Β· (1βˆ’ π‘¦π‘š

πœ† )=

𝑃𝑛,π‘š,π‘Ž(π‘₯1, π‘₯2, . . . , π‘₯𝑛; 𝑦1, 𝑦2, . . . , π‘¦π‘š)βˆπ‘›π‘–=1(1βˆ’ π‘₯𝑖)

βˆπ‘›π‘–=1

βˆπ‘šπ‘—=1(1βˆ’ π‘₯𝑖𝑦𝑗)

where for 𝑛 > 1

𝑃𝑛,π‘š,π‘Ž(π‘₯1, . . . , π‘₯𝑛; 𝑦1, . . . , π‘¦π‘š) =

1

π‘₯𝑛 βˆ’ π‘₯π‘›βˆ’1

βŽ›βŽπ‘₯𝑛(1βˆ’ π‘₯π‘›βˆ’1)

π‘šβˆπ‘—=1

(1βˆ’ π‘₯π‘›βˆ’1𝑦𝑗)π‘ƒπ‘›βˆ’1,π‘š,π‘Ž(π‘₯1, . . . , π‘₯π‘›βˆ’2, π‘₯𝑛; 𝑦1, . . . , π‘¦π‘š)

βˆ’π‘₯π‘›βˆ’1(1βˆ’ π‘₯𝑛)π‘šβˆπ‘—=1

(1βˆ’ π‘₯𝑛𝑦𝑗)π‘ƒπ‘›βˆ’1,π‘š,π‘Ž(π‘₯1, . . . , π‘₯π‘›βˆ’2, π‘₯π‘›βˆ’1; 𝑦1, . . . , π‘¦π‘š)

⎞⎠and for 𝑛 = 1

𝑃1,π‘š,π‘Ž(π‘₯1; 𝑦1, . . . , π‘¦π‘š) =

⎧βŽͺ⎨βŽͺ⎩π‘₯βˆ’π‘Ž1 if π‘Ž ≀ 0

π‘₯βˆ’π‘Ž1 +

π‘šβˆπ‘—=1

(1βˆ’ π‘₯1𝑦𝑗)π‘Žβˆ‘

𝑗=0

β„Žπ‘—(𝑦1, . . . , π‘¦π‘š)(1βˆ’ π‘₯π‘—βˆ’π‘Ž1 ) if π‘Ž > 0

οΏ½

The recurrence looks intimidating, but bear in mind that it is supposed to be a computa-tional tool used in combination with symbolic computation. It is this power that earlierauthors did not have. Even the ones with extreme computational (by hand) abilities,like MacMahon, had to resort to lookup tables and sets of rules for the more usual cases.

The base cases for the recurrence are when either all the terms have positive πœ†-exponents or all the terms have negative-πœ† exponents. For the two base cases we recall thedefinition of complete homogeneous symmetric polynomials and some related notation.

Definition 3.2 (Complete Homogeneous Symmetric Polynomials, see [5])We define β„Žπ‘–(𝑧1, 𝑧2, . . . , 𝑧𝑛) through the generating function

βˆžβˆ‘π‘–=0

β„Žπ‘–(𝑧1, 𝑧2, . . . , 𝑧𝑛)𝑑𝑖 =

1

(1βˆ’ 𝑧1𝑑)(1βˆ’ 𝑧2𝑑) Β· Β· Β· (1βˆ’ 𝑧𝑛𝑑).

What is needed for the base cases of the fundamental recurrence, is the partial sum ofthis generating function (series). The following definition is useful to set notation.

78 CHAPTER 3. PARTITION ANALYSIS

For π‘Ž ∈ Z, let

π»π‘Ž(𝑧1, 𝑧2, . . . , 𝑧𝑛) =

{βˆ‘π‘Žπ‘–=0 β„Žπ‘–(𝑧1, 𝑧2, . . . , 𝑧𝑛) if π‘Ž β‰₯ 0

0 if π‘Ž < 0.

οΏ½

Now, returning to [4], we have the two base cases:

Lemma 7 (Lemma 2.1 in [4]). For any integer π‘Ž,

Ξ©β‰₯πœ†π›Ό

(1βˆ’ π‘₯1πœ†)(1βˆ’ π‘₯2πœ†) . . . (1βˆ’ π‘₯π‘›πœ†)= Ξ©β‰₯

βˆžβˆ‘π‘—=0

β„Žπ‘—(π‘₯1, π‘₯2, . . . , π‘₯𝑛)πœ†π‘Ž+𝑗

= 1(1βˆ’π‘₯1)(1βˆ’π‘₯2)...(1βˆ’π‘₯𝑛)

βˆ’π»βˆ’π‘Žβˆ’1(π‘₯1, π‘₯2, . . . , π‘₯𝑛).οΏ½

Lemma 8 (Lemma 2.2 in [4]). For any integer π‘Ž,

Ξ©β‰₯πœ†π›Ό

(1βˆ’ 𝑦1πœ† )(1βˆ’ 𝑦2

πœ† ) . . . (1βˆ’ π‘¦π‘šπœ† )

= Ξ©β‰₯

βˆžβˆ‘π‘—=0

β„Žπ‘—(𝑦1, 𝑦2, . . . , π‘¦π‘š)πœ†π‘Žβˆ’π‘—

= π»π‘Ž(π‘₯1, π‘₯2, . . . , π‘₯𝑛). οΏ½

The fundamental recurrence in Lemma 6 assumes that the exponents of πœ† in thedenominator are Β±1. This is not a strong assumption, as noted in [4], since we canalways employ the following decomposition.

(1βˆ’ π‘₯πœ†π‘Ÿ) =

π‘Ÿβˆ’1βˆπ‘—=0

(1βˆ’ πœŒπ‘—π‘₯1π‘Ÿπœ†)

(1βˆ’ 𝑦

πœ†π‘ ) =

π‘ βˆ’1βˆπ‘—=0

(1βˆ’ πœŽπ‘—π‘¦1𝑠

πœ†)

where 𝜌 = 𝑒2πœ‹π‘–π‘Ÿ and 𝜎 = 𝑒

2πœ‹π‘–π‘  . The obvious drawback of this approach is that we introduce

complex coefficients instead of just Β±1, which were the only possible coefficients beforethe decomposition. This motivates the desire for a better recurrence.

Omega2

In [5] the authors introduce an improved partial fraction decomposition method, givenby the recurrence of Theorem 3.1.

Theorem 3.1 (Generalized Partial Fraction Decomposition, see [5])Let 𝛼 β‰₯ 𝛽 β‰₯ 1, gcd(𝛼, 𝛽) = 1 and let rmd(π‘Ž, 𝑏) denote the division remainder of π‘Ž by 𝑏.Then

1

(1βˆ’ 𝑧1𝑧𝛼3 )(1βˆ’ 𝑧2𝑧𝛽3 )

=1

(𝑧𝛼2 βˆ’ 𝑧𝛽1 )

(𝑃 (𝑧3)

(1βˆ’ 𝑧1𝑧𝛼3 )+

οΏ½οΏ½(𝑧3)

(1βˆ’ 𝑧2𝑧𝛽3 )

)(3.8)

3.1. PARTITION ANALYSIS REVISITED 79

where

𝑃 (𝑧3) :=π›Όβˆ’1βˆ‘π‘–=0

��𝑖𝑧𝑖3 for π‘Žπ‘– =

βŽ§βŽ¨βŽ©βˆ’π‘§π›½1 𝑧𝑖𝛽

2 if 𝛽|𝑖 or 𝑖 = 0,

βˆ’π‘§rmd((π›Όβˆ’1 mod 𝛽)𝑖,𝛽)1 𝑧

rmd((π›½βˆ’1 mod 𝛼)𝑖,𝛼)2 otherwise,

while

οΏ½οΏ½(𝑧3) :=

π›½βˆ’1βˆ‘π‘–=0

��𝑖𝑧𝑖3 for ��𝑖 =

{𝑧𝛼2 if 𝑖 = 0,

𝑧rmd((π›Όβˆ’1 mod 𝛽)𝑖,𝛽)1 𝑧

rmd((π›½βˆ’1 mod 𝛼)𝑖,𝛼)2 otherwise.

οΏ½

Moreover, two new base cases are introduced. As before, we define some notation forhomogeneous polynomials.

Definition 3.3 (Oblique Complete Homogeneous Polynomials, see [5])For 𝜁1, 𝜁2, . . . , πœπ‘› ∈ N*, we define β„Žπ‘–(𝑧1, 𝑧2, . . . , 𝑧𝑛; 𝜁1, 𝜁2, . . . , πœπ‘›) through the generatingfunction

βˆžβˆ‘π‘–=0

β„Žπ‘–(𝑧1, 𝑧2, . . . , 𝑧𝑛; 𝜁1, 𝜁2, . . . , πœπ‘›)𝑑𝑖 =

1

(1βˆ’ 𝑧1π‘‘πœ1)(1βˆ’ 𝑧2π‘‘πœ2) Β· Β· Β· (1βˆ’ π‘§π‘›π‘‘πœπ‘›).

οΏ½

The related partial sums are defined for π‘Ž ∈ Z, as

π»π‘Ž(𝑧1, 𝑧2, . . . , 𝑧𝑛; 𝜁1, 𝜁2, . . . , πœπ‘›) =

{βˆ‘π‘Žπ‘–=0 β„Žπ‘–(𝑧1, 𝑧2, . . . , 𝑧𝑛; 𝜁1, 𝜁2, . . . , πœπ‘›) if π‘Ž β‰₯ 0

0 if π‘Ž < 0.

Lemma 9 (Case π‘š = 0, Section 2 in [5]). For any integer π‘Ž,

Ξ©β‰₯πœ†π‘Ž

(1βˆ’ π‘₯1πœ†π‘—1)(1βˆ’ π‘₯2πœ†π‘—2) . . . (1βˆ’ π‘₯π‘›πœ†π‘—π‘›)= Ξ©β‰₯

βˆžβˆ‘π‘—=0

β„Žπ‘—(π‘₯1, π‘₯2, . . . , π‘₯𝑛; 𝑗1, 𝑗2, . . . , 𝑗𝑛)πœ†π‘Ž+𝑗

=1

(1βˆ’ π‘₯1)(1βˆ’ π‘₯2) . . . (1βˆ’ π‘₯𝑛)

βˆ’π»βˆ’π‘Žβˆ’1(π‘₯1, π‘₯2, . . . , π‘₯𝑛; 𝑗1, 𝑗2, . . . , 𝑗𝑛).

οΏ½

Lemma 10 (Case 𝑛 = 0, Section 2 in [5]). For any integer π‘Ž,

Ξ©β‰₯πœ†π‘Ž

(1βˆ’ 𝑦1πœ†π‘—1

)(1βˆ’ 𝑦2πœ†π‘—2

) . . . (1βˆ’ π‘¦π‘šπœ†π‘—π‘š )

= Ξ©β‰₯

βˆžβˆ‘π‘—=0

β„Žπ‘—(π‘₯1, π‘₯2, . . . , π‘₯𝑛; 𝑗1, 𝑗2, . . . , 𝑗𝑛)πœ†π‘Žβˆ’π‘—

= π»π‘Ž(π‘₯1, π‘₯2, . . . , π‘₯𝑛; 𝑗1, 𝑗2, . . . , 𝑗𝑛).

οΏ½

80 CHAPTER 3. PARTITION ANALYSIS

Lemma 11 (Case π‘š = 1, Section 2 in [5]). For any integer π‘Ž < 𝑗,

Ξ©β‰₯πœ†π‘Ž

(1βˆ’ π‘₯1πœ†π‘—1) . . . (1βˆ’ π‘₯π‘›πœ†π‘—π‘›)(1βˆ’ π‘¦πœ†βˆ’π‘˜)=

1

(1βˆ’ π‘₯1)(1βˆ’ π‘₯2) . . . (1βˆ’ π‘₯𝑛)(1βˆ’ 𝑦)

βˆ’βˆ‘π‘˜βˆ’1

𝜏1,𝜏2,...,πœπ‘›=0

∏π‘₯πœπ‘–π‘– 𝑦

βŒŠβˆ‘π‘—π‘–πœπ‘–+π‘Ž

π‘˜

βŒ‹+1

(1βˆ’ π‘₯π‘˜1𝑦𝑗1) . . . (1βˆ’ π‘₯π‘˜π‘›π‘¦

𝑗𝑛)(1βˆ’ 𝑦).

οΏ½

Lemma 12 (Case 𝑛 = 1, Section 2 in [5]). For any integer π‘Ž > βˆ’π‘˜,

Ξ©β‰₯πœ†π‘Ž

(1βˆ’ π‘₯πœ†π‘—)(1βˆ’ 𝑦1πœ†βˆ’π‘˜1) . . . (1βˆ’ π‘¦π‘šπœ†βˆ’π‘˜π‘š)=

βˆ‘π‘—βˆ’1𝜏1,𝜏2,...,πœπ‘›=0

βˆπ‘¦πœπ‘–π‘– π‘₯

βŒˆβˆ‘π‘˜π‘–πœπ‘–βˆ’π‘Ž

𝑗

βŒ‰(1βˆ’ π‘₯)(1βˆ’ π‘₯π‘˜1𝑦𝑗1) . . . (1βˆ’ π‘₯π‘˜π‘šπ‘¦π‘—π‘š)

.

οΏ½

Omega2 was used to obtain results in a series of papers by Andrews-Paule andtheir coauthors, dealing with various problems from partition theory. For the project ingeneral see http://www.risc.jku.at/research/combinat/software/Omega/.

Now we proceed with the geometric interpretation of the Generalized Partial FractionDecomposition. We first rewrite (3.8) by pulling out βˆ’π‘§π›½1 from the denominator of

1

(𝑧𝛼2 βˆ’π‘§π›½1 ),i.e.,

1

(1βˆ’ 𝑧1𝑧𝛼3 )(1βˆ’ 𝑧2𝑧𝛽3 )

=βˆ’π‘§βˆ’π›½

1 𝑃 (𝑧3)

(1βˆ’ π‘§βˆ’π›½1 𝑧𝛼2 )(1βˆ’ 𝑧1𝑧𝛼3 )

βˆ’ π‘§βˆ’π›½1 οΏ½οΏ½(𝑧3)

(1βˆ’ π‘§βˆ’π›½1 𝑧𝛼2 )(1βˆ’ 𝑧2𝑧

𝛽3 )

, (3.9)

and define 𝑃𝛼,𝛽 and 𝑄𝛼,𝛽 to be

βˆ™ 𝑃𝛼,𝛽 := βˆ’π‘§βˆ’π›½1 𝑃 (𝑧3) =

βˆ‘π›Όβˆ’1𝑖=0 π‘Žπ‘–π‘§

𝑖3

βˆ™ 𝑄𝛼,𝛽 := π‘§βˆ’π›½1 οΏ½οΏ½(𝑧3) =

βˆ‘π›½βˆ’1𝑖=0 𝑏𝑖𝑧

𝑖3

where

βˆ™ π‘Žπ‘– =

βŽ§βŽ¨βŽ©π‘§π‘–π›½

2 if 𝛽|𝑖 or 𝑖 = 0,

𝑧rmd((π›Όβˆ’1 mod 𝛽)𝑖,𝛽)βˆ’π›½1 𝑧

rmd((π›½βˆ’1 mod 𝛼)𝑖,𝛼)2 otherwise,

βˆ™ 𝑏𝑖 =

{π‘§βˆ’π›½1 𝑧𝛼2 if 𝑖 = 0,

𝑧rmd((π›Όβˆ’1 mod 𝛽)𝑖,𝛽)βˆ’π›½1 𝑧

rmd((π›½βˆ’1 mod 𝛼)𝑖,𝛼)2 otherwise.

The following theorem provides the basis for the geometric interpretation of theGeneralized Partial Fraction Decomposition.

3.1. PARTITION ANALYSIS REVISITED 81

Theorem 3.2 (Polyhedral geometry interpretation of Omega2)Application of the generalized partial fraction decomposition

1

(1βˆ’ 𝑧1𝑧𝛼3 )(1βˆ’ 𝑧2𝑧𝛽3 )

=𝑃𝛼,𝛽

(1βˆ’ π‘§βˆ’π›½1 𝑧𝛼2 )(1βˆ’ 𝑧1𝑧𝛼3 )

βˆ’π‘„π›Ό,𝛽

(1βˆ’ π‘§βˆ’π›½1 𝑧𝛼2 )(1βˆ’ 𝑧2𝑧

𝛽3 )

(3.10)

on 𝜌𝐢(z) induces a signed cone decomposition 1 of the cone 𝐢 = π’žR ((1, 0, 𝛼), (0, 1, 𝛽)).οΏ½

Proof Strategy:

βˆ™ Determine the structure of the fundamental parallelepiped of the cones 𝐴 =π’žR ((βˆ’π›½, 𝛼, 0), (1, 0, 𝛼)) and 𝐡 = π’žR ((βˆ’π›½, 𝛼, 0), (0, 1, 𝛽)).

βˆ™ Prove that 𝑃𝛼,𝛽 and 𝑄𝛼,𝛽 are the generating functions of these fundamental par-allelepipeds.

For the detailed proof of Theorem 3.2 see Appendix A. Here we provide the pic-ture of the decomposition for the cone 𝐢 = π’žR ((1, 0, 3), (0, 1, 5)), into the cones 𝐴 =

π’žR ((βˆ’5, 3, 0), (1, 0, 3)) and 𝐡 = π’ž0,1R ((βˆ’5, 3, 0), (0, 1, 5)).

π‘₯

𝑦

𝑧(1, 0, 3)

(0, 1, 5) π‘₯

𝑦

𝑧

(βˆ’5, 3, 0)

(1, 0, 3)(0, 1, 5)

1A decomposition into a sum where the summands may have positive or negative sign.

82 CHAPTER 3. PARTITION ANALYSIS

π‘₯

𝑦

𝑧(1, 0, 3)

(βˆ’5, 3, 0)

(0, 1, 5)π‘₯

𝑦

𝑧(1, 0, 3)

(βˆ’5, 3, 0)

(0, 1, 5)

The statement (from the proof in Appendix A)

𝜌Π(𝐡) = 𝑄𝛼,𝛽 + 1βˆ’ π‘§βˆ’π›½1 𝑧𝛼2

means that𝑄𝛼,𝛽

(1βˆ’π‘§βˆ’π›½1 𝑧𝛼2 )(1βˆ’π‘§2𝑧

𝛽3 )

is the generating function of the half-open cone 𝐡 that is

open on the ray generated by (βˆ’π›½, 𝛼, 0).One can see the full signed decomposition on the generating-function level as follows:

𝜌𝐢 = 𝜌𝐴 βˆ’ 𝜌𝐡 + πœŒπ’žR((0,1,𝛽)).

According to the previous analysis 𝜌𝐴 =𝑃𝛼,𝛽

(1βˆ’π‘§βˆ’π›½1 𝑧𝛼2 )(1βˆ’π‘§1𝑧𝛼3 )

.

Since πœŒπ’žR((0,1,𝛽))= 1

(1βˆ’π‘§2𝑧𝛽3 )

we have

βˆ’πœŒπ΅ + πœŒπ’žR((0,1,𝛽))= βˆ’

𝑄𝛼,𝛽 + 1βˆ’ π‘§βˆ’π›½1 𝑧𝛼2

(1βˆ’ π‘§βˆ’π›½1 𝑧𝛼2 )(1βˆ’ 𝑧2𝑧

𝛽3 )

+1(

1βˆ’ 𝑧2𝑧𝛽3

)= βˆ’

𝑄𝛼,𝛽

(1βˆ’ π‘§βˆ’π›½1 𝑧𝛼2 )(1βˆ’ 𝑧2𝑧

𝛽3 )

which means

1

(1βˆ’ 𝑧1𝑧𝛼3 )(1βˆ’ 𝑧2𝑧𝛽3 )

=𝑃𝛼,𝛽

(1βˆ’ π‘§βˆ’π›½1 𝑧𝛼2 )(1βˆ’ 𝑧1𝑧𝛼3 )

βˆ’π‘„π›Ό,𝛽

(1βˆ’ π‘§βˆ’π›½1 𝑧𝛼2 )(1βˆ’ 𝑧2𝑧

𝛽3 )

.

In other words, 𝑄𝛼,𝛽 encodes the inclusion-exclusion step in the decomposition.

3.2. ALGEBRAIC PARTITION ANALYSIS 83

3.2 Algebraic Partition Analysis

Having reviewed the history of partition analysis both from the perspective of the originalauthors and from a more geometric perspective, we give now an algebraic presentationthe Ξ©β‰₯ operator .

In particular, we will use graded vector spaces and rings in order to compute thegenerating functions of the solutions of a linear Diophantine system.

3.2.1 Graded Rings

Let 𝑅 = K [𝑧1, 𝑧2, . . . , 𝑧𝑑] be the ring of polynomials in 𝑑 variables 𝑧1, 𝑧2, . . . , 𝑧𝑑. In whatfollows we will grade this ring in a way that is useful for solving linear Diophantinesystems. Let us first define a graded vector space, as we will look at the polynomial ringas a vector space over the coefficient field.

Definition 3.4 (Graded vector space)Let K be a field and 𝑉 a vector space of K. If there exists a direct sum decomposition

𝑉 =β¨π‘–βˆˆπΌ

𝑉𝑖

of 𝑉 into linear subspaces 𝑉𝑖 for some index set 𝐼, then we say that 𝑉 is 𝐼-gradedand the 𝑉𝑖’s are called homogeneous components, while the elements of π‘‰π‘˜ are calledhomogeneous elements of degree π‘˜. οΏ½

The most usual grading of the polynomial ring K [𝑧1, 𝑧2, . . . , 𝑧𝑑] is the one inducedby the usual polynomial degree. The homogeneous component π‘‰π‘˜ is the linear span ofall monomials of degree π‘˜, i.e., the set of all homogeneous polynomials of degree π‘˜ andthe polynomial 0.

A notion that connects graded algebraic structures with generating functions is thatof the Hilbert-Poincare series. Given a graded vector space 𝑉 =

β¨π‘–βˆˆπΌ 𝑉𝑖 for some

(appropriate) index set 𝐼, then the Hilbert-Poincare series of 𝑉 over K is the formalpowerseries

ℋ𝒫 (𝑉 ) =βˆ‘π‘–βˆˆπΌ

dimK (𝑉𝑖) 𝑑𝑖.

Note that:

βˆ™ The most usual definition of Hilbert-Poincare series in the literature, restricts theindex set 𝐼 to be N and all linear subspaces 𝑉𝑖 to be finite-dimensional.

βˆ™ If the index set 𝐼 is not a subset of Nπ‘˜ for some π‘˜, but all elements of 𝐼 are boundedfrom below, then the Hilbert-Poincare series is a formal Laurent series. If the indexset contains elements that are not bounded from below, then the Hilbert-Poincareseries is not defined.

βˆ™ According to the definition of a graded vector space, it is possible that not all 𝑉𝑖

are finite-dimensional. In that case the Hilbert-Poincare series is not defined.

84 CHAPTER 3. PARTITION ANALYSIS

The algebraic approach to partition analysis has its roots in the very early work andmotivation of Cayley, MacMahon and Elliott. Their motivation to deal with the problemstem from invariant theory, which was very fashionable these days. We will present herea setup of algebraic structures and associated series, mostly Hilbert series, which allowsto view partition analysis algebraically. In the definition of graded vector spaces, andas is customary in literature, we first defined the homogeneous components and thenassign to the elements of each component the corresponding degree. For our purposesthough, it is more natural to follow the reverse path. We will first define a degree onthe elements of the polynomial ring and then construct the homogeneous components asthe linear span of all elements of the same degree. In particular, we want to constructa grading of K [𝑧1, 𝑧2, . . . , 𝑧𝑑] starting from a matrix 𝐴 in Zπ‘šΓ—π‘‘. We assume that 𝐴 isfull-rank.

Let π‘“π‘Žπ‘– be the linear functionals defined by the rows of 𝐴 for 𝑖 ∈ [π‘š]. We define thefunction 𝐹 : N𝑑 ↦→ Zπ‘š by

𝐹 (𝑣) = (π‘“π‘Ž1(𝑣), π‘“π‘Ž2(𝑣), . . . , π‘“π‘Žπ‘š(𝑣)) for 𝑣 ∈ N𝑑.

Since we want to use this function to grade the polynomial ring, it is necessary totranslate from vectors to monomials and back. Given a set of formal variables 𝑍 ={𝑧1, 𝑧2, . . . , 𝑧𝑑}, we define the term monoid T to be the subset of K [𝑧1, 𝑧2, . . . , 𝑧𝑑] con-sisting of powerproducts, i.e., {π‘§π‘Ž11 π‘§π‘Ž22 Β· Β· Β· 𝑧

π‘Žπ‘‘π‘‘ |π‘Žπ‘– ∈ N} and we set 1 = 𝑧0. This is a

multiplicative monoid with the standard monomial multiplication. We define πœ‘ as

πœ‘ :N𝑑 β†’ T𝑣 ↦→ 𝑧𝑣

establishing the monoid isomorphism N𝑑 ≃ T. Now, we can define a degree in T via 𝐹 .

N𝑑

T Zπ‘š

≃ 𝐹

deg

In words, let deg : Tβ†’ Zπ‘š be defined as deg(𝑧𝑣) = 𝐹(πœ‘βˆ’1(𝑧𝑣)

).

Define 𝑉𝑖 for 𝑖 ∈ Zπ‘š to be the linear span over K of all elements in T with degree 𝑖, i.e.,

𝑉𝑖 =

{π‘›βˆ‘

π‘˜=0

π‘π‘˜π‘‘π‘˜

𝑛 ∈ N, π‘π‘˜ ∈ K, π‘‘π‘˜ ∈ T with deg π‘‘π‘˜ = 𝑖

}for 𝑖 ∈ Zπ‘š

= βŸ¨π‘‘ ∈ T : deg(𝑑) = π‘–βŸ©K, for 𝑖 ∈ Zπ‘š

and βŸ¨βˆ…βŸ©K = {0}. Then we have that

β„› = βŠ•π‘–βˆˆZπ‘šπ‘‰π‘–.

This means that the collection of 𝑉𝑖’s defines a grading on K [𝑧1, 𝑧2, . . . , 𝑧𝑑], which nowcan be seen as a graded vector space. Let us see an example of such a grading.

3.2. ALGEBRAIC PARTITION ANALYSIS 85

Example 9 (Total degree or β„“1-grading). The degree function is given by 𝐹 (𝑠) = |𝑠|1,i.e., the matrix 𝐴 is the unit matrix of rank 𝑑. This is the usual total degree for polyno-mials in 𝑑 variables. In the figure we see the grading for 𝑑 = 2.

10

9

8

7

6

0 1 2 3 4 5

𝑉𝑖 is the vector space of homogeneous polynomials of degree 𝑖.

οΏ½

Example 10. Let the degree map be defined by 𝐹 (𝑠) = 𝑠. The grading this map inducesis called trivial because each K-vector space π‘‰π‘Ž is generated by π‘§π‘Ž alone.

οΏ½

We note that some (or all) 𝑉𝑖 may be infinite dimensional depending on the matrix 𝐴we started with, as in the following example.

Example 11. Let the degree map be defined by 𝐹 (π‘₯, 𝑦) = π‘₯ βˆ’ 𝑦. The grading thismap induces is infinite, because each K-vector space 𝑉𝑖 is generated by infinitely manymonomials.

86 CHAPTER 3. PARTITION ANALYSIS

βˆ’1βˆ’2βˆ’3βˆ’4βˆ’5 0

1

2

3

4

5

οΏ½

The Hilbert-Poincare series provide a useful, refined counting tool for the numberof solutions of linear Diophantine systems. Nevertheless, we would like to allow fornon finite-dimensional graded components as well as for a tool enumerating rather thancounting solutions.

Each 𝑉𝑖 is a vector space containing homogeneous polynomials of degree 𝑖. It is alwayspossible to pick a basis of 𝑉𝑖 consisting of terms of degree 𝑖, i.e., elements of T. We willdenote such a basis by ℬ𝑖. We define the basis of {0} to be the empty set.

In the direction of obtaining an enumerating generating function we define the trun-cated multivariate Hilbert-Poincare series,

Definition 3.5 (truncated multivariate Hilbert-Poincare series)Given a graded vector space 𝑉 =

β¨π‘–βˆˆZπ‘˜ 𝑉𝑖 over the field K and a vector 𝑏 ∈ Zπ‘˜ for some

π‘˜ ∈ N, we define the truncated multivariate Hilbert-Poincare series of 𝑉 as

𝑑ℋ𝒫𝑉𝑏 (𝑧, 𝑑) =

βˆ‘π‘β‰€π‘–βˆˆZπ‘˜

βŽ›βŽβˆ‘π‘’βˆˆβ„¬π‘–

𝑒

⎞⎠ 𝑑𝑖.

The truncated multivariate Hilbert-Poincare series is a formal Laurent series in the 𝑑variables and a formal powerseries in the 𝑧 variables. οΏ½

The truncation in the indices is necessary in order to ensure that the formal Laurentseries is well defined, while the formal sum of the basis elements avoid the problem ofinfinite-dimensionality. At the same time, this formal series enumerates all solutions ofa linear Diophantine system 𝐴π‘₯ β‰₯ 𝑏, if the vector space 𝑉 is graded via the proceduredescribed above for the matrix 𝐴 ∈ Zπ‘šΓ—π‘‘. We note that in that case π‘˜ = π‘š.

The following theorem provides the connection between the Ξ©β‰₯ operator and Hilbert-Poincare series.

3.2. ALGEBRAIC PARTITION ANALYSIS 87

Theorem 1. Given 𝐴 ∈ Zπ‘šΓ—π‘‘, 𝑏 ∈ Zπ‘š and 𝑑ℋ𝒫𝑉𝑏 (𝑧, 𝑑) as above, we have

Ξ©β‰₯βˆ‘π‘₯∈N𝑛

𝑧π‘₯π‘šβˆπ‘–=1

πœ†π΄π‘–π‘₯βˆ’π‘π‘–π‘– = 𝑑ℋ𝒫𝑉

𝑏 (𝑧, 𝑑)|𝑑=1.

οΏ½

Proof. Let 𝑆 be the set of solutions to the linear Diophantine system 𝐴π‘₯ β‰₯ 𝑏. By thedefinition of the Ξ©β‰₯ operator, we have that Ξ©β‰₯

βˆ‘x∈N𝑛 zx

βˆπ‘šπ‘–=1 πœ†

𝐴𝑖xβˆ’π‘π‘–π‘– is Φ𝐴,𝑏(𝑧), the

generating function of 𝑆. Now we have:

𝛼 ∈ 𝑆 ⇔ 𝐴𝛼 β‰₯ 𝑏

⇔ 𝐴𝛼 = 𝑖 with 𝑖 β‰₯ 𝑏

⇔ 𝐹 (𝛼) = 𝑖 with 𝑖 β‰₯ 𝑏

⇔ deg(𝑧𝛼) = 𝑖 with 𝑖 β‰₯ 𝑏

⇔ 𝑧𝛼 ∈ 𝑅𝑖 with 𝑖 β‰₯ 𝑏

⇔ 𝑧𝛼 ∈ 𝐡𝑖 with 𝑖 β‰₯ 𝑏.

The last equivalence implies that

[𝑧π‘₯]Φ𝐴,𝑏(𝑧) = 1⇔ [𝑧π‘₯]𝑑ℋ𝒫𝑉𝑏 (𝑧, 𝑑) = 𝑑𝐹 (π‘₯)

and the theorem follows.

Note that this relation is all but new. It is actually as old as Cayley who first used theΞ©β‰₯ operator in the context of invariant theory.

The construction of the grading provides a way to describe the solutions of a linearDiophantine system. Given a matrix 𝐴 in Zπ‘šΓ—π‘‘, the solution set of the homogeneouslinear Diophantine system 𝐴π‘₯ β‰₯ 0 is⋃

π‘–βˆˆNπ‘š

πœ‘βˆ’1 (ℬ𝑖) βŠ† N𝑑.

For the inhomogeneous linear Diophantine system 𝐴π‘₯ β‰₯ 𝑏 for some 𝑏 ∈ Zπ‘š we have thatthe solution set is ⋃

π‘β‰€π‘–βˆˆNπ‘š

πœ‘βˆ’1 (ℬ𝑖) βŠ† N𝑑.

In other words, the solutions of a linear Diophantine system or equivalently the latticepoints of a polyhedron can be described via the construction of the appropriate gradinggiven by the inequality description.

We will now proceed with a different grading construction, relevant to polytopes andEhrhart theory.

88 CHAPTER 3. PARTITION ANALYSIS

Ehrhart grading

As we saw, the description of the lattice points in a polytope can be given by the aboveprocedure. Continuing in the same direction, we will construct a grading that instead ofjust describing the lattice points in a polytope, it gives the lattice points in a cone overa polytope. The cone over a polytope is a fundamental construction in Ehrhart theory,used to enumerate the lattice points in the dilations of a polytope. Given a polytope 𝑅in R𝑑, we embed it in R𝑑+1 at height 1, i.e., 𝑃 β€² =

{(π‘₯, 1) ∈ R𝑑+1

π‘₯ ∈ 𝑃

}.

In our grading construction, we respect the decomposition of lattice points according totheir height. Given a matrix 𝐴 in Zπ‘šΓ—π‘‘ and a vector 𝑏 in Zπ‘š we construct the matrix

𝐸 =

βŽ‘βŽ’βŽ’βŽ’βŽ’βŽ’βŽ’βŽ£βˆ’π‘1

𝐴...

βˆ’π‘π‘š

0 . . . 0 1

⎀βŽ₯βŽ₯βŽ₯βŽ₯βŽ₯βŽ₯⎦

This matrix has the property that if the matrix 𝐴 defines a polytope, then the first π‘šrows of matrix 𝐸 define the 𝑑-dilate of that polytope. The last row of 𝐸 is used to keeptrack of the dilate 𝑑.

Since we allow the polytope 𝑃 to contain negative coordinates, we consider the Laurentpolynomial ring in 𝑑+1 variables K

[𝑧±11 , 𝑧±1

2 , . . . , 𝑧±1𝑑 , 𝑑±1

]and the corresponding Lau-

rent term monoid T = [𝑧±11 , 𝑧±1

2 , . . . , 𝑧±1𝑑 , 𝑑±1]. We construct the 𝑉𝑖 as before using the

matrix 𝐸.

Now, on top of the set of 𝑉𝑖 we need some extra structure. For 𝑗 in Z, define 𝐴𝑗 to bethe direct sum of all 𝑉𝑖 for which the last coordinate of 𝑖 is equal to 𝑗, i.e.,

𝐴𝑗 =β¨βŸ¨π‘‘ ∈ T | deg(𝑑) = (𝛼1, 𝛼2, . . . , π›Όπ‘š, 𝑗)⟩K

The vector space 𝑉 is now graded by the collection of 𝐴𝑖’s. One should not confuse thedeg(𝑣) of an element 𝑣 of 𝑉 , which is a vector in Zπ‘š+1 and the degree of 𝑣 induced bythe grading, which is a non-negative integer indicating the height (last coordinate) ofπœ‘βˆ’1(𝑣) in the cone over the polytope.

3.2. ALGEBRAIC PARTITION ANALYSIS 89

5

4

3

2

1

0

βˆ’1

βˆ’2

βˆ’3

βˆ’4

βˆ’5

Although this grading respects the height given by the cone over the polytope con-struction, it gives no information about which lattice points lie in the polytope. Notethat we are only interested in non-negative dilations. For this reason, we define thesubspaces 𝐿𝑗 as

𝐿𝑗 = βŸ¨π‘‘ ∈ T | deg(𝑑) = (𝛼1, 𝛼2, . . . , π›Όπ‘š, 𝑗) , π›Όπ‘˜ β‰₯ 0 for all π‘˜ ∈ [π‘š]⟩K

for 𝑗 ∈ N, i.e., each 𝐿𝑗 is generated by the monomials of 𝐴𝑗 that correspond to latticepoints in the 𝑗-th dilation of the polytope. This is expressed by the non-negativitycondition on the first π‘š coordinates of the degree vector.

Contrary to the general construction from an arbitrary matrix 𝐴 ∈ Zπ‘šΓ—π‘‘, the con-struction of a cone over a polytope guarantees that the homogeneous components 𝐿𝑗

are finite-dimensional subspaces. This is because at each height π‘˜, the πΏπ‘˜ is generatedby the finitely many lattice points in th π‘˜-th dilation of the (by definition bounded)polytope 𝑃 .

Now, the Ehrhart series of 𝑃 is given byβˆ‘

π‘–βˆˆN π‘‘π‘–π‘šK (𝐿𝑖) 𝑑𝑖.

Oblique Graded Simplices

A useful example for truncated multivariate Hilbert-Poincare series is the case of ObliqueGraded Simplices. Let’s see two cases:

βˆ™ If we use the grading induced by the total degree (β„“1 grading) on the positivequadrant we have the following picture

90 CHAPTER 3. PARTITION ANALYSIS

and the corresponding truncated multivariate Hilbert-Poincare series is the gener-ating function for the lattice points in the positive quadrant graded by the givengrading. Note that if 𝑉 is the grading constructed as above, then

β„Žβ€²π‘–(𝑧) = [𝑑𝑖]𝑑ℋ𝒫𝑉 (𝑧, 𝑑)

are the usual complete homogeneous symmetric polynomial of degree 𝑖.

βˆ™ If we use the degree function given by degree(π‘₯, 𝑦) = π‘₯+ 2𝑦 the picture is

and thenβ„Žβ€²π‘–(𝑧) = [𝑑𝑖]𝑑ℋ𝒫𝑉 (𝑧, 𝑑)

are the oblique complete homogeneous polynomials β„Žπ‘–(𝑧; 1, 2).

In [5], the authors introduce β„Žπ‘–(𝑧1, 𝑧2, . . . , 𝑧𝑛; 𝜁1, 𝜁2, . . . , πœπ‘›) for πœπ‘– ∈ N, β€œa variant ofthe symmetric functions”, given by their generating function

βˆžβˆ‘π‘–=0

β„Žπ‘–(𝑧1, 𝑧2, . . . , 𝑧𝑛; 𝜁1, 𝜁2, . . . , πœπ‘›)𝑑𝑖 =

1

(1βˆ’ 𝑧1π‘‘πœ1)(1βˆ’ 𝑧2π‘‘πœ2) Β· Β· Β· (1βˆ’ π‘§π‘›π‘‘πœπ‘›).

Chapter 4

Partition Analysis via PolyhedralGeometry

The main idea behind all implementations of the Ξ©β‰₯ operator is to obtain a partial-fraction decomposition of the crude generating function and exploit the linearity of theΞ©β‰₯ operator. In particular, we want a partial-fraction decomposition such that in thedenominator of each fraction appear either only non-negative or only non-positive powersof πœ†β€™s. Given such a partial-fraction decomposition, we can be sure that in the seriesexpansions of the crude generating function with respect to the πœ†β€™s, the fractions withonly non-positive powers of πœ† cannot contribute terms with positive πœ† exponents. Inother words, we should only keep the fractions that have non-negative powers of πœ† andthe fractions that are πœ†-free. There are different ways to compute such a partial-fractiondecomposition, like Elliott’s algorithm [24] and Omega2 [5].

In this chapter, we present an algorithmic geometric approach. The main goal ofthe method presented here is to compute a cone decomposition of the Ξ©-polyhedron.Instead of going directly for the rational generating function of the lattice points in theΞ©-polyhedron, we first compute a set of simplicial cones that sum up to the desiredpolyhedron. This step is done by using only rational linear algebra. In order to obtainthe rational generating function, one can either use Barvinok’s algorithm or explicitformulas. Some more custom-tailored tools will appear in [19]. Here we restrict tocomputing a set of β€œsymbolic cones”, i.e., instead of using the actual generating functionwe say β€œthe cone generated by π‘Ž1, π‘Ž2, . . . , π‘Žπ‘˜ with apex π‘žβ€. This work is part of [19].

Recall the definitions of the rational form of the crude generating function

𝜌Ω𝐴,𝑏(𝑧;πœ†) = Ξ©β‰₯πœ†βˆ’π‘βˆπ‘š

𝑖=1(1βˆ’ π‘§π‘–πœ†π΄π‘–)

and of the formal Laurent series form

ΦΩ𝐴,𝑏(𝑧;πœ†) = Ξ©β‰₯

βˆ‘π‘₯1,...,π‘₯π‘‘βˆˆN

πœ†π΄π‘₯βˆ’π‘π‘§π‘₯11 . . . 𝑧π‘₯𝑑

𝑑 ,

91

92 CHAPTER 4. PARTITION ANALYSIS VIA POLYHEDRAL GEOMETRY

as well as that of the formal Laurent series form of the πœ†-generating function

Ξ¦πœ†π΄,𝑏(𝑧) =

βˆ‘π‘₯1,...,π‘₯π‘‘βˆˆN

πœ†π΄π‘₯βˆ’π‘π‘§π‘₯11 . . . 𝑧π‘₯𝑑

𝑑

and its rational form

πœŒπœ†π΄,𝑏(𝑧) =πœ†βˆ’π‘βˆπ‘›

𝑖=1(1βˆ’ π‘§π‘–πœ†π΄π‘–).

We will denote by𝐴 the matrix with𝐴1, 𝐴2, . . . , 𝐴𝑛 as columns. We note that 𝜌Π𝐢(𝑧) and

ΦΠ𝐢(𝑧), where Π𝐢 denotes the fundamental parallelepiped of the cone 𝐢, are identical

since the fundamental parallelepiped is finite and both objects collapse to a Laurentpolynomial.

4.1 Eliminating a single πœ†

Elimination of a single πœ† amounts to the solution of a single linear Diophantine inequality.All known implementations of the Ξ©β‰₯ operator are based on the recursive eliminationof πœ†β€™s for the solution of linear Diophantine systems. In order to employ polyhedralgeometry, we need to translate the problem to a problem about cones. Recall thedefinitions of the πœ†-cone and the Ξ©-polyhedron:

π’žπœ†,Z (𝐴) = π’žR ((𝑒1 : 𝐴1), (𝑒2 : 𝐴2), . . . , (𝑒𝑑 : π΄π‘š))

𝒫Ωβ‰₯,Rb (𝐴) = {x ∈ R𝑑

+ : 𝐴x β‰₯ b}Let 𝐻𝑏 = {(π‘₯1, . . . , π‘₯𝑑, π‘₯𝑑+1) : 𝑏 ≀ π‘₯𝑑+1} be the set of vectors with last componentgreater or equal to 𝑏. Since we have one πœ†, the 𝐴𝑖 is an integer denoted by π‘Žπ‘–.

Computing Ξ©β‰₯πœ†βˆ’π‘

(1βˆ’π‘§1πœ†π‘Ž1 )Β·...Β·(1βˆ’π‘§π‘‘πœ†π‘Žπ‘‘ ) amounts to computing the generating function

πœŒπœ‹(πΆβˆ©π»π‘)(𝑧1, . . . , 𝑧𝑑), where πœ‹ denotes projection with respect to the last coordinate, as

follows:

1. Compute a vertex description of the vertex cones 𝒦𝑣 at the vertices of 𝐢 βˆ©π»π‘.

2. Compute the generating functions πœŒπ’¦π‘£(𝑧1, 𝑧2, . . . , 𝑧𝑑+1), either using Barvinok’s

algorithm [12] or by explicit formulas using modular arithmetic (similar to theexpressions in [5]).

3. Substitute 𝑧𝑑+1 ↦→ 1 to obtain πœ†-free generating functions (projection of the poly-hedron).

4. Sum all the projected generating functions for the tangent cones. By Brion’stheorem [12], this yields the desired generating function Ξ©β‰₯

πœ†βˆ’π‘

(1βˆ’π‘§1πœ†π‘Ž1 )Β·...Β·(1βˆ’π‘§π‘‘πœ†π‘Žπ‘‘ ) .

Let 𝑃 be the polyhedron 𝐢 βˆ©π»π‘. We need to compute the vertices and vertex conesof 𝑃 . We note that any polyhedron can be written as the Minkowski sum of a cone anda polytope. In our case

𝑃 = conv(0, 𝑒𝑖 : 𝑖 ∈ {1, . . . , β„“}) + π’žR (𝑀𝑖,𝑗 : 𝑖 ∈ {1, . . . , β„“}, 𝑗 ∈ {β„“+ 1, . . . , 𝑑})

4.1. ELIMINATING ONE VARIABLE 93

where

𝑒𝑖 =𝑏

π‘Žπ‘–π‘£π‘– = (. . .

𝑏

π‘Žπ‘–. . . 𝑏)

𝑀𝑖,𝑗 = βˆ’π‘Žπ‘—π‘£π‘– + π‘Žπ‘–π‘£π‘— = (0 . . . 0 βˆ’π‘Žπ‘— 0 . . . 0 π‘Žπ‘– 0 . . . 0).

The vertices of 𝑃 , denoted by 𝑒𝑖, are the intersection points of the hyperplane at heightπ‘₯𝑑+1 = 𝑏 with the generators of 𝑃 that are pointing β€œup” (π‘Žπ‘– β‰₯ 0). The 𝑀𝑖,𝑗 are positivelinear combinations of the generators 𝑣𝑖 that are pointing β€œup” and the generators 𝑣𝑗that are pointing β€œdown” (π‘Žπ‘— < 0) such that 𝑀𝑖,𝑗 has last coordinate equal to zero.Combinatorially, this is a cone over a product of simplices.

Next, we want to compute the tangent cones of our polyhedron 𝑃 . The tangentcones are then given by the following lemma.

Lemma 13. The generators of the cone 𝒦𝑒𝑖 are

βˆ’π‘’π‘– and 𝑒𝑖′ βˆ’ 𝑒𝑖 for 𝑖′ ∈ {1, . . . , β„“} βˆ– {𝑖} and 𝑀𝑖,𝑗 for 𝑗 ∈ {β„“+ 1, . . . , 𝑑}.

These are 𝑑 generators in total that are linearly independent. In particular, 𝒦𝑒𝑖 is asimplicial cone.

οΏ½

Proof. First, we argue that 𝑀𝑖′,𝑗 is not a generator of 𝒦𝑒𝑖 for all 𝑖′ ∈ {1, . . . , β„“} βˆ– {𝑖} and

all 𝑗 ∈ {β„“+ 1, . . . , 𝑛}. This follows from the simple calculation

𝑒𝑖 βˆ’π‘

π‘Žπ‘–β€²π‘Žπ‘—π‘€π‘–β€²,𝑗 =

βŽ‘βŽ’βŽ’βŽ’βŽ’βŽ’βŽ’βŽ£π‘π‘Žπ‘–

0

0

𝑏

⎀βŽ₯βŽ₯βŽ₯βŽ₯βŽ₯βŽ₯βŽ¦βˆ’π‘Ž

π‘Žπ‘–β€²π‘Žπ‘—

⎑⎒⎒⎒⎒⎒⎒⎣0

βˆ’π‘Žπ‘—

π‘Žπ‘–β€²

0

⎀βŽ₯βŽ₯βŽ₯βŽ₯βŽ₯βŽ₯⎦ =

⎑⎒⎒⎒⎒⎒⎒⎣0

π‘π‘Žπ‘–β€²

0

𝑏

⎀βŽ₯βŽ₯βŽ₯βŽ₯βŽ₯βŽ₯βŽ¦βˆ’π‘Ž

π‘Žπ‘–π‘Žπ‘—

βŽ‘βŽ’βŽ’βŽ’βŽ’βŽ’βŽ’βŽ£βˆ’π‘Žπ‘—

0

π‘Žπ‘–

0

⎀βŽ₯βŽ₯βŽ₯βŽ₯βŽ₯βŽ₯⎦ = 𝑒𝑖′ βˆ’π‘

π‘Žπ‘–π‘Žπ‘—π‘€π‘–,𝑗

where the four components of the vectors that are shown have indices 𝑖, 𝑖′, 𝑗, 𝑑 + 1, inthat order, all other components are zero. Note that the coefficients βˆ’ 𝑏

π‘Žπ‘–β€²π‘Žπ‘—and βˆ’ 𝑏

π‘Žπ‘–π‘Žπ‘—are positive rational numbers as π‘Žπ‘— is negative.Moreover, none of the vectors 𝑒𝑖′ βˆ’ π‘’π‘˜ for 𝑖′ = 𝑖 = π‘˜ are in the tangent cone. This canbe seen by observing that the π‘˜-th component of 𝑒𝑖′ βˆ’ π‘’π‘˜ is negative, while the π‘˜-thcomponent of 𝑒𝑖 is zero. However, 𝑃 βŠ‚ R𝑑

β‰₯0 Γ— R.So now we know that the only directions that can appear as generators are those given inthe lemma. That all of these are, in fact, generators follows from a dimension argument:There are precisely 𝑑 directions given in the lemma and we know that the polyhedron𝑃 and all of its tangent cones have dimension 𝑑 as well. So the tangent cones have tohave at least 𝑑 generators.

We denote by π‘ˆπ‘– the matrix that has as columns the vectors π‘Žπ‘–π‘’π‘–, lcm(π‘Žπ‘–, π‘Žπ‘–β€²)(𝑒𝑖′ βˆ’ 𝑒𝑖)for 𝑖′ ∈ {1, . . . , β„“} βˆ– {𝑖} and 𝑀𝑖,𝑗 for 𝑗 ∈ {β„“+ 1, . . . , 𝑑}. π‘ˆπ‘– is a (𝑑+ 1)Γ— 𝑑 integer matrixthat has a full-rank diagonal submatrix.

94 CHAPTER 4. PARTITION ANALYSIS VIA POLYHEDRAL GEOMETRY

By Brion’s theorem, the generating function for πœ‹(π‘ƒβˆ©π»π‘) is the sum for all 𝑖 of the gener-ating function of the cone generated by the columns of π‘ˆπ‘– and equal to 𝜌𝐢(𝑧1, 𝑧2, . . . , 𝑧𝑑).We can now present the algorithm:

Algorithm 2 Elimination of a single πœ†

Require: 𝑏 ∈ Z and 𝐴 ∈ Z𝑑 such that π‘Ž1, π‘Ž2, . . . , π‘Žβ„“ > 𝑏 and π‘Žβ„“+1, π‘Žβ„“+2, . . . , π‘Žπ‘‘ < 𝑏

1: 𝐼+ ← {1, . . . , β„“}2: 𝐼+ ← {β„“+ 1, . . . , 𝑑}3: for 𝑖 ∈ 𝐼+ do4: 𝑣𝑖 ← (𝑒𝑖 : π‘Žπ‘–)

5: π‘ˆ ← {(. . . π‘π‘Žπ‘–. . . 𝑏)} for 𝑖 ∈ 𝐼+

6: for 𝑖 ∈ 𝐼+ do7: for 𝑗 ∈ πΌβˆ’ do8: 𝑀𝑖,𝑗 ← βˆ’π‘Žπ‘—π‘’π‘– + π‘Žπ‘–π‘’π‘—

9: for 𝑖 ∈ 𝐼+ do10: π‘ˆπ‘– ← {βˆ’π‘’π‘–, 𝑒𝑖′ βˆ’ 𝑒𝑖, 𝑀𝑖,𝑗 : 𝑖

β€² ∈ 𝐼+ βˆ– {𝑖}, 𝑗 ∈ πΌβˆ’}11: 𝑇𝑖 ← a triangulation of the vertex cone π’žR (π‘ˆπ‘–)

12: πœŒπ’žR(π‘ˆπ‘–)(𝑧1, 𝑧2, . . . , 𝑧𝑑+1) ←

βˆ‘π‘ βˆˆπ‘‡π‘–

πœŒπ‘ (𝑧1, 𝑧2, . . . , 𝑧𝑑+1)

13: 𝜌(𝑧1, 𝑧2, . . . , 𝑧𝑑+1) β†βˆ‘π‘–βˆˆπΌ+

πœŒπ‘ˆπ‘£(𝑧1, 𝑧2, . . . , 𝑧𝑑+1)

14: return 𝜌(𝑧1, 𝑧2, . . . , 𝑧𝑑, 1)

To illustrate the algorithm we present an example.

Example 12. Given an inequality 2π‘₯1 + 3π‘₯2 βˆ’ 5π‘₯3 β‰₯ 4, we want to compute

Ξ©β‰₯πœ†βˆ’4

(1βˆ’ 𝑧1πœ†2)(1βˆ’ 𝑧2πœ†3)(1βˆ’ 𝑧3πœ†βˆ’5).

We first compute the generators of π’žπœ†,Z (𝐴):

𝑣1 = (1, 0, 0, 2), 𝑣2 = (0, 1, 0, 3), 𝑣3 = (0, 0, 1,βˆ’5)

and construct the matrix 𝑉 :

𝑉 =

⎑⎒⎒⎒⎒⎒⎒⎣1 0 0

0 1 0

0 0 1

2 3 βˆ’5

⎀βŽ₯βŽ₯βŽ₯βŽ₯βŽ₯βŽ₯⎦ .

We want to compute the generating function of the intersection of π’žπœ†,Z (𝐴) and 𝐻4 ={(π‘₯1, π‘₯2, π‘₯3, π‘₯4) ∈ R4 : π‘₯4 β‰₯ 4}.

4.1. ELIMINATING ONE VARIABLE 95

The vectors needed to construct the tangent cones are:

𝑒1 =4

2𝑣1 = (2, 0, 0, 4)

𝑒2 =4

3𝑣2 = (0,

4

3, 0, 4)

𝑀1,3 = (βˆ’5, 0, 2, 0)

𝑀2,3 = (0,βˆ’5, 3, 0)

and the two tangent cones are:

𝐾𝑒1 = π’žR((βˆ’2, 0, 0,βˆ’4), (βˆ’2, 4

3, 0, 0), (βˆ’5, 0, 2, 0); (2, 0, 0, 4)

)

𝐾𝑒2 = π’žR((0,βˆ’4

3, 0,βˆ’4), (2,βˆ’4

3, 0, 0), (0,βˆ’5, 3, 0); (0, 4

3, 0, 4)

).

The generating functions of the lattice points in the projected cones generated by thecolumns of π‘ˆ1 and π‘ˆ2 are

𝑧41(𝑧1 + 𝑧2 + 𝑧41𝑧3 + 𝑧21𝑧2𝑧3

)(1βˆ’ 𝑧1)

(𝑧31 βˆ’ 𝑧22

) (1βˆ’ 𝑧51𝑧

23

)and

βˆ’π‘§22(𝑧21 + 𝑧1𝑧2 + 𝑧22 + 𝑧21𝑧

22𝑧3 + 𝑧32𝑧3 + 𝑧1𝑧

32𝑧3 + 𝑧1𝑧

42𝑧

23 + 𝑧21𝑧

42𝑧

23 + 𝑧52𝑧

23

)(1βˆ’ 𝑧2)

(𝑧31 βˆ’ 𝑧22

) (1βˆ’ 𝑧52𝑧

33

) .

By Brion their sum is the generating function for πœ‹(𝐢 ∩𝐻4), which is equal to

Ξ©β‰₯πœ†βˆ’4

(1βˆ’ 𝑧1πœ†2)(1βˆ’ 𝑧2πœ†3)(1βˆ’ 𝑧3πœ†βˆ’5).

οΏ½

In the following figure we can see the Ξ©-polyhedron and the two vertex cones 𝐾𝑒1

and 𝐾𝑒2 . Note that in the drawing our vectors are supposed to live in R4.

96 CHAPTER 4. PARTITION ANALYSIS VIA POLYHEDRAL GEOMETRY

The two vertex cones. Elimination of a single πœ†.

The discussion above and Lemma 13 give us the following theorem that summarizesthe algorithm for the elimination of one πœ†. Note that instead of taking the halfspace𝐻𝑏, we translate the cone by βˆ’π‘ and use the positive halfspace with respect to the πœ†coordinate denoted by π»πœ†. The subscript does not mean the offset but denotes thecoordinate.

Theorem 2. Let π‘Ž1, . . . , π‘Žπ‘˜ ∈ Q𝑛 be linearly independent vectors, let 𝐴 ∈ Qπ‘›Γ—π‘˜ denotethe matrix with the π‘Žπ‘– as columns, let 𝑏 ∈ Q𝑛, and let 𝐼 βŠ‚ [π‘˜]. Then π’žπΌR (𝐴; 𝑏) isan inhomogeneous simplicial cone. Assume that the affine hull of π’žπΌR (𝐴; 𝑏) contains

integer points. Let πœ† ∈ [𝑛] and define 𝐻β‰₯πœ† = {π‘₯ ∈ R𝑛 | π‘₯πœ† β‰₯ 0} to be the non-negative

half-space with respect to the coordinate πœ†. Let ℐ+, β„βˆ’, ℐ0 denote the sets of indices𝑖 ∈ [π‘˜] with π‘Žπ‘–πœ† > 0, π‘Žπ‘–πœ† < 0 and π‘Žπ‘–πœ† = 0, respectively. Let 𝑃 denote the polyhedron𝑃 = 𝐻β‰₯

πœ† ∩ (π’žπΌR (𝐴; 𝑏)). Under these assumptions, the following hold.If π‘πœ† < 0, then:

1. The vertices of 𝑃 are

𝑣𝑖 = π‘βˆ’ π‘πœ†π‘Žπ‘–πœ†

π‘Žπ‘– for 𝑖 ∈ ℐ+,

2. For every 𝑖 ∈ ℐ+, the extreme rays of the tangent cone of 𝑃 at 𝑣𝑖 are generated bythe vectors 𝑔1, . . . , π‘”π‘˜ defined by

𝑔𝑖 = π‘Žπ‘–

𝑔𝑖′ = π‘Žπ‘–β€² βˆ’ π‘Žπ‘– for all 𝑖′ ∈ ℐ+ βˆ– {𝑖}

𝑔𝑗 =1

π‘Žπ‘—πœ†π‘Žπ‘— βˆ’

1

π‘Žπ‘–πœ†π‘Žπ‘– for all 𝑗 ∈ β„βˆ’

𝑔𝑙 = π‘Žπ‘™ for all 𝑙 ∈ ℐ0.

The vectors 𝑔𝑖 are linearly independent whence the tangent cone at 𝑣𝑖 is simplicial.Let 𝐺𝑖 denote the matrix with these vectors as columns.

4.1. ELIMINATING ONE VARIABLE 97

3. The half-open tangent cone of 𝑃 at 𝑣𝑖 is

𝒦𝑣𝑖 = 𝑣𝑖 + π’žπΌβˆ–π‘–R (𝐺𝑖; 0) .

In particular, the tangent cone is β€œopen in direction 𝑔𝑠 if and only if the cone westarted out with is open in direction π‘Žπ‘ β€ for all 𝑠 = 𝑖. It is closed in direction 𝑖,because we intersect with a closed half-space.

4. For any vertex 𝑣𝑖, let 𝐽𝑖 denote the set of indices 𝑠 ∈ [π‘˜] where 𝑠 ∈ 𝐽𝑖 if and onlyif the first non-zero component of 𝑔𝑠 is negative (i.e. if 𝑔𝑠 is backward). Let 𝐺′

𝑖

denote the matrix obtained from 𝐺𝑖 by multiplying all columns with an index in 𝐽𝑖by βˆ’1. (Now all columns of 𝐺𝑖 are forward.) Then

Ξ¦(π’žπΌ

R(𝐴;𝑏))∩𝐻β‰₯πœ†

=βˆ‘π‘–βˆˆβ„+

(βˆ’1)|𝐽𝑖|Ξ¦π’žR()πΌβˆ–π‘–Ξ” 𝐽𝑖 (𝐺′

𝑖)+𝑣𝑖

where Ξ” denotes the symmetric difference. The same identity also holds on thelevel of rational functions.

5. Let πœ‹ : R𝑛 β†’ Rπ‘›βˆ’1 denote the projection that forgets the πœ†-th coordinate. Ifaff(𝐢) ∩ 𝐿 = 0 for some linear subspace 𝐿 that contains ker(πœ‹), then

Ξ©πœ†Ξ¦π’žπΌR(𝐴;𝑏)

=βˆ‘π‘–βˆˆβ„+

(βˆ’1)|𝐽𝑖|Ξ¦π’žπΌβˆ–π‘–Ξ” 𝐽𝑖R (��𝑖;𝑣𝑖)

.

where ��𝑖 denotes the matrix obtained from 𝐺′𝑖 by deleting the πœ†th row. Moreover,

all the cones 𝐢𝑖 = π’žπΌβˆ–π‘–Ξ” 𝐽𝑖R

(��𝑖; 𝑣𝑖

)have the property that aff(𝐢𝑖) ∩ πœ‹(𝐿) = 0.

οΏ½

We note that for the case when π‘πœ† > 0, the theorem is completely analogous and theonly difference is that the apex of the cone is a vertex of the polyhedron. Each othervertex is visible from the apex, thus an extra ray is added in all vertex cones (from eachvertex to the apex of the cone). If π‘πœ† = 0, then not all vertex cones are simplicial. Thuswe employ a deformation argument, presented by Fu Liu in [29] , and reduce the caseto the case π‘πœ† < 0.

The following lemma says that after we project we can repeat the same procedure,thus allowing for recursive elimination of πœ†s in order to solve systems of inequalities.

Lemma 14. Assume ker(πœ‹) βŠ‚ 𝐿. If 𝐽 ∩ 𝐿 = 0, then πœ‹(𝐽) ∩ πœ‹(𝐿) = 0. οΏ½

Proof. Let 𝑣 ∈ πœ‹(𝐽)∩ πœ‹(𝑙). Then there exist 𝑗 ∈ 𝐽 and 𝑙 ∈ 𝐿 such that 𝑣 = πœ‹(𝑗) = πœ‹(𝑙).Because πœ‹ is linear, we have that 𝑗 βˆ’ 𝑙 ∈ ker(πœ‹) βŠ‚ 𝐿. Therefore 𝑗 = 𝑗 βˆ’ 𝑙+ 𝑙 ∈ 𝐿 and so𝑗 ∈ 𝐽 ∩ 𝐿 which means by assumption 𝑗 = 0. But then 𝑣 = πœ‹(𝑗) = 0.

98 CHAPTER 4. PARTITION ANALYSIS VIA POLYHEDRAL GEOMETRY

4.2 Eliminating multiple πœ†

Using the algorithm for single πœ† elimination recursively (due to Lemma 14, we essentiallycompute triangulations of the dual vertex cones and their generating functions. Thisis an interesting fact which comes directly from the particular choice of geometry thatpartition analysis makes. Nevertheless, recursive elimination may not always be themost desirable strategy, as it is well known that the choice of the elimination ordermay considerably alter the running time in the traditional partition analysis algorithms(intermediate expressions swell).

In order to eliminate multiple πœ† we need to follow the same procedure, but now thedimension of the πœ†-cone is more than one lower than the ambient space, since we havemore than one πœ†. This makes the computation of explicit expressions for the verticesand the vertex cones considerably harder. In what follows we give a description of howthis could be done algorithmically.

Given 𝐴 ∈ Zπ‘šΓ—π‘‘ and 𝑏 ∈ Zπ‘š for π‘š β‰₯ 1, we define the vectors 𝑣𝑖 = (𝑒𝑖 : 𝐴𝑖) ∈ R𝑑+π‘š

where 𝐴𝑖 denotes the 𝑖-th column of 𝐴 and 𝑒𝑖 the 𝑖-th standard unit vector in R𝑑. Let 𝑉denote the matrix with the 𝑣𝑖 as columns. Then 𝑉 is a vertex description of the πœ†-cone

𝐢 = π’žπœ†,ZR (𝐴) = π’žR (𝑉 ) .

The Ξ©-polyhedron we want to compute is now

𝑃 = π’žR (𝑉 ) ∩{(𝑧, πœ†) ∈ R𝑑+π‘š

πœ†π‘– β‰₯ 𝑏𝑖 for all 𝑖 = 1, . . . ,π‘š

}.

Note that this definition of 𝑃 is neither a vertex-description nor a hyperplane-description.We need to compute the vertices and the tangent cones at the vertices of our polyhedronand we will follow a standard method for that [38].It is straightforward to give a hyperplane-description of 𝐢. Note that 𝐢 is a simplicial𝑑-dimensional cone. Its facets are spanned by all combinations of π‘‘βˆ’1 generators of thecone.

Lemma 15.

span(𝐢) =

βŽ§βŽ¨βŽ©βŽ›βŽπ‘₯

β„“

⎞⎠ ∈ R𝑑+π‘š

(𝐴 βˆ’πΌ

)βŽ›βŽπ‘₯

β„“

⎞⎠ = 0

⎫⎬⎭ .

οΏ½

Proof. There exist 𝛼𝑖 such that π‘₯ =βˆ‘

𝑖 𝛼𝑖𝑣𝑖 if and only if there exist 𝛼𝑖 such thatπ‘₯𝑖 = 𝛼𝑖 for 𝑖 = 1, . . . , 𝑑 and ℓ𝑗 =

βˆ‘π‘– π›Όπ‘–πœ†π‘—,𝑖 for 𝑗 = 1, . . . ,π‘š. Such 𝛼𝑖 exist if and only if

ℓ𝑗 =βˆ‘π‘‘

𝑖=1 π‘₯π‘–πœ†π‘—,𝑖 for all 𝑗 = 1, . . . ,π‘š.

Given the linear span of 𝐢, we can write down a hyperplane description of 𝑃 .

Lemma 16.

𝑃 =

βŽ§βŽ¨βŽ©βŽ›βŽπ‘₯

β„“

⎞⎠ ∈ R𝑑+π‘š

βŽ›βŽπ‘₯

β„“

⎞⎠ β‰₯βŽ›βŽ0

𝑏

⎞⎠ and(𝐴 βˆ’πΌ

)βŽ›βŽπ‘₯

β„“

⎞⎠ = 0

⎫⎬⎭ .

4.2. ELIMINATING MULTIPLE VARIABLES 99

οΏ½

Proof. From the proof of the previous lemma, we see that π‘₯ =βˆ‘

𝑖 𝛼𝑖𝑣𝑖 for 𝛼𝑖 β‰₯ 0 if andonly if π‘₯𝑖 β‰₯ 0 for 𝑖 = 1, . . . , 𝑑 and

(𝐴 βˆ’πΌ

)βŽ›βŽπ‘₯

β„“

⎞⎠ = 0.

So

𝐢 =

βŽ§βŽ¨βŽ©βŽ›βŽπ‘₯

β„“

⎞⎠ ∈ R𝑑+π‘š

π‘₯ β‰₯ 0 and

(𝐴 βˆ’πΌ

)βŽ›βŽπ‘₯

β„“

⎞⎠ = 0

⎫⎬⎭whence the theorem follows from the definition of 𝑃 .

Having the H-description of the Ξ©-polyhedron, what we need to do first is computeits vertices. This is done by considering all the full-rank square subsystems of the systemβŽ›βŽπ‘₯

β„“

⎞⎠ =

βŽ›βŽ0

𝑏

⎞⎠(𝐴 βˆ’πΌ

)βŽ›βŽπ‘₯

β„“

⎞⎠ = 0.

Each system has (at most) one rational solution. If the solution satisfies the full sys-tem (the point lies in the polyhedron), then that solution is a vertex of the Ξ©-polyhedron.

Unfortunately, unlike the single πœ† case, explicit formulas are no more easy to obtainfor the vertex cones. This is due to the fact that there are many combinations ofpositive/negative entries in the inhomogeneous part. Thus, one can not simply labelgenerators as pointing up or down, since the same generator may be pointing up withrespect to one πœ† coordinate and down with respect to another.

We resort to the use of standard tools from polyhedral geometry.

βˆ™ Compute the vertex cones, which is possible since we have both an H-descriptionand a V-description of the polyhedron.

βˆ™ Triangulate if needed. The nice simplicial structure of the vertex cones is no longerguaranteed.

βˆ™ Use Brion’s theorem and Barvinok’s algorithm in order to compute the desiredrational generating function.

This method is algorithmic, but no closed formulas for the vertices and the vertexcones are provided. Nevertheless, while its performance will be poorer than that oftraditional recursive elimination algorithms in general, it is expected to perform betterthan traditional algorithms on problems that show intermediate expression swell. This

100 CHAPTER 4. PARTITION ANALYSIS VIA POLYHEDRAL GEOMETRY

latter case is very often met in combinatorial problems, which have a nice 1 generatingfunction due to the structure of the problem, but the intermediate expressions do notsee the overall structure. One could say that this is a difference between local or globalknowledge about the problem structure.

1this usually means that a lot of cancellations occur in the rational function.

4.3. IMPROVEMENTS BASED ON GEOMETRY 101

4.3 Improvements based on geometry

4.3.1 Lattice Points in Fundamental Parallelepipeds

In this section we develop a closed formula for the generating function of the set of latticepoints in the fundamental parallelepiped of a simplicial cone. We will first illustrate thebasic idea for finding this lattice point set using an example.

Motivating Example

Let 𝐽 βŠ‚ R𝑛 be a lattice and 𝐿 a sublattice with basis π‘Ž1, . . . , π‘Žπ‘˜ ∈ 𝐽 . Our goal is tocome up with a closed formula (or simply a way of enumerating) the 𝐽-lattice pointsin the fundamental parallelepiped generated by the π‘Žπ‘–, i.e., we want to come up with agenerating function for the set Ξ (𝐴) where 𝐴 is the 𝑛× π‘˜-matrix with the vectors π‘Žπ‘– ascolumns.

As an example we will take 𝐽 = Z2 and

𝐴 =

⎑⎣ 2 6

βˆ’2 2

⎀⎦ .

The fundamental parallelepiped Π(𝐴) and the lattice points contained therein are illus-trated in Figure 4.1.

Figure 4.1: The lattice points in the fundamental parallelepiped Π(𝐴).

If Ξ (𝐴) were a rectangle, or, more precisely, if 𝐴 were a diagonal matrix, then𝐽 ∩Π(𝐴) would be particularly easy to describe. For example if 𝐴 is an 𝑛× 𝑛 diagonalmatrix with diagonal entries 𝑙1, . . . , 𝑙𝑛, then we have

Ξ (𝐴) = [0, 𝑙1)Γ— Β· Β· Β· Γ— [0, 𝑙𝑛)

Z𝑛 ∩Π(𝐴) = {0, . . . , 𝑙1 βˆ’ 1} Γ— Β· Β· Β· Γ— {0, . . . , 𝑙𝑛 βˆ’ 1}

ΦΠ(𝐴)(𝑧) =1βˆ’ 𝑧𝑙111βˆ’ 𝑧1

Β· . . . Β· 1βˆ’ 𝑧𝑙𝑛𝑛1βˆ’ 𝑧𝑛

.

How can we make use of this simple observation about rectangles to handle generalmatrices 𝐴 such as our example above? One idea is to transform 𝐴 into a diagonal

102 CHAPTER 4. PARTITION ANALYSIS VIA POLYHEDRAL GEOMETRY

matrix and control the corresponding changes to Π(𝐴). To implement this approach wecan use the Smith normal form of a matrix.

Theorem 4.1(Smith normal form) Let 𝐴 be a non-zero π‘›Γ—π‘˜ integer matrix. Then there exist matricesπ‘ˆ ∈ Z𝑛×𝑛, 𝑆 ∈ Z𝑛× π‘˜, 𝑉 ∈ Zπ‘˜Γ—π‘˜ such that 𝐴 = π‘ˆπ‘†π‘‰ , the matrices π‘ˆ and 𝑉 areinvertible over the integers (i.e., they are lattice transformations), and

𝑆 =

⎑⎒⎒⎒⎒⎒⎒⎒⎒⎒⎒⎒⎒⎒⎒⎒⎒⎣

𝑠1 0 0 Β· Β· Β· 0

0 𝑠2 0 Β· Β· Β· 0

0 0. . .

...... π‘ π‘Ÿ

0

. . .

0 0 0

⎀βŽ₯βŽ₯βŽ₯βŽ₯βŽ₯βŽ₯βŽ₯βŽ₯βŽ₯βŽ₯βŽ₯βŽ₯βŽ₯βŽ₯βŽ₯βŽ₯⎦.

where π‘Ÿ is the rank of 𝐴 and 𝑠𝑖|𝑠𝑖+1 and 𝐴 = π‘ˆπ‘†π‘‰ . οΏ½

In our case this can be interpreted as follows:

βˆ™ Intuitively, multiplying 𝐴 from the left with a lattice transform π‘ˆβˆ’1 means per-forming elementary row operations on 𝐴, which corresponds to changing the basisof 𝐽 . This simply applies a change of coordinates to the lattice points in thefundamental parallelepiped.

βˆ™ Multiplying 𝐴 from the right with a lattice transform 𝑉 βˆ’1 means performing el-ementary column operation on 𝐴, which corresponds to changing the basis of 𝐿and thus changing the fundamental parallelepiped. We will return to the questionhow to relate 𝐽 ∩Π(𝐴) and 𝐽 ∩Π(𝐴𝑉 βˆ’1) in a moment.

The result of applying both of these transformations to 𝐴 is a diagonal matrix 𝑆. Sothe Smith normal form presents a method of changing bases for both 𝐽 and 𝐿 such thatthe fundamental parallelepiped is a rectangle with respect to the new bases.

Let’s see how this plays out in our example, see Figure 4.2. We start out with 𝑒1, 𝑒2as a basis for Z2 and π‘Ž1, π‘Ž2 as our basis for 𝐿. Our first step is to change bases on 𝐿by replacing 𝑒1 with 𝑒′1 = 𝑒1 βˆ’ 𝑒2 and keeping 𝑒′2 = 𝑒2. We then have π‘Ž1 = 2𝑒′1. Thiscorresponds to the multiplication

π‘ˆβˆ’1𝐴 =

⎑⎣ 1 0

1 1

⎀⎦⎑⎣ 2 6

βˆ’2 2

⎀⎦ =

⎑⎣ 2 6

0 8

⎀⎦ .

As we can see, the colums of the matrix on the right hand side give the coordinates ofπ‘Ž1, π‘Ž2 in terms of 𝑒′1, 𝑒

β€²2.

4.3. IMPROVEMENTS BASED ON GEOMETRY 103

The next step is to changes bases of 𝐿 and replace π‘Ž2 with π‘Žβ€²2 = π‘Ž2βˆ’3π‘Ž1 and keepingπ‘Žβ€²1 = π‘Ž1. This corresponds to the multiplication

(π‘ˆβˆ’1𝐴)𝑉 βˆ’1 =

⎑⎣ 2 6

0 8

⎀⎦ .

⎑⎣ 1 βˆ’3

0 1

⎀⎦ =

⎑⎣ 2 0

0 8

⎀⎦ = 𝑆,

which gives the Smith normal form 𝑆 = π‘ˆβˆ’1𝐴𝑉 βˆ’1 of 𝐴. We have now found a baseπ‘Žβ€²1, π‘Ž

β€²2 of 𝐿 in which each basis vector is a multiple of the corresponding basis vector

𝑒′1, 𝑒′2. Equivalently, the matrix 𝑆 is in diagonal form, which means that with respect to

the basis 𝑒′1, 𝑒′2, the fundamental parallelepiped Ξ (π‘Žβ€²1, π‘Ž

β€²2) is a rectangle:

𝐽 ∩Π(π‘Žβ€²1, π‘Žβ€²2) =

{πœ‡1𝑒

β€²1 + πœ‡2𝑒

β€²2

πœ‡1 ∈ [0, 2), πœ‡2 ∈ [0, 8), πœ‡1, πœ‡2 ∈ Z

}.

Figure 4.2: By changing bases on 𝐽 and 𝐿 we can transform the parallelepiped Ξ (𝐴) intoa parallelepiped Ξ (π‘Žβ€²1, π‘Ž

β€²2) whose generators π‘Ž

β€²1, π‘Ž

β€²2 are multiples of the 𝑒′1, 𝑒

β€²2 respectively.

The figure on the left show the bases 𝑒1, 𝑒2 of 𝐽 and π‘Ž1, π‘Ž2 of 𝐿 that we start out with.In the center figure, we pass from basis 𝑒1, 𝑒2 to 𝑒′1, 𝑒

β€²2, thereby lining up 𝑒′1 and π‘Ž1. In

the right-hand figure, we pass from π‘Ž1, π‘Ž2 to π‘Žβ€²1, π‘Žβ€²2 thereby lining up 𝑒′2 and π‘Žβ€²2. This

process corresponds to the computation of the Smith normal form of 𝐴.

We have now found a simple description of 𝐽 ∩Π(π‘Žβ€²1, π‘Žβ€²2). How can we transform this

lattice-point set into the set 𝐽 ∩ Ξ (π‘Ž1, π‘Ž2) that we are interested in? Since both π‘Ž1, π‘Ž2and π‘Žβ€²1, π‘Ž

β€²2 are bases of 𝐿, the fundamental parallelepipeds contain the same number of

lattice points. However there is no linear transformation that gives a bijection betweenthese lattice-point sets.

For any basis 𝐴 of 𝐿, the fundamental parallelepiped Ξ (𝐴) tiles the plane. Thismeans that for any basis 𝐴 and any point 𝑧 ∈ Z2 there is a unique 𝑦 ∈ 𝐿 such thatπ‘§βˆ’π‘¦ ∈ Ξ (𝐴). If we can find a formula for this map 𝑓 : 𝑧 ↦→ π‘§βˆ’π‘¦ for any given 𝐴, we canuse this map to transform Ξ (π‘Žβ€²1, π‘Ž

β€²2) into Ξ (π‘Ž1, π‘Ž2). Fortunately this is straightforward.

We simply find the corrdinates πœ† of 𝑧 with respect to the basis 𝐴, i.e., we write 𝑧 =πœ†1π‘Ž1 + πœ†2π‘Ž2. If we now take fractional parts, we obtain

𝑓(𝑧) = {πœ†1}π‘Ž1 + {πœ†2}π‘Ž2 ∈ Ξ (π‘Ž1, π‘Ž2).

104 CHAPTER 4. PARTITION ANALYSIS VIA POLYHEDRAL GEOMETRY

Note that 𝑦 = 𝑧 βˆ’ 𝑓(𝑧) = βŒŠπœ†1βŒ‹ π‘Ž1 + βŒŠπœ†2βŒ‹ π‘Ž2 ∈ 𝐿. Using matrices and the fractional partfunction, 𝑓 can be described simply via 𝑓 = 𝐴 ∘ frac βˆ˜π΄βˆ’1. This function 𝑓 is illustratedin Figure 4.3.

Figure 4.3: The lattice points in the fundamental parallelepiped Ξ (π‘Žβ€²1, π‘Žβ€²2) can be

mapped into Ξ (𝐴) by means of the map 𝑓 = 𝐴 ∘ frac βˆ˜π΄βˆ’1.

On the whole, this means that we can enumerate the lattice points in the fundamentalparallelepiped we are interested in via

𝐽 ∩Π(π‘Ž1, π‘Ž2) = 𝐴 ∘ frac βˆ˜π΄βˆ’1(𝐽 ∩Π(π‘Žβ€²1, π‘Žβ€²2))

={(𝐴 ∘ frac βˆ˜π΄βˆ’1 ∘ π‘ˆ)πœ‡

πœ‡ ∈ Z2 ∩ ([0, 2)Γ— [0, 8))

}where

π΄βˆ’1 ∘ π‘ˆ =

⎑⎣ 18 βˆ’3

8

18

18

⎀⎦ .

⎑⎣ 1 0

βˆ’1 1

⎀⎦ =

⎑⎣ 12 βˆ’3

8

0 18

⎀⎦ .

General Method

We now describe the method illustrated in the above example in full detail.Let 𝐽 βŠ‚ R𝑛 be a lattice and 𝐿 a sublattice. Most of the time, we will have 𝐽 = Z𝑛. Let

π‘Ž1, . . . , π‘Žπ‘˜ be a basis for 𝐿 and let 𝐴 denote the π‘›Γ—π‘˜-matrix with the π‘Žπ‘– as columns. Weare then interested in describing the set of 𝐽-lattice points contained in the fundamentalparallelepiped Ξ (π‘Ž1, . . . , π‘Žπ‘›) of 𝐿 with respect to the generators π‘Ž1, . . . , π‘Žπ‘›.

The starting point for this method is the observation that Π(𝐴) is easy to describeif the basis of 𝐿 is a multiple of a basis of 𝐽 .

Lemma 17. Let 𝐽 be a lattice with basis 𝑒1, . . . , 𝑒𝑛 and let 𝐿 be a sublattice with basisπ‘Ž1, . . . , π‘Žπ‘˜ for π‘˜ ≀ 𝑛. Let 𝐼 βŠ‚ [π‘˜]. If π‘Žπ‘– = 𝛼𝑖𝑒𝑖 for 𝑖 = 1, . . . , π‘˜ and 𝛼𝑖 ∈ Zβ‰₯1, then the

4.3. IMPROVEMENTS BASED ON GEOMETRY 105

set of 𝐽-lattice points in the fundamental parallelepiped Π𝐼(𝐴) of 𝐿 with respect to thebasis 𝐴 is

𝐽 ∩Π𝐼(𝐴) =

{π‘˜βˆ‘

𝑖=1

πœ†π‘–π‘’π‘–

πœ†π‘– ∈ Z βˆ€π‘– ∈ [π‘˜], 0 ≀ πœ†π‘– < 𝛼𝑖 βˆ€π‘– ∈ 𝐼, 0 < πœ†π‘– ≀ 𝛼𝑖 βˆ€π‘– ∈ 𝐼

}

and its generating function has the rational function representation

ΦΠ𝐼(𝐴)(𝑧) =βˆπ‘–βˆˆπΌ

𝑧𝑖 Β·π‘˜βˆ

𝑖=1

1βˆ’ 𝑧𝛼𝑖𝑒𝑖

1βˆ’ 𝑧𝑒𝑖.

οΏ½

Proof. This follows immediately from the definition of Π𝐼(𝐴) and the fact that

π‘˜βˆπ‘–=1

1βˆ’ 𝑧𝛼𝑖𝑒𝑖

1βˆ’ 𝑧𝑒𝑖=βˆ‘π‘₯βˆˆπ‘†

𝑧π‘₯ for 𝑆 =

{π‘˜βˆ‘

𝑖=1

πœ†π‘–π‘’π‘–

πœ†π‘– ∈ {0, . . . , 𝛼𝑖 βˆ’ 1} βˆ€π‘–

}.

Changing the basis of 𝐿 changes the fundamental parallelepiped. However, the num-ber of lattice points in the fundamental parallelepiped remains the same. Moreover thereis a natural bijection between the lattice points in the fundamental parallelepipeds. Thisbijection is essentially given by the β€œfractional part” or the β€œdivision with remainder”.

To make this precise in the next lemma, we need some additional notation.For any real number π‘₯ ∈ R and 𝑒 ∈ {0, 1} we define integ𝑒(π‘₯) and fract𝑒(π‘₯) to be the

unique real numbers such that

π‘₯ = integ𝑒(π‘₯) + fract𝑒(π‘₯)

and

integ𝑒(π‘₯) ∈ Z, 0 ≀ fract0(π‘₯) < 1, 0 < fract1(π‘₯) ≀ 1.

Note that integ0 π‘₯ = ⌊π‘₯βŒ‹ and fract0 π‘₯ = {π‘₯}. For any vector of real numbers 𝑣 ∈ Rπ‘˜ andany set 𝐼 βŠ‚ [π‘˜], we also write integ𝐼 𝑣 and fract𝐼 𝑣 to denote the vectors

integ𝐼(𝑣) = (integπ‘–βˆˆπΌ(𝑣𝑖))π‘–βˆˆ[π‘˜] and fract𝐼(𝑣) = (fractπ‘–βˆˆπΌ(𝑣𝑖))π‘–βˆˆ[π‘˜]

where we interpret the exponent 𝑖 ∈ 𝐼 to denote 1 if 𝑖 ∈ 𝐼 and to denote 0 if 𝑖 ∈ 𝐼.In analogy to the above notation we define an extension of the mod function. Let

π‘Ž, 𝑏 ∈ R. We define π‘Ž mod0 𝑏 to be the unique real number 0 ≀ π‘Ž mod0 𝑏 < 𝑏 suchthat π‘Ž = π‘˜π‘+ π‘Ž mod0 𝑏 for some π‘˜ ∈ Z. And we define π‘Ž mod1 𝑏 to be the unique realnumber 0 < π‘Ž mod1 𝑏 ≀ 𝑏 such that π‘Ž = π‘˜π‘+ π‘Ž mod1 𝑏 for some π‘˜ ∈ Z. Again, we willwrite modπ‘–βˆˆπΌ to denote mod0 if 𝑖 ∈ 𝐼 and mod1 if 𝑖 ∈ 𝐼, etc. mod without exponentis understood to denote mod0 . Note that fract𝑒(π‘Žπ‘ ) =

π‘Ž mod𝑒 𝑏𝑏 with this notation.

106 CHAPTER 4. PARTITION ANALYSIS VIA POLYHEDRAL GEOMETRY

Lemma 18. Let 𝐽 be a lattice in R𝑛 with basis 𝑒1, . . . , 𝑒𝑛 and let 𝐿 be a sublattice. Letπ‘Ž1, . . . , π‘Žπ‘˜ be a basis of 𝐿 and let 𝐴 denote the corresponding 𝑛 Γ— π‘˜-matrix. Let π΄βˆ’1

denote any left inverse of 𝐴, i.e., let π΄βˆ’1 be a matrix with the property π΄βˆ’1𝑧 = πœ† forany 𝑧 ∈ span(𝐿) with 𝑧 =

βˆ‘π‘˜π‘–=1 πœ†π‘–π‘Žπ‘–. Let 𝐼 βŠ‚ [π‘˜] and let π‘ž ∈ Q𝑛.

1. For all 𝑧 ∈ 𝐽∩(π‘ž+span(𝐿)) there exists a unique lattice point 𝑦 ∈ Π𝐼(𝐴, π‘ž) such that

π‘§βˆ’π‘¦ ∈ 𝐿. Let 𝑧 = π‘ž+βˆ‘π‘˜

𝑖=1 πœ†π‘–π‘Žπ‘– and let πœ† = (πœ†π‘–)𝑖=1,...,π‘˜. Then 𝑦 = π‘ž+𝐴(fract𝐼(πœ†)).

2. 𝐽 ∩Π𝐼(𝐴, π‘ž) is empty if and only if 𝐽 ∩ (π‘ž + span(𝐿)) is empty.

3. Suppose 𝑝 ∈ 𝐽 ∩ (π‘ž + span(𝐿)). Let 𝑏1, . . . , π‘π‘˜ be a second basis of 𝐿 and let 𝐡denote the corresponding 𝑛× π‘˜-matrix and let 𝐼 β€² βŠ‚ [π‘˜]. Then

𝐽 ∩Π𝐼(𝐴, π‘ž) = 𝐴(fract𝐼(π΄βˆ’1((𝐽 βˆ©Ξ πΌβ€²(𝐡))βˆ’ (π‘ž βˆ’ 𝑝)))) + π‘ž

and the above map induces a bijection between the sets 𝐽∩Π𝐼(𝐴, π‘ž) and π½βˆ©Ξ πΌβ€²(𝐡).

οΏ½

Note that the map 𝐴 ∘ fract𝐼 βˆ˜π΄βˆ’1 is not linear, as we have seen in the example.

Proof. 1. Let 𝑧 ∈ 𝐽 ∩ (π‘ž+ span(𝐿)). Then there exist uniquely determined πœ†π‘– such that

𝑧 = π‘ž +π‘˜βˆ‘

𝑖=1

πœ†π‘–π‘Žπ‘– = π‘ž +π‘˜βˆ‘

𝑖=1

integπ‘–βˆˆπΌ(πœ†π‘–)π‘Žπ‘– +π‘˜βˆ‘

𝑖=1

fractπ‘–βˆˆπΌ(πœ†π‘–)π‘Žπ‘–.

Notice thatπ‘˜βˆ‘

𝑖=1

integπ‘–βˆˆπΌ(πœ†π‘–)π‘Žπ‘– ∈ 𝐿 βŠ‚ 𝐽

and

𝑦 = π‘ž +π‘˜βˆ‘

𝑖=1

fract𝐼(πœ†π‘–)π‘Žπ‘– = π‘ž +𝐴(fract𝐼(πœ†)) ∈ Π𝐼(𝐴, π‘ž).

Moreover, 𝑦 ∈ 𝐽 because 𝑧 ∈ 𝐽 . Notice also that 𝑦 is uniquely determined as changingany coefficient by an integer amount takes us out of Π𝐼(𝐴, 𝑏).

2. By the first part of the theorem, we already know that if there exists a 𝑧 ∈𝐽 ∩ (π‘ž + span(𝐿)), then there exists a 𝑦 ∈ 𝐽 ∩ Π𝐼(𝐴, π‘ž). Conversely, if 𝑦 ∈ 𝐽 ∩ Π𝐼(𝐴, π‘ž)then 𝑦 ∈ 𝐽 ∩ (π‘ž + span(𝐿)) because Π𝐼(𝐴, π‘ž) βŠ‚ π‘ž + span(𝐿).

3. Let 𝑇1 denote the translation 𝑇1(π‘₯) = π‘₯βˆ’ (π‘žβˆ’π‘) and let 𝑇2 denote the translation𝑇2(π‘₯) = π‘₯+ π‘ž. Using this notation we have to show that the map

𝑓 = 𝑇2 ∘𝐴 ∘ fract𝐼 βˆ˜π΄βˆ’1 ∘ 𝑇1

gives a bijection from 𝐽 βˆ©Ξ πΌβ€²(𝐡) to 𝐽 ∩Π𝐼(𝐴, π‘ž). We will proceed in five steps.Step 1: The image of 𝐽 ∩ span(𝐿) under 𝑓 is contained in 𝐽 ∩ Π𝐼(𝐴, π‘ž). Let 𝑧 ∈

𝑓(𝐽 ∩ (π‘ž + span(𝐿))). Then 𝑧 has the form 𝑧 = π‘ž +βˆ‘π‘˜

𝑖=1 fract𝐼(πœ†π‘–)π‘Žπ‘– where the πœ†π‘– are

4.3. IMPROVEMENTS BASED ON GEOMETRY 107

such thatβˆ‘π‘˜

𝑖=1 πœ†π‘–π‘Žπ‘– ∈ (𝐽 ∩ span𝐿) βˆ’ (π‘ž βˆ’ 𝑝). Therefore 𝑧 is contained in Π𝐼(𝐴, π‘ž) andit remains to show 𝑧 ∈ 𝐽 . By construction, the coefficients πœ†π‘– have the property

π‘˜βˆ‘π‘–=1

πœ†π‘–π‘Žπ‘– = βˆ’π‘˜βˆ‘

𝑖=1

πœˆπ‘–π‘Žπ‘– +π‘˜βˆ‘

𝑖=1

πœ‡π‘–π‘Žπ‘–

where π‘ž βˆ’ 𝑝 =βˆ‘π‘˜

𝑖=1 πœˆπ‘–π‘Žπ‘– andβˆ‘π‘˜

𝑖=1 πœ‡π‘–π‘Žπ‘– ∈ 𝐽 . Therefore

𝑧 = π‘ž +π‘˜βˆ‘

𝑖=1

fract𝐼(πœ†π‘–)π‘Žπ‘–

= 𝑝+ (π‘ž βˆ’ 𝑝) +π‘˜βˆ‘

𝑖=1

fract𝐼(πœ†π‘–)π‘Žπ‘–

= 𝑝+

π‘˜βˆ‘π‘–=1

πœˆπ‘–π‘Žπ‘– +

π‘˜βˆ‘π‘–=1

fract𝐼(βˆ’πœˆπ‘– + πœ‡π‘–)π‘Žπ‘–

= 𝑝+π‘˜βˆ‘

𝑖=1

πœˆπ‘–π‘Žπ‘– +π‘˜βˆ‘

𝑖=1

(βˆ’πœˆπ‘– + πœ‡π‘–)π‘Žπ‘– βˆ’π‘˜βˆ‘

𝑖=1

integ𝐼(βˆ’πœˆπ‘– + πœ‡π‘–)π‘Žπ‘–

= 𝑝+π‘˜βˆ‘

𝑖=1

πœ‡π‘–π‘Žπ‘– βˆ’π‘˜βˆ‘

𝑖=1

integ𝐼(βˆ’πœˆπ‘– + πœ‡π‘–)π‘Žπ‘–.

Now 𝑝 andβˆ‘π‘˜

𝑖=1 πœ‡π‘–π‘Žπ‘– are elements of 𝐽 by assumption andβˆ‘π‘˜

𝑖=1 integ𝐼(βˆ’πœˆπ‘–+πœ‡π‘–)π‘Žπ‘– is an

element of 𝐽 because the coefficients are integer and 𝐿 is a sublattice of 𝐽 . Thus 𝑧 ∈ 𝐽 .Step 2: If 𝑒, 𝑣 ∈ 𝐽 ∩ span(𝐿) and 𝑓(𝑒) = 𝑓(𝑣), then 𝑒 βˆ’ 𝑣 ∈ 𝐿. Let 𝑒 =

βˆ‘π‘˜π‘–=1 πœ‡π‘–π‘Žπ‘–

and 𝑣 =βˆ‘π‘˜

𝑖=1 πœˆπ‘–π‘Žπ‘–. Let π‘ž βˆ’ 𝑝 =βˆ‘π‘˜

𝑖=1 πœ…π‘–π‘Žπ‘–. Then 𝑓(𝑒) = 𝑓(𝑣) is equivalent to

π‘˜βˆ‘π‘–=1

fract𝐼(πœ‡π‘– βˆ’ πœ…π‘–)π‘Žπ‘– =π‘˜βˆ‘

𝑖=1

fract𝐼(πœˆπ‘– βˆ’ πœ…π‘–)π‘Žπ‘–.

Then

π‘’βˆ’ 𝑣 =

π‘˜βˆ‘π‘–=1

(πœ‡π‘– βˆ’ πœ…π‘–)π‘Žπ‘– βˆ’π‘˜βˆ‘

𝑖=1

(πœˆπ‘– βˆ’ πœ…π‘–)π‘Žπ‘–

=π‘˜βˆ‘

𝑖=1

fract𝐼(πœ‡π‘– βˆ’ πœ…π‘–)π‘Žπ‘– βˆ’π‘˜βˆ‘

𝑖=1

fract𝐼(πœˆπ‘– βˆ’ πœ…π‘–)π‘Žπ‘– +π‘˜βˆ‘

𝑖=1

integ𝐼(πœ‡π‘– βˆ’ πœ…π‘–)π‘Žπ‘– βˆ’π‘˜βˆ‘

𝑖=1

integ𝐼(πœˆπ‘– βˆ’ πœ…π‘–)π‘Žπ‘–

=π‘˜βˆ‘

𝑖=1

integ𝐼(πœ‡π‘– βˆ’ πœ…π‘–)π‘Žπ‘– βˆ’π‘˜βˆ‘

𝑖=1

integ𝐼(πœˆπ‘– βˆ’ πœ…π‘–)π‘Žπ‘–

which is an integral combination of basis vectors of 𝐿 and therefore contained in 𝐿 asclaimed.

108 CHAPTER 4. PARTITION ANALYSIS VIA POLYHEDRAL GEOMETRY

Step 3: 𝑓 |π½βˆ©Ξ πΌβ€² (𝐡) is injective. As 𝐡 is a basis of 𝐿, no two distinct elements of

π½βˆ©Ξ πΌβ€²(𝐡) differ by an element of 𝐿. Therefore Step 2 implies that 𝑓 |π½βˆ©Ξ πΌβ€² (𝐡) is injective.

Step 4: Both 𝐽 ∩ Π𝐼′(𝐡) and 𝐽 ∩ Π𝐼(𝐴, π‘ž) contain the same finite number of latticepoints. This follows directly from the fact that 𝐡 and 𝐴 are bases of the same lattice.

Step 5: 𝑓 |π½βˆ©Ξ πΌβ€² (𝐡) is bijective. Combining Steps 3 and 4 yields bijectivity.

The previous lemma gives us a way to keep track of Π𝐼(𝐴, π‘ž) when we change basesof 𝐿. Handling changes of bases of 𝐽 is far easier, as the next lemma tells us.

Lemma 19. If 𝑇 is a lattice transformation of the lattice 𝐽 , then

𝐽 ∩Π(𝐴; π‘ž) = 𝑇 (𝐽 ∩Π(π‘‡βˆ’1𝐴;π‘‡βˆ’1π‘ž)).

οΏ½

Proof. This follows from 𝐽 = 𝑇𝐽 = π‘‡βˆ’1𝐽 and π΄πœ† + π‘ž = 𝑇 (π‘‡βˆ’1π΄πœ† + π‘‡βˆ’1π‘ž) for allπœ† ∈ [0, 1)π‘˜.

So far, Lemma 17 tells us that lattice-point sets in β€œrectangular” parallelepipeds areeasy to describe and Lemmas 18 and 19 allow us to control 𝐽 ∩Π𝐼(𝐴, π‘ž) when we changebases on 𝐿 or 𝐽 , respectively. So what is left to do is to find a way to transform anarbitrary fundamental parallelepiped Π𝐼(𝐴, π‘ž) into a β€œrectangular” parallelepiped usingthe transformations given in Lemmas 18 and 19. To this end we are going to use theSmith normal form as illustrated with the above example.

Lemma 20. Let 𝐽 = Z𝑛 be a lattice and 𝐿 a sublattice of 𝐽 with basis π‘Ž1, . . . , π‘Žπ‘˜ andcorresponding 𝑛× π‘˜-matrix 𝐴. Let π‘ž ∈ R𝑛. If π‘ž + span(𝐿) does not contain any integerpoint, then Z𝑛 ∩Π𝐴,π‘ž is empty. Otherwise, let 𝑝 ∈ Z𝑛 ∩ span(𝐿). Then

Z𝑛 ∩Π𝐼(𝐴, π‘ž) = 𝐴 ∘ fract𝐼 βˆ˜π‘‰ βˆ’1 ∘ π‘†βˆ’1(Zπ‘˜ ∩Π(𝑆)βˆ’ π‘ˆβˆ’1(π‘ž βˆ’ 𝑝)) + π‘ž

where 𝐴 = π‘ˆπ‘†π‘‰ is the Smith normal form of 𝐴, the numbers 𝑠1, . . . , π‘ π‘˜ are the diagonalentries of 𝑛 Γ— π‘˜-matrix 𝑆 and π‘†βˆ’1 is the diagonal π‘˜ Γ— 𝑛-matrix with diagonal entries1𝑠1, . . . , 1

𝑠1. οΏ½

Note that in the above lemma

Z𝑛 ∩Π(𝑆) = Z𝑛 ∩ [0, 𝑠1)Γ— . . .Γ— [0, π‘ π‘˜)Γ— {0} Γ— . . .Γ— {0},

is a rectangle of lattice points.

Proof. In order to be able to apply Lemma 18 we need to pick a left inverse π΄βˆ’1 of 𝐴.To this end we define π΄βˆ’1 := 𝑉 βˆ’1π‘†βˆ’1π‘ˆβˆ’1. As π‘†βˆ’1𝑆 = 𝐼 is the identity, π΄βˆ’1 is indeeda left inverse of 𝐴 since π΄βˆ’1𝐴 = 𝑉 βˆ’1π‘†βˆ’1π‘ˆβˆ’1π‘ˆπ‘†π‘‰ = 𝐼. We then have

Z𝑛 ∩Π𝐼(𝐴, π‘ž) = 𝐴 ∘ fract𝐼 βˆ˜π΄βˆ’1((Z𝑛 ∩Π(𝐴𝑉 βˆ’1))βˆ’ (π‘ž βˆ’ 𝑝)) + π‘ž

= 𝐴 ∘ fract𝐼 βˆ˜π΄βˆ’1 ∘ π‘ˆ((Z𝑛 ∩Π(π‘ˆβˆ’1𝐴𝑉 βˆ’1))βˆ’ π‘ˆβˆ’1(π‘ž βˆ’ 𝑝)) + π‘ž

= 𝐴 ∘ fract𝐼 βˆ˜π΄βˆ’1 ∘ π‘ˆ((Z𝑛 ∩Π(𝑆))βˆ’ π‘ˆβˆ’1(π‘ž βˆ’ 𝑝)) + π‘ž

= 𝐴 ∘ fract𝐼 βˆ˜π‘‰ βˆ’1 ∘ π‘†βˆ’1((Z𝑛 ∩Π(𝑆))βˆ’ π‘ˆβˆ’1(π‘ž βˆ’ 𝑝)) + π‘ž

4.3. IMPROVEMENTS BASED ON GEOMETRY 109

where the first identity follows from Lemma 18 using the fact that 𝐴𝑉 βˆ’1 is a latticebasis for 𝐿, the second identity follows from Lemma 19 using the fact that π‘ˆ is a latticetransformation, the third identitiy follows from 𝐴 = π‘ˆπ‘†π‘‰ and the last identity followsfrom our choice of π΄βˆ’1 and π‘†βˆ’1.

Theorem 4.2Let π‘Ž1, . . . , π‘Žπ‘˜ ∈ Z𝑛 be linearly independent and let 𝐴 = (π‘Žπ‘—π‘–)π‘—βˆˆ[𝑛],π‘–βˆˆ[π‘˜] be the corre-sponding matrix with Smith normal form 𝐴 = π‘ˆπ‘†π‘‰ . Let π‘ž ∈ R𝑛 and let 𝐼 βŠ‚ [π‘˜]. Let𝑠1, . . . , π‘ π‘˜ denote the diagonal entries of 𝑆 and define 𝑑𝑖 =

π‘ π‘˜π‘ π‘–. Note that 𝑑𝑖 ∈ Z as 𝑠𝑖|𝑠𝑖+1.

Let 𝑉 βˆ’1 = (𝑣𝑗𝑖)𝑗𝑖 where 𝑗 is the row-index and 𝑖 the column index. If 𝑝 ∈ Z𝑛 ∩ span(𝐴),then the generating function of the set of lattice points in the fundamental parallelepipedΠ𝐼(𝐴, π‘ž) is given by

Ξ¦π’žZ(𝐴;π‘ž)(π‘₯) =

𝑠1βˆ’1βˆ‘πœ†1=0

Β· Β· Β·π‘ π‘˜βˆ’1βˆ‘πœ†π‘˜=0

π‘₯

(1π‘ π‘˜

βˆ‘π‘˜π‘—=1 π‘Žπ‘™π‘—(

βˆ‘π‘˜π‘–=1(πœ†π‘–βˆ’π‘€π‘–)𝑣𝑗𝑖𝑑𝑖 modπ‘–βˆˆπΌ π‘ π‘˜)+π‘žπ‘™

)𝑙=1,...,𝑛 ,

where 𝑀 = π‘ˆβˆ’1(π‘ž βˆ’ 𝑝). οΏ½

Proof. From Lemmas 17 and 20 we immediately get

𝑠1βˆ’1βˆ‘πœ†1=0

Β· Β· Β·π‘ π‘˜βˆ’1βˆ‘πœ†π‘˜=0

π‘₯𝐴 fract𝐼 𝑉 βˆ’1π‘†βˆ’1((πœ†1,...,πœ†π‘˜,0,...,0)π‘‘βˆ’π‘€)+π‘ž.

We then calculate

𝑉 βˆ’1π‘†βˆ’1((πœ†1, . . . , πœ†π‘˜, 0, . . . , 0)𝑑 βˆ’ 𝑀) =

(π‘˜βˆ‘

𝑖=1

πœ†π‘– βˆ’ 𝑀𝑖

𝑠𝑖𝑣𝑗𝑖

)𝑗=1,...,π‘˜

=1

π‘ π‘˜

(π‘˜βˆ‘

𝑖=1

(πœ†π‘– βˆ’ 𝑀𝑖)𝑑𝑖𝑣𝑗𝑖

)𝑗=1,...,π‘˜

where we denote the entries of 𝑉 βˆ’1 by 𝑣𝑗𝑖. Recall that for 𝑒 ∈ {0, 1} we havefract𝑒(π‘Žπ‘ ) =

π‘Ž mod𝑒 𝑏𝑏 . With this notation we get

fract𝐼

(1

π‘ π‘˜

π‘˜βˆ‘π‘–=1

(πœ†π‘– βˆ’ 𝑀𝑖)𝑑𝑖𝑣𝑗𝑖

)𝑗=1,...,π‘˜

=

(1

π‘ π‘˜

π‘˜βˆ‘π‘–=1

(πœ†π‘– βˆ’ 𝑀𝑖)𝑑𝑖𝑣𝑗𝑖 modπ‘–βˆˆπΌ π‘ π‘˜

)𝑗=1,...,π‘˜

.

Finally, we calculate

𝐴

(1

π‘ π‘˜

βˆ‘π‘–

(πœ†π‘– βˆ’ 𝑀𝑖)𝑣𝑗𝑖𝑑𝑖 modπ‘–βˆˆπΌ π‘ π‘˜

)𝑗=1,...,π‘˜

+ π‘ž =

βŽ›βŽ 1

π‘ π‘˜

π‘˜βˆ‘π‘—=1

π‘Žπ‘™π‘—

(π‘˜βˆ‘

𝑖=1

(πœ†π‘– βˆ’ 𝑀𝑖)𝑣𝑗𝑖𝑑𝑖 modπ‘–βˆˆπΌ π‘ π‘˜

)+ π‘žπ‘™

βŽžβŽ π‘™=1,...,𝑛

.

110 CHAPTER 4. PARTITION ANALYSIS VIA POLYHEDRAL GEOMETRY

4.4 Conclusions

One should note that the iterative algorithm is in the intersection of MacMahon’s ap-proach and polyhedral geometry. During the execution of the algorithm, geometricobjects such as the vertices and the vertex cones of the Ξ©-polyhedron, as well as a tri-angulation of the duals of the vertex cones, are computed, without use of any tool frompolyhedral geometry. Moreover, by using the intermediate step of computing cones sym-bolically, some of the cones are dropped without computing their generating functions,i.e., if all generators of a cone are pointing down and the apex lies below the intersectinghalfspace, the cone can be safely ignored.

On the other hand, the algorithm for simultaneous multiple πœ† elimination leansclearly towards polyhedral geometry, using exclusively tools from that area and ignoringthe recursive πœ† elimination, prominent in the traditional partition analysis implemen-tations. In the polyhedral geometry world, already for a decade, there exist tools, likethe algorithm of Barvinok-Woods [13] for computing Hadamard products, that can beapplied to perform simultaneous πœ† elimination. Nevertheless, in the partition analysisworld these tools are not yet widespread and they are not tested concerning possibleadvantages, either practical or theoretical.

A practical implementation of the algorithms and further theoretical developmentsare under preparation and will be presented in [19].

Appendix A

Proof of β€œGeometry of Omega2”

In what follows we assume gcd(𝛼, 𝛽) = 1 as indicated in Theorem 3.1.

Fundamental Parallelepipeds

Let Π𝜁 = Π𝐴 ∩ (Z2 Γ— {𝜁}) and Ξ𝜁 = Π𝐡 ∩ (Z2 Γ— {𝜁}) for 𝜁 ∈ Z. Π𝜁 (resp. Ξ𝜁) is theintersection of Π𝐴 (resp. Π𝐡 ) with the affine subspace {(π‘₯, 𝑦, 𝜁) ∈ R3}.

Lemma 21. There is at most one lattice point in each fundamental parallelepiped ofthe cones 𝐴 and 𝐡 at any given height (π‘₯3-value) and if there is one then its form isdetermined as follows:

βˆ™ Π𝜁 = {(π‘₯1, π‘₯2, 𝜁) ∈ Z3|π‘₯1 = πœβˆ’π‘₯2𝛽𝛼 , π‘₯2 ∈ {0, 1, . . . , π›Όβˆ’ 1}} .

βˆ™ Ξ𝜁 = {(π‘₯1, π‘₯2, 𝜁) ∈ Z3|π‘₯2 = πœβˆ’π‘₯1𝛼𝛽 , π‘₯1 ∈ {βˆ’π›½ + 1,βˆ’π›½ + 2, . . . , 0}}.

Moreover |Π𝜁 | ≀ 1 and |Ξ𝜁 | ≀ 1. οΏ½

Proof. Let (π‘₯1, π‘₯2, π‘₯3) ∈ Π𝐴 ∩ Z3. Then there exist π‘˜, 𝑙 ∈ [0, 1) such that

π‘˜(βˆ’π›½, 𝛼, 0) + 𝑙(1, 0, 𝛼) = (π‘₯1, π‘₯2, π‘₯3) ∈ Z3.

This translates to the system⎧βŽͺ⎨βŽͺ⎩π‘₯1 = 𝑙 βˆ’ π‘˜π›½

π‘₯2 = π‘˜π›Ό

π‘₯3 = 𝑙𝛼

β†’

⎧βŽͺ⎨βŽͺ⎩π‘₯1 =

πœπ›Ό βˆ’ π‘˜π›½

π‘₯2 ∈ [0, 𝛼) ∩ Z𝑙 = π‘₯3

𝛼

β†’

⎧βŽͺ⎨βŽͺ⎩π‘₯1 =

π‘₯3βˆ’π‘₯2𝛽𝛼

π‘₯2 ∈ {0, 1, . . . , π›Όβˆ’ 1}π‘₯3 ∈ {0, 1, . . . , π›Όβˆ’ 1}

Fix π‘₯3 = 𝜁 ∈ {0, 1, . . . , 𝛼 βˆ’ 1}. Assume |Π𝜁 | > 1 and let (π‘₯β€²1, π‘₯β€²2, 𝜁), (π‘₯

β€²β€²1, π‘₯

β€²β€²2, 𝜁) ∈ Π𝜁 .

Then {𝛼|𝜁 βˆ’ π‘₯β€²2𝛽

𝛼|𝜁 βˆ’ π‘₯β€²β€²2𝛽→ 𝛼|π‘₯β€²2𝛽 βˆ’ π‘₯β€²β€²2𝛽 β†’

{𝛼|𝛽(π‘₯β€²2 βˆ’ π‘₯β€²β€²2)

gcd(𝛼, 𝛽) = 1β†’ 𝛼|π‘₯β€²2 βˆ’ π‘₯β€²β€²2

Since |π‘₯β€²2 βˆ’ π‘₯β€²β€²2| < 𝛼 we have a contradiction. Thus |Π𝜁 | ≀ 1.The proof for Ξ𝜁 is completely analogous.

111

112 APPENDIX A. PROOF OF β€œGEOMETRY OF OMEGA2”

The first summand

Our goal is to show that 𝜌𝐴 =𝑃𝛼,𝛽

(1βˆ’π‘§βˆ’π›½1 𝑧𝛼2 )(1βˆ’π‘§1𝑧𝛼3 )

.

Proposition 4.

𝜌Π(𝐴) = 𝑃𝛼,𝛽 =

π›Όβˆ’1βˆ‘π‘–=0

π‘Žπ‘–π‘§π‘–3

for

π‘Žπ‘– =

βŽ§βŽ¨βŽ©π‘§π‘–π›½

2 if 𝛽|𝑖 or 𝑖 = 0,

𝑧rmd((π›Όβˆ’1 mod 𝛽)𝑖,𝛽)βˆ’π›½1 𝑧

rmd((π›½βˆ’1 mod 𝛼)𝑖,𝛼)2 otherwise,

οΏ½

Proof. Since Π𝜁 = βˆ… for 𝜁 β‰₯ 𝛼, we need to prove the following three statements

1. 𝜌Π𝜁= 1 = π‘Ž0.

2. Let 𝜁 ∈ {1, 2, . . . , π›Όβˆ’ 1} such that 𝛽|𝜁. Then 𝜌Π𝜁= 𝑧

πœ†π›½

2 π‘§πœ3 = π‘Žπœπ‘§πœ3 .

3. Let 𝜁 ∈ {1, 2, . . . , π›Όβˆ’ 1} such that 𝛽 - 𝜁. Then 𝜌Π𝜁= π‘Žπœπ‘§

𝜁3 .

Using the equations from the proof of Lemma 21 we have⎧βŽͺ⎨βŽͺ⎩π‘₯1 = 𝑙 βˆ’ π‘˜π›½

π‘₯2 = π‘˜π›Ό

0 = 𝑙𝛼

𝑙=0βˆ’βˆ’β†’

{π‘˜π›½ ∈ Zπ‘˜π›Ό ∈ Z

βˆƒπ‘›βˆˆNβˆ’βˆ’βˆ’β†’

{π‘˜π›½ ∈ Zπ‘˜ = 𝑛

𝛼

βˆ’β†’

{𝑛𝛽𝛼 ∈ Zπ‘˜ = 𝑛

𝛼

βˆ’β†’

{𝛼|𝑛 or 𝛼|π›½π‘˜ = 𝑛

𝛼

gcd(𝛼,𝛽)=1βˆ’βˆ’βˆ’βˆ’βˆ’βˆ’βˆ’β†’

{𝛼|𝑛𝑛𝛼 = π‘˜ ∈ [0, 1)

Thus π‘˜ = 0, which means π‘₯1 = π‘₯2 = π‘₯3 = 0 and 𝜌Π0= 1.

By the definition of π‘Ž0 we have that π‘Ž0 = 1.οΏ½ of statement 1.

From Lemma 21 we know that |Π𝜁 | ≀ 1 and if equality holds the lattice point is

of the form ( πœβˆ’π‘₯2𝛽𝛼 , π‘₯2, 𝜁) for some π‘₯2 ∈ {0, 1, . . . , 𝛼 βˆ’ 1}. We will check if the desired

exponent is actually a lattice point in Π𝜁 . Let π‘₯2 = πœπ›½ . Since 𝜁 < 𝛼 we have that

π‘₯2 ∈ {0, 1, . . . , π›Όβˆ’ 1}. Moreover

π‘₯1 =𝜁 βˆ’ π‘₯2𝛽

𝛼=

𝜁 βˆ’ πœπ›½π›½

𝛼= 0 ∈ Z

which means that (0, πœπ›½ , 𝜁) ∈ Π𝜁 . Thus 𝜌Π𝜁

= π‘§πœπ›½

2 π‘§πœ3 , which by definition is π‘Žπœπ‘§πœ3 .

οΏ½ of statement 2.

113

We will proceed in two steps. First show that rmd((π›½βˆ’1 mod 𝛼)𝜁, 𝛼) is the π‘₯2-coordinate of a lattice point in Π𝜁 and then that rmd((π›Όβˆ’1 mod 𝛽)𝜁, 𝛽) βˆ’ 𝛽 is the π‘₯1-

coordinate of a lattice point in Π𝜁 . Since |Π𝜁 | ≀ 1, we have that 𝜌Π𝜁= π‘Žπœπ‘§

𝜁3 .

βˆ™ In order to prove that rmd((π›½βˆ’1 mod 𝛼)𝜁, 𝛼) is the π‘₯2-coordinate of a lattice pointin Π𝜁 we have to show that

1. rmd((π›½βˆ’1 mod 𝛼)𝜁, 𝛼) ∈ {0, 1, . . . , π›Όβˆ’ 1};

2.πœβˆ’(rmd((π›½βˆ’1 mod 𝛼)𝜁,𝛼))𝛽

𝛼 ∈ Z.

Let π‘₯2 = rmd((π›½βˆ’1 mod 𝛼)𝜁, 𝛼). By definition the remainder of division by 𝛼 is in{0, 1, . . . , π›Όβˆ’ 1}.By the definitions of remainder and modular inverse we have

π‘₯2 = π‘Ÿπœ βˆ’ π›Όπ‘š

for some π‘š ∈ Z and π‘Ÿ such that π‘Ÿπ›½ = 𝛼𝑛+ 1 for some 𝑛 ∈ Z.Then

π‘₯2 = π‘Ÿπœ βˆ’ π›Όπ‘šβ‡” 𝛽π‘₯2 = π›½π‘Ÿπœ βˆ’ π›Όπ›½π‘š

⇔ 𝛽π‘₯2 = (𝛼𝑛+ 1)𝜁 βˆ’ π›Όπ›½π‘š

⇔ 𝛽π‘₯2 = π›Όπ‘›πœ + 𝜁 βˆ’ π›Όπ›½π‘š

⇔ 𝜁 βˆ’ 𝛽π‘₯2 = 𝛼(π›½π‘šβˆ’ π‘›πœ)

⇔ 𝜁 βˆ’ 𝛽π‘₯2𝛼

= π›½π‘šβˆ’ π‘›πœ ∈ Z.

βˆ™ In order to prove that rmd((π›Όβˆ’1 mod 𝛽)𝜁, 𝛽) βˆ’ 𝛽 is the π‘₯1-coordinate of a latticepoint in Π𝜁 we have to show that there exist π‘₯2 ∈ {0, 1, . . . , 𝛼 βˆ’ 1} such that

rmd((π›Όβˆ’1 mod 𝛽)𝜁, 𝛽)βˆ’ 𝛽 = πœβˆ’π‘₯2𝛽𝛼 .

Let 𝑏 = rmd((π›Όβˆ’1 mod 𝛽)𝜁, 𝛽). By definition

𝑏 = π‘Ÿπœ βˆ’ π›½π‘š

for some π‘š ∈ Z and π‘Ÿ such that π›Όπ‘Ÿ = 𝛽𝑛 + 1 for some 𝑛 ∈ Z. Then we want toprove that

π‘βˆ’ 𝛽 =𝜁 βˆ’ π‘₯2𝛽

𝛼.

We have

π‘βˆ’ 𝛽 =𝜁 βˆ’ π‘₯2𝛽

𝛼⇔ π‘Ÿπœ βˆ’ π›½π‘šβˆ’ 𝛽 =

𝜁 βˆ’ π‘₯2𝛽

𝛼⇔ π›Όπ‘Ÿπœ βˆ’ π›Όπ›½π‘šβˆ’ 𝛼𝛽 = 𝜁 βˆ’ π‘₯2𝛽

⇔ π›½π‘›πœ + 𝜁 βˆ’ π›Όπ›½π‘šβˆ’ 𝛼𝛽 = 𝜁 βˆ’ π‘₯2𝛽

⇔ π‘₯2 = 𝛼(π‘š+ 1)βˆ’ π‘›πœ.

114 APPENDIX A. PROOF OF β€œGEOMETRY OF OMEGA2”

Thus we need to show that 𝛼(π‘š + 1) βˆ’ π‘›πœ ∈ {0, 1, . . . , 𝛼 βˆ’ 1}. First observe that𝛼(π‘š+ 1)βˆ’ π‘›πœ ∈ Z.If π‘š is the quotient in the division of π‘Ÿπœ by 𝛽 we have π‘š + 1 > π‘Ÿπœ

𝛽 . In order toshow that 𝛼(π‘š+ 1)βˆ’ π‘›πœ > 0 we have

π‘š+ 1 >π‘Ÿπœ

𝛽⇒ π‘š >

π‘Ÿπœ

π›½βˆ’ 1

β‡’ π‘š >

(𝛽𝑛+1𝛼

)𝜁

π›½βˆ’ 1

β‡’ π‘š >π›½π‘›πœ + 𝜁

π›Όπ›½βˆ’ 1

β‡’ π‘š >π›½π‘›πœ

π›Όπ›½βˆ’ 1

β‡’ π‘š >π‘›πœ

π›Όβˆ’ 1

β‡’ 𝛼(π‘š+ 1) > π‘›πœ

β‡’ 𝛼(π‘š+ 1)βˆ’ π‘›πœ > 0.

For the other direction, i.e. 𝛼(π‘š+1)βˆ’π‘›πœ < 𝛼 we observe that since 𝛽 - 𝜁 we have0 < 𝑏 = π‘Ÿπœ βˆ’π‘šπ›½. We know that 𝜁 < 𝛼 and

𝜁 < 𝛼𝑏⇒ 𝜁

𝛼< 𝑏

β‡’ 0 < π‘βˆ’ 𝜁

𝛼

β‡’ π‘šπ›½ < π‘šπ›½ + π‘βˆ’ 𝜁

𝛼

β‡’ π‘šπ›½ < π‘Ÿπœ βˆ’ 𝜁

𝛼

β‡’ π‘šπ›½ <(𝑛𝛽 + 1)𝜁

π›Όβˆ’ 𝜁

𝛼

β‡’ π‘šπ›½ <π‘›π›½πœ

𝛼

β‡’ π‘š <π‘›πœ

𝛼⇒ π›Όπ‘š < π‘›πœ

β‡’ π›Όπ‘š+ 𝛼 < π‘›πœ + 𝛼

β‡’ 𝛼(π‘š+ 1)βˆ’ π‘›πœ < 𝛼.

οΏ½ of statement 3.

Corollary 1. From Proposition 4 and Lemma 4 we have that 𝜌𝐴 =𝑃𝛼,𝛽

(1βˆ’π‘§βˆ’π›½1 𝑧𝛼2 )(1βˆ’π‘§1𝑧𝛼3 )

.

οΏ½

115

The second summand

We want to show that 𝜌𝐡 =𝑄𝛼,𝛽+1βˆ’π‘§βˆ’π›½

1 𝑧𝛼2(1βˆ’π‘§βˆ’π›½

1 𝑧𝛼2 )(1βˆ’π‘§1𝑧𝛼3 ).

Proposition 5.

𝜌Π(𝐡) = 𝑄𝛼,𝛽 + 1βˆ’ π‘§βˆ’π›½1 𝑧𝛼2 =

π›½βˆ’1βˆ‘π‘–=0

𝑏𝑖𝑧𝑖3 + 1βˆ’ π‘§βˆ’π›½

1 𝑧𝛼2

for

𝑏𝑖 =

{π‘§βˆ’π›½1 𝑧𝛼2 if 𝑖 = 0,

𝑧rmd((π›Όβˆ’1 mod 𝛽)𝑖,𝛽)βˆ’π›½1 𝑧

rmd((π›½βˆ’1 mod 𝛼)𝑖,𝛼)2 otherwise.

οΏ½

Proof. Since Ξ𝜁 = βˆ… for 𝜁 β‰₯ 𝛽, we need to prove the following three statements

1. 𝜌Ξ0(z) = 1 and 𝑏0 = π‘§βˆ’π›½

1 𝑧𝛼2 .

2. If 𝜁 ∈ {1, 2, . . . , 𝛽 βˆ’ 1}, then 𝜌Ξ𝜁(z) = π‘Žπœπ‘§

𝜁3 .

The proof is analogous to that of Proposition 4⎧βŽͺ⎨βŽͺ⎩π‘₯1 = βˆ’π‘˜π›½π‘₯2 = 𝑙 + π‘˜π›Ό

0 = 𝑙𝛽

𝑙=0βˆ’βˆ’β†’

{π‘˜π›½ ∈ Zπ‘˜π›Ό ∈ Z

βˆƒπ‘›βˆˆNβˆ’βˆ’βˆ’β†’

{π‘˜π›½ ∈ Zπ‘˜ = 𝑛

𝛼

βˆ’β†’

{𝑛𝛽𝛼 ∈ Zπ‘˜ = 𝑛

𝛼

βˆ’β†’

{𝛼|𝑛 or 𝛼|π›½π‘˜ = 𝑛

𝛼

gcd(𝛼,𝛽)=1βˆ’βˆ’βˆ’βˆ’βˆ’βˆ’βˆ’β†’

{𝛼|𝑛𝑛𝛼 = π‘˜ ∈ [0, 1)

Thus π‘˜ = 0, π‘₯1 = π‘₯2 = π‘₯3 = 0 and 𝜌Ξ0= 1.

By the definition of 𝑏0 we have that 𝑏0 = π‘§βˆ’π›½1 𝑧𝛼2 .

οΏ½ of statement 1.We need to show that Π𝜁 = Ξ𝜁 for 𝜁 ∈ {1, 2, . . . , 𝛽 βˆ’ 1}.From the analysis in the proof of Proposition 4, we know that

(rmd((π›Όβˆ’1 mod 𝛽)𝜁, 𝛽)βˆ’ 𝛽, rmd((π›½βˆ’1 mod 𝛼)𝜁, 𝛼), 𝜁) ∈ Π𝜁

for 𝜁 ∈ {0, 1, . . . , 𝛽 βˆ’ 1} βŠ‚ {0, 1, . . . , π›Όβˆ’ 1} .The proof follows from the fact that π‘₯1 =

πœβˆ’π‘₯2𝛽𝛼 ⇔ π‘₯2 =

πœβˆ’π‘₯1𝛼𝛽 .

οΏ½ of statement 2.

Now the proof of Theorem 3.2 follows from Proposition 4, Proposition 5 and consid-ering the signs in the two summands of (3.10).

116 APPENDIX A. PROOF OF β€œGEOMETRY OF OMEGA2”

Bibliography

[1] G. Andrews and P. Paule. MacMahon’s Partition Analysis IV: HypergeometricMultisums. Sm. Lothar. Combin., B42i:1–24, 1999.

[2] G. E. Andrews and P. Paule. MacMahon’s Partition Analysis XII: Plane Partitions.Technical report, SFB 013, September 2006. SFB-report 2006-28.

[3] G. E. Andrews, P. Paule, and A. Riese. MacMahon’s partition analysis. IX. π‘˜-gonpartitions. Bull. Austral. Math. Soc., 64(2):321–329, 2001.

[4] G. E. Andrews, P. Paule, and A. Riese. MacMahon’s partition analysis: the Omegapackage. European J. Combin., 22(7):887–904, 2001.

[5] G. E. Andrews, P. Paule, and A. Riese. MacMahon’s partition analysis. VI. A newreduction algorithm. Ann. Comb., 5(3-4):251–270, 2001. Dedicated to the memoryof Gian-Carlo Rota (Tianjin, 1999).

[6] G. E. Andrews, P. Paule, and A. Riese. MacMahon’s partition analysis. VII. Con-strained compositions. In π‘ž-series with applications to combinatorics, number the-ory, and physics (Urbana, IL, 2000), volume 291 of Contemp. Math., pages 11–27.Amer. Math. Soc., Providence, RI, 2001.

[7] G. E. Andrews, P. Paule, and A. Riese. MacMahon’s partition analysis. VIII. Planepartition diamonds. Adv. in Appl. Math., 27(2-3):231–242, 2001. Special issue inhonor of Dominique Foata’s 65th birthday (Philadelphia, PA, 2000).

[8] G. E. Andrews, P. Paule, and A. Riese. MacMahon’s Partition Analysis X: PlanePartitions with Diagonals. Southeast Asian Journal Mathematics and MathematicalSciences, 3:3–14, 2004.

[9] G. E. Andrews, P. Paule, and A. Riese. MacMahon’s Partition Analysis XI: Hexag-onal Plane Partitions. SFB-Report 2004-4, J. Kepler University Linz, March 2004.

[10] G. E. Andrews, P. Paule, A. Riese, and V. Strehl. MacMahon’s partition analy-sis. V. Bijections, recursions, and magic squares. In Algebraic combinatorics andapplications (Goßweinstein, 1999), pages 1–39. Springer, Berlin, 2001.

[11] A. Barvinok. A course in convexity, volume 54 of Graduate Studies in Mathematics.American Mathematical Society, Providence, RI, 2002.

117

118 BIBLIOGRAPHY

[12] A. Barvinok. Integer points in polyhedra. Zurich Lectures in Advanced Mathematics.European Mathematical Society (EMS), Zurich, 2008.

[13] A. Barvinok and K. Woods. Short rational generating functions for lattice pointproblems. J. Amer. Math. Soc, 16:957–979, 2003.

[14] I. G. Bashmakova. Diophantus and Diophantine equations, volume 20 of The Dol-ciani Mathematical Expositions. Mathematical Association of America, Washington,DC, 1997. Translated from the 1972 Russian original by Abe Shenitzer and updatedby Joseph Silverman.

[15] M. Beck. The partial-fractions method for counting solutions to integral linearsystems. Discrete Comput. Geom., 32(4):437–446, 2004.

[16] M. Beck, C. Haase, and F. Sottile. Formulas of Brion, Lawrence, and Varchenkoon rational generating functions for cones. Math. Intelligencer, 31(1):9–17, 2009.

[17] M. Beck and S. Robins. Computing the continuous discretely. Undergraduate Textsin Mathematics. Springer, New York, 2007. Integer-point enumeration in polyhedra.

[18] M. Bousquet-Melou and K. Eriksson. Lecture hall partitions. Ramanujan J.,1(1):101–111, 1997.

[19] F. Breuer and Z. Zafeirakopoulos. Partition analysis via polyhedral geometry.preprint.

[20] W. Bruns and J. Gubeladze. Semigroup algebras and discrete geometry. In Geome-try of toric varieties, volume 6 of Semin. Congr., pages 43–127. Soc. Math. France,Paris, 2002.

[21] W. Bruns, B. Ichim, T. Romer, and C. Soger. Normaliz. algorithms for rationalcones and afne monoids.

[22] A. Cayley. On an algebraical operation. Quarterly Journal of Pure and AppliedMathematics, xiii:369–375, 1875.

[23] J. De Loera, R. Hemmecke, and M. Koppe. Algebraic and Geometric Ideas in theTheory of Discrete Optimization. MPS-SIAM Series on Optimization. CambridgeUniversity Press, 2012.

[24] E. B. Elliott. On linear homogeneous diophantine equations. Q J Pure Appl Math,136:348–377, 1903.

[25] T. L. Heath. Diophantus of Alexandria: A study in the history of Greek algebra.Second edition. With a supplement containing an account of Fermat’s theorems andproblems connected with Diophantine analysis and some solutions of Diophantineproblems by Euler. Dover Publications Inc., New York, 1964.

BIBLIOGRAPHY 119

[26] R. M. Karp. Reducibility among combinatorial problems. In Complexity of com-puter computations (Proc. Sympos., IBM Thomas J. Watson Res. Center, YorktownHeights, N.Y., 1972), pages 85–103. Plenum, New York, 1972.

[27] M. Kauers and P. Paule. The concrete tetrahedron. Texts and Monographs inSymbolic Computation. SpringerWienNewYork, Vienna, 2011. Symbolic sums, re-currence equations, generating functions, asymptotic estimates.

[28] M. Koppe. Geometry of numbers and rational generating functions techniques forinteger programming, 2010.

[29] F. Liu. Perturbation of transportation polytopes, 2012.

[30] P. A. MacMahon. Memoir on the theory of the partitions of numbers. Part II.Philosophical Transactions of the Royal Society of London. Series A ContainingPapers of a Math. or Phys. Character (1896-1934), 192:351–401, 1899.

[31] P. A. MacMahon. Combinatory analysis. Vol. I, II (bound in one volume). DoverPhoenix Editions. Dover Publications Inc., Mineola, NY, 2004. Reprint of Δ±t Anintroduction to combinatory analysis (1920) and Δ±t Combinatory analysis. Vol. I, II(1915, 1916).

[32] Y. Matiyasevich. Hilbert’s tenth problem: what was done and what is to be done.In Hilbert’s tenth problem: relations with arithmetic and algebraic geometry (Ghent,1999), volume 270 of Contemp. Math., pages 1–47. Amer. Math. Soc., Providence,RI, 2000.

[33] E. Miller and B. Sturmfels. Combinatorial commutative algebra, volume 227 ofGraduate Texts in Mathematics. Springer-Verlag, New York, 2005.

[34] A. A. Monforte and M. Kauers. Formal Laurent Series in Several Variables. Expo-sitiones Mathematicae, pages ?–?, 2012. to appear.

[35] R. P. Stanley. Enumerative combinatorics. Volume 1, volume 49 of CambridgeStudies in Advanced Mathematics. Cambridge University Press, Cambridge, secondedition, 2012.

[36] H. S. Wilf. generatingfunctionology. A K Peters Ltd., Wellesley, MA, third edition,2006.

[37] G. Xin. The ring of Malcev-Neumann series and the residue theorem, 2004. Thesis(Ph.D.)–Brandeis University.

[38] G. M. Ziegler. Lectures on polytopes, volume 152 of Graduate Texts in Mathematics.Springer-Verlag, New York, 1995.

Index

πœ† generating function, 70Ξ©β‰₯, algebraic84Ξ©β‰₯ operator, 69Hilbert-Poincare series, 83linear Diophantine system, 52truncated multivariate Hilbert-Poincare se-

ries, 86

Complete Homogeneous Symmetric Poly-nomials, 77

conefeasible, 29half-open, 28open, 28pointed, 24polyhedral, 22rational, 22simplicial, 23tangent, 29triangulation, 29unimodular, 24vertex, 29

conic hull, 22crude generating function, 70

dimensionpolyhedron, 18

Elliott’s Algorithm, 65

face, 20facet, 20forward direction, 46fundamental parallelepiped, 23Fundamental Recurrence, 77

generating function, 35, 36

rational, 36

halfspace, 16

hull

affine, 18

conic, 22

hyperplane, 16

affine, 16

supporting, 20

indicator function, 35

integral

closure, 26

element, 26

integral domain, 30

lattice, 25

Laurent polynomials, 30

Laurent series

multivariate, 31

univariate, 31

linear Diophantine problem

counting, 54

listing, 54

linear Diophantine systems

hierarchy, 56

linear functional, 16

MacMahon , rules72

monoid, 25

polyhedral cone, 22

polyhedron, 17

dimension, 18

rational, 17

polytope, 19

120

INDEX 121

rational function, 30Ray, 20recession cone, 46

semigroup, 25affine, 25generating set, 25saturated, 26

Symbolic Computation, 76

translation of cone, 27triangulation, 29

vector partition function, 52vector space

graded, 83vertex cone, 29

122 INDEX

Curriculum Vitae

Personal details

Last Name Zafeirakopoulos

First Name Zafeirakis

Father Name Neoklis

Nationality Greek

Date of birth June 11, 1982

Email [email protected], [email protected]

Webpage www.zafeirakopoulos.info

Education

Title PhD in Technical Sciences (2009-present)

Johannes Kepler University

Department Research Institute for Symbolic Computation (RISC)

Advisor Prof. Peter Paule

Thesis title Linear Diophantine Systems:

Partition Analysis and Polyhedral Geometry

Title Master’s in Computational Science (2006-2008)

University of Athens, Department of Informatics and Telecom

Advisor: Prof. Ioannis Emiris

Thesis title: Study and Benchmarks for Real Root Isolation methods

Grade: 8.72/10

123

124 INDEX

Title Πτυχίον (4-years degree) in Mathematics (2000-2005)

University of Athens, Department of Mathematics

Grade: 7.2/10

Major: Applied Mathematics

Minor: Computational Mathematics

Languages

Greek (native), English (very good), German (basic), French (basic)

Awards

Marshall Plan Scholarship Jan-Jun 2012Research Visit to Prof. Matthias Beck (San Francisco State University),β€œAlgorithmic Solution of Linear Diophantine Systems”

Service and research activities

βˆ™ Reviewer for the conferences International Symposium on Experimental Algo-rithms 2011, Symbolic Numeric Computation 2011, SIAM Conference on Geo-metric and Physical Modeling 2011, International Symposium on Symbolic andAlgebraic Computation 2012 and the International Journal of Combinatorics.

βˆ™ Organizer for the seminars β€œIntroduction to Java - Scientific Programming” (2004,2005) and β€œOpen Source: Object Oriented Programming session” (2004).

βˆ™ Lecturer in the summer school of the Nesin Mathematics Village (2010,2011,2012)

βˆ™ AIM SQuaRE (Nov 2010, 2011, 2012, Research Visit - American Institute of Math-ematics, Palo Alto, β€œPartition Theory and Polyhedral Geometry”

βˆ™ SageDays (July 2010), RISC, β€œBenchmarks”,β€œSpecial Functions”

βˆ™ SageDays 31 (June 2011), Washington, β€œPolyhedral Geometry”, β€œSymbolics”

Publications

1. M. Hemmer, E.P. Tsigaridas, Z. Zafeirakopoulos, I.Z. Emiris, M.I. Karavelas, B.Mourrain, β€œExperimental evaluation and cross-benchmarking of univariate realsolvers”, Proceedings of the 2009 conference on Symbolic numeric computation,45–54, 2009, ACM

2. H. Rahkooy, Z. Zafeirakopoulos, β€œUsing resultants for inductive Grobner basescomputation”, ACM Communications in Computer Algebra, volume 45, number1/2, 135–136, 2011, ACM

INDEX 125

3. C. Koukouvinos, D.E. Simos, Z. Zafeirakopoulos, β€œAn Algebraic Framework forExtending Orthogonal Designs”, ACM Communications in Computer Algebra, vol-ume 45, number 1/2, 123–124, 2011, ACM

4. C. Koukouvinos, V. Pillwein, D.E. Simos, and Z. Zafeirakopoulos, β€œOn the averagecomplexity for the verification of compatible sequences”, Information ProcessingLetters, 111, 17, 825–830, 2011, Elsevier

5. M. Beck, B. Braun, M. Koeppe, C. Savage, Z. Zafeirakopoulos, β€œs-Lecture HallPartitions, Self-Reciprocal Polynomials, and Gorenstein Cones”, arXiv preprintarXiv:1211.0258, 2012


Recommended