linear diophantine systems: partition analysis and

125
UNIVERSIT ยจ AT LINZ JOHANNES KEPLER JKU Technisch-Naturwissenschaftliche Fakultยจ at 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

Upload: others

Post on 18-Dec-2021

2 views

Category:

Documents


0 download

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