parameter shift in gkz-hypergeometric systemsgelev erd. marc smeets eindho v en, 29 februari 2000...
TRANSCRIPT
-
Parameter shift in GKZ-hypergeometric systems
Citation for published version (APA):Smeets, M. J. E. (2000). Parameter shift in GKZ-hypergeometric systems. Technische Universiteit Eindhoven.https://doi.org/10.6100/IR532761
DOI:10.6100/IR532761
Document status and date:Published: 01/01/2000
Document Version:Publisher’s PDF, also known as Version of Record (includes final page, issue and volume numbers)
Please check the document version of this publication:
• A submitted manuscript is the version of the article upon submission and before peer-review. There can beimportant differences between the submitted version and the official published version of record. Peopleinterested in the research are advised to contact the author for the final version of the publication, or visit theDOI to the publisher's website.• The final author version and the galley proof are versions of the publication after peer review.• The final published version features the final layout of the paper including the volume, issue and pagenumbers.Link to publication
General rightsCopyright and moral rights for the publications made accessible in the public portal are retained by the authors and/or other copyright ownersand it is a condition of accessing publications that users recognise and abide by the legal requirements associated with these rights.
• Users may download and print one copy of any publication from the public portal for the purpose of private study or research. • You may not further distribute the material or use it for any profit-making activity or commercial gain • You may freely distribute the URL identifying the publication in the public portal.
If the publication is distributed under the terms of Article 25fa of the Dutch Copyright Act, indicated by the “Taverne” license above, pleasefollow below link for the End User Agreement:www.tue.nl/taverne
Take down policyIf you believe that this document breaches copyright please contact us at:[email protected] details and we will investigate your claim.
Download date: 09. Jul. 2021
https://doi.org/10.6100/IR532761https://doi.org/10.6100/IR532761https://research.tue.nl/en/publications/78f7db2d-c9e9-40e9-9ef9-36e58609187e
-
Parameter Shift in GKZ-HypergeometricSystems
PROEFSCHRIFT
ter verkrijging van de graad van doctor aan de
Technische Universiteit Eindhoven, op gezag van de
Rector Magni�cus, prof.dr. M. Rem, voor een
commissie aangewezen door het College voor
Promoties in het openbaar te verdedigen op
woensdag 10 mei 2000 om 16.00 uur
door
Marcus Johannes Elisabeth Smeets
geboren te Geleen
-
Dit proefschrift is goedgekeurd door de promotoren:
prof.dr. A.M. Cohen
en
prof.dr. A.E. Brouwer
CIP-DATA LIBRARY EINDHOVEN UNIVERSITY OF TECHNOLOGY
Smeets, Marcus J.E.
Parameter shift in GKZ-hypergeometric systems / by Marcus J.E. Smeets. -
Eindhoven: Eindhoven University of Technology, 2000.
Proefschrift. - ISBN 90-386-0761-X
NUGI 811
Subject headings: combinatorial geometry / hypergeometric functions
generating functions / convex polytopes.
AMS Classi�cation: 05A15 / 33C70 / 52B05 / 90C10.
Druk: Universiteitsdrukker Technische Universiteit Eindhoven
-
Voorwoord
Na bijna negen jaar op de Technische Universiteit Eindhoven als student, aio en dio
rondgelopen te hebben is nu bijna het moment aangebroken om als aio afscheid te
nemen. Hoewel ik niet iemand ben die graag ellenlange speeches houdt, wil ik toch
voordat het echt zover is, graag een aantal mensen bedanken, die mij de afgelopen
vier jaar gesteund hebben en daarmee ook een bijdrage hebben geleverd aan de tot-
standkoming van dit proefschrift.
Als eerste richt ik daartoe het woord tot mijn eerste promotor Arjeh Cohen, die ik
wil bedanken voor het gestelde vertrouwen in mij en voor de meest ideale begeleiding,
die een aio zich maar kan wensen. Als wiskundige, maar zeker ook als mens stond
je altijd voor me klaar wanneer ik met vragen of problemen bij je langskwam. Jouw
geduld en bewonderenswaardige enthousiasme hebben mij keer op keer gemotiveerd
om door te zetten, het plezier in de wiskunde te behouden en om uiteindelijk dit
proefschrift af te ronden.
Ook wil ik Hans Sterk bedanken, die de taak van dagelijkse begeleider op zich heeft
genomen. Tijdens de vele sessies die we samen hadden gaf je mij bruikbare adviezen
en kwam je steeds met nieuwe inzichten. In het bijzonder ben ik je dankbaar voor de
hulp bij het voorbereiden van de verdediging.
Natuurlijk mogen in een dankwoord ook mijn ouders niet ontbreken. Door mij
thuis helemaal in de watten te leggen hebben jullie het mogelijk gemaakt dat ik
optimaal aan mijn onderzoek kon werken en daarnaast nog tijd kon besteden aan
de muziek en het verenigingsleven. Want hoewel ik bij jullie woon, zien jullie mij
eigenlijk maar zelden.
Vervolgens wil ik ook de leden van het ensemble The Strings bedanken voor het
plezier dat we samen tijdens de vele concerten en repetities hadden en nog steeds
hebben. Jullie zorgden voor de onmisbare ontspanning en hielden mijn muzikale en
mentale accu op peil.
Tevens bedank ik mijn collega-aio's en wil ik in het bijzonder Sander van Rijnswou
noemen, die een tijd lang mijn kamergenoot is geweest. We hadden vaak lange
gesprekken over zeer uiteenlopende onderwerpen. Verder kwam je steeds met leuke
en minder leuke wiskundige puzzels, die ik zorgvuldig verzameld maar nog lang niet
allemaal opgelost heb. Ook heb je me goed geholpen met computerproblemen, LATEX-
problemen en zelfs met het bewijzen van enkele stellingen.
iii
-
iv
Tenslotte iedereen bedankt, die ik hier niet genoemd heb maar toch op de een of
andere manier een bijdrage aan het ontstaan van dit proefschrift heeft geleverd.
Marc Smeets
Eindhoven, 29 februari 2000
-
Abstract
This thesis is about the study of b-functions, which are used to describe shifts of
parameters in GKZ-hypergeometric systems. A GKZ-hypergeometric system is a set
of partial di�erential equations, depending on two parameters, an integral matrix
A and a complex vector �. It has a formal power series solution, which represents
the set of nonnegative integer solutions of the linear Diophantine equation Au = �.
This solution will be called the generating function. When the �ber of solutions of
the Diophantine equation is �nite, it is possible to construct the generating function
from a given b-function. In turn, the b-function can be computed by Grobner basis
methods.
In many applications one is interested in solving this type of Diophantine equa-
tions. For instance in discrete optimization, where a given cost function has to be
minimized over the solution set.
In this thesis, existing algorithms for computing the b-functions are studied and
new algorithms are given. In some speci�c cases, like the knapsack problem and the
matching problem, explicit formulas for the b-functions are determined. In the case
where the coordinate ring of A is normal, a geometric approach makes it possible to
compute the b-functions. In addition, a geometric criterion is given in order to check
the normality of the coordinate ring of an integral matrix. Finally, a conjecture on
the degree of Graver basis elements by Hosten is corroborated and is proved in some
speci�c cases.
v
-
vi
-
Contents
Voorwoord iii
Abstract v
1 Introduction 1
1.1 GKZ-hypergeometric systems . . . . . . . . . . . . . . . . . . . . . . 4
1.2 Parameter shift . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.3 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.4 Finite case . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2 Algorithms 25
2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.2 Construction of creation operators . . . . . . . . . . . . . . . . . . . . 25
2.3 Construction of b-functions . . . . . . . . . . . . . . . . . . . . . . . . 34
3 Normality 39
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.2 Normality of a matrix . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.3 Criteria for normality . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.4 b-Functions in the normal case . . . . . . . . . . . . . . . . . . . . . . 51
4 Applications in discrete optimization 59
4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
4.2 Knapsack problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
4.3 Transportation problem . . . . . . . . . . . . . . . . . . . . . . . . . 66
4.4 Matchings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
5 Hosten's conjecture 81
5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
5.2 The conjecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
5.3 Other bounds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
5.4 The 1� n-case . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
5.5 Geometrical approach . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
vii
-
viii CONTENTS
5.6 Algebraic approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
5.7 Induction on D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
A List of Maple implementations 99
Bibliography 103
Samenvatting 109
Curriculum Vitae 113
-
Chapter 1
Introduction
GKZ-hypergeometric systems were �rst introduced in 1989 by Gel'fand, Kapranov
and Zelevinskii and for this reason the pre�x GKZ is used. It can be seen as a gen-
eralization of several classical hypergeometric systems, like that of Gau�, Lauricella
and Appell. Much research has been done on �nding solutions of this type of hyper-
geometric systems. The most important result in the theory of GKZ-hypergeometric
systems is about the dimension of the solution space. It states that in the speci�c
case where the columns of A are on an aÆne hyperplane, the dimension of the solu-
tion space is at least the volume of the convex hull of the columns of A. Gel'fand,
Kapranov and Zelevinskii proved it in 1993. Moreover, in the case of equality they
constructed a basis of solutions in terms of triangulations of this convex hull.
In this thesis GKZ-hypergeometric systems are considered as modules over the ring
of di�erential operators, the so-called Weyl algebra. The action of the Weyl algebra
on hypergeometric systems causes a shift of the parameter �. One direction, the
creation process, is the most diÆcult part and will be the main subject in this thesis.
It can be described by the so-called creation operators. Such a creation operator is a
polynomial in the Weyl algebra representing the inverse of an annihilation operator
modulo the hypergeometric system. The existence and construction of the creation
operators can be studied by the b-functions. These polynomials were introduced in
1992 by M. Saito. The main purpose of this thesis is to understand the notion of the
b-functions. In particular, our goals are
1. to �nd new algorithms to construct the b-functions,
2. to �nd explicit formulas for the b-functions.
The motivation for studying the b-functions lies in the fact that, by means of the
creation operators, various solutions of an GKZ-hypergeometric system correspond-
ing to di�erent values of the parameter � can be expressed in terms of each other.
Moreover in the case where A contains only nonnegative integer entries, the so-called
1
-
2 CHAPTER 1. INTRODUCTION
�nite case, this leads to a method for �nding solutions of the GKZ-hypergeometric
system. The hypergeometric solutions found in this way represent the nonnegative
integer solutions FP (�) of the system Au = �. The set FP (�) arises in discrete op-
timization as the set of feasible points of an integer programming problem, on which
a given cost function has to be minimized.
In Chapter 1 we will explain this motivation in more detail. Furthermore, in this
introductory chapter we de�ne GKZ-hypergeometric systems and state some general
results on these hypergeometric systems. Special attention will be paid to the solution
space. In some cases a basis of solutions can be given. Moreover, the b-functions and
the generating function will be introduced and it will be shown how this generating
function corresponds to a simplex of a triangulation of the convex hull of A. Finally,
in the �nite case, we prove that the solution space is one-dimensional and is generated
by the generating function.
In Chapter 2 we focus our attention on algorithms. Several methods to compute
the b-functions and the corresponding creation operators will be derived. These algo-
rithms can roughly be divided into two groups. The �rst type of algorithms describe
a more straightforward strategy and compute the b-functions and the creation opera-
tors simultaneously, while the others focus more on computing the b-functions. These
algorithms mainly use Grobner basis methods.
In Chapter 3 we suppose that the matrix A de�ning the GKZ-hypergeometric
system is normal in the sense that its coordinate ring is a normal ring. In this case,
a geometrical approach makes it possible to construct the b-functions explicitly. In
this construction, the factors of the desired b-function correspond to the facets of the
convex hull of A. Furthermore, we give several criteria for checking the normality of
a matrix and, moreover, a new geometrical criterion is derived.
In Chapter 4 we discuss several applications of GKZ-hypergeometric systems to
discrete optimization. In fact, we will study the b-functions for some speci�c problems
in discrete optimization. For the knapsack problem a recurrence relation on the
set of feasible points FP (�) is derived in order to compute the b-functions and the
creation operators. The matching problem deals with the question to �nd (complete)
matchings in a given graph. By considering the incidence matrix of the graph this
problem can be formulated in terms of GKZ-hypergeometric systems. For several
graphs, like the complete and the complete bipartite graphs, the b-functions will be
computed explicitly, leading to an algorithm that determines the matchings in an
arbitrary graph.
Finally, in Chapter 5 we study a conjecture by Hosten. This conjecture states an
upper bound on the degree of Graver basis elements, which form a basis of the lattice
ker(A) \ Zn, and consequently, this bound also limits the degree of the di�erential
operators generating the GKZ-hypergeometric system. When A contains only one
row, the conjecture will be proved in the following way. Given a Graver basis element
-
3
h, a Hamiltonian path over the lattice points in some polytope will be constructed.
The length of this path corresponds to the degree of h and can be bounded by the
desired upper bound. Another case for which Hosten's conjecture can be proved, is
the case where A is a totally unimodular matrix.
-
4 CHAPTER 1. INTRODUCTION
1.1 GKZ-hypergeometric systems
In this section we discuss the GKZ-hypergeometric systems. These systems are de-
�ned by I. M. Gel'fand, M. M. Kapranov and A. V. Zelevinskii [17] and are also
called A-hypergeometric systems. The GKZ-hypergeometric system is a set of partial
di�erential equations depending on two sets of parameters, a matrix A 2 Zd�n and a
vector � 2 Cd.
Before we de�ne the GKZ-hypergeometric system, we �rst introduce some con-
stants.
� k is a sub�eld of C.
� R is one of the following k-modules: the polynomial ring k[x1; x2; : : : ; xn] or the
ring of formal power series k[[x1; x2; : : : ; xn]].
We will introduce the GKZ-hypergeometric system in three di�erent ways. The
�rst formulation will be in terms of di�erential equations.
De�nition 1.1.1 Let A = (aij) be a matrix in Zd�n with rank(A) = d and let � be a
vector in Cd. The GKZ-hypergeometric system corresponding to A and � is the set
of di�erential equations given by
{�nj=1aijxj@jf = �if for 1 � i � d,
@uf = @vf for all u; v 2 Nn with Au = Av,(1.1)
where the following notation has been used: @j := @=@xj for all 1 � j � n, and
@u := @u11 � � �@unn
for a vector u 2 Nn.
Although the second set of equations in De�nition 1.1 is in�nite, it is always
possible to construct a �nite basis of this set according to the Hilbert Basis Theorem,
see for instance [11].
De�nition 1.1.2 By S� we denote the set of solutions of system (1.1) in R.
In this thesis we will work with an algebraic de�nition of GKZ-hypergeometric sys-
tems, in which they will be seen as left ideals of the Weyl algebra.
The Weyl algebra
De�nition 1.1.3 The Weyl algebra An is de�ned as the associative algebra over k
generated by the operators x1; : : : ; xn, and @1 := @=@xi; : : : ; @n := @=@xn, that is,
An := k[x1; : : : xn; @1; : : : ; @n].
-
1.1. GKZ-HYPERGEOMETRIC SYSTEMS 5
The Weyl algebra is often by denoted by D, indicating that An is isomorphic to
the ring of di�erential operators. Notice that the Weyl algebra is not commutative.
To be more precise, the generators satisfy the relations:
[xi; xj] = 0; [@i; @j] = 0; [@i; xj] = Æij; where [a; b] := ab� ba.
The relations [xi; xj] = 0 and [@i; @j] = 0 are clear and [@i; xj] = Æij follows from
the fact that@ixjf = f + xj@if if i = j and
@ixjf = xj@if if i 6= j; for all f 2 R.
Every element p of the Weyl algebra can be written in the standard form:
p =∑
(u;v)2V
cuvxu@v; (1.2)
where V is a subset of N2n.
When doing computations in the Weyl algebra we often use the Leibniz formula.
Proposition 1.1.4 (Leibniz formula) Let
: k[x1; : : : ; xn; y1; : : : ; yn] ! An
xuyv 7! xu@v
be the natural k-vector space isomorphism. For any two polynomials p; q 2 k[x; y] we
have
(p) (q) =∑
k1;:::;kn�0
1
k1! � � �kn!
(@k1 � � �@knp
@yk11 � � �@yknn
@k1 � � �@knq
@xk11 � � �@xknn
):
Abbreviated notation:
(p) (q) =∑k2Nn
1
k!
(@kp
@yk@kq
@xk
):
Proof. Without loss of generality we may suppose that p = xtyu and q = xvyw, for
t; u; v; w 2 Nn. It has to be proved that
(xtyu) (xvyw) =∑k
1
k!
(xt@kxv
@xkyw@kyu
@yk
):
We have
-
6 CHAPTER 1. INTRODUCTION
(xtyu) (xvyw) =∑k
1
k!
(xt@kxv
@xkyw@kyu
@yk
),
(xt) (yu) (xv) (yw) = (xt)∑k
1
k!
(@kxv
@xk@kyu
@yk
) (yw),
(yu) (xv) =∑k
1
k!
(@kxv
@xk@kyu
@yk
);
where k = (k1; k2; : : : ; kn) runs through Nn.
Since [@i; xj] = 0 for all i 6= j, we can write
@uxv = (@u11 xv1
1 )(@u2
2 xv2
2 ) : : : (@unnxvnn):
From this it follows that the desired equation can be written as follows
n∏j=1
( (yuj) (xvj )) =
n∏j=1
∑k
1
k!
(@kjxj
vj
@xjkj@kjyj
uj
@yjkj
):
Hence we may restrict ourselves to the case where n = 1, that is, it remains to show
that
@uxv =
minfu;vg∑k=0
v(v � 1) � � � (v � k + 1)u(u� 1) � � � (u� k + 1)
k!xv�k@u�k;
for all u; v 2 Nn. This can be done by induction on u and v, combining with the
relation [@; x] = 1.
�
The next proposition presents some useful relations for the elements of the Weyl
algebra An.
Proposition 1.1.5 Put �j := xj@j for all j. In An we have the following equations:
[�i; @j] =
{�@i if i = j
0 if i 6= j,(1.3)
xmj@mj
= �j(�j � 1) � � � (�j �m+ 1); (1.4)
@mjxmj
= (�j + 1)(�j + 2) � � � (�j +m): (1.5)
Proof. We have
[�i; @i] = xi@i@i � @ixi@i
= (@ixi � 1)@i � @i�i
= �@i;
-
1.1. GKZ-HYPERGEOMETRIC SYSTEMS 7
and
[�i; @j] = xi@i@j � @jxi@i
= 0; if i 6= j.
The other two identities can both be proved by the Leibniz formula, but we will
use induction on m. We only treat Equation (1.4). For m = 1 it is clearly true.
Moreover, we have that
xm+1j
@m+1j
= xj(xm
j@mj)@j
= xj
m�1∏l=0
(xj@j � l)@j
= xj@j
m�1∏l=0
(xj@j � l � 1)
= �j(�j � 1) � � � (�j �m):
�
For more details on the Weyl algebra An, we refer to Coutinho [10].
Left ideals in An
We want to consider the GKZ-hypergeometric system as an ideal in An. Since Anis a non-commutative algebra one has to be careful when de�ning ideals in it. We
will work with left ideals, that is, subrings I of An such that f 2 I ) gf 2 I for all
g 2 An.
De�nition 1.1.6 In An we de�ne the di�erential operators ZA;�;i by
ZA;�;i :=
n∑j=1
aij�j � �i for 1 � i � d.
Mostly the subscript A is omitted and the notation Z�;i is used. In vector notation
we have Z� = A� � �.
De�nition 1.1.7 A function f 2 R is said to be annihilated by P 2 An if Pf = 0.
The operators Z�;i impose the following condition on their solutions.
Proposition 1.1.8 If f 2 R is annihilated by Z�;i for all 1 � i � d, then
f(ta1x1; : : : ; tanxn) = t
�f(x1; : : : ; xn) for all t = (t1; : : : ; td) 2 (C�)d.
-
8 CHAPTER 1. INTRODUCTION
Proof. Put yj = tajxj for all 1 � j � n and compute ti
@
@tif(y1; : : : ; yn).
ti@
@tif(y1; : : : ; yn) = ti
∑j
@yj
@ti
@
@yjf(y1; : : : ; yn)
= ti∑j
aijxjtaj�"i
@
@yjf(y1; : : : ; yn)
=∑j
aijyj@
@yjf(y1; : : : ; yn)
= �if(y1; : : : ; yn);
where "i denotes the i-th unit vector.
From this we conclude that f(y1; : : : ; yn) = Citi�i for all i, where Ci is a constant
with respect to ti. This means that f(ta1x1; : : : ; t
anxn) = f(y1; : : : ; yn) = Ct�. By
substituting t = 1 we �nd the constant C = f(x1; : : : ; xn), which completes the proof.
�
Next, we look at the second kind of equation in system (1.1).
De�nition 1.1.9 By IA we denote the ideal in k[@1; : : : ; @n] generated by all binomials
@u � @v, such that Au = Av and u; v 2 Nn. Notation: IA := h@u � @v j Au = Avi.
Since [@i; @j] = 0 for all 1 � i; j � n, the ring k[@1; : : : ; @n] and the ideal IA are
commutative. Moreover, we have that IA is a toric ideal in the usual sense, that is, it
is isomorphic to the kernel of the map k[x1; : : : ; xn]! k[t1; : : : ; td; t�11 ; : : : t
�1d], de�ned
by xj 7! taj . Put L := ker(A) \ Zn, where ker(A) denotes the kernel of A in Rn.
Every vector u 2 Zn can be uniquely written as u = u+ � u�, such that u+; u� 2 Nn
and u+ and u� have disjoint support. With these notations we have
IA = h@u+
� @u�
j u 2 Li:
For more on toric ideals we refer the reader to Fulton [15] or Sturmfels [43].
In terms of ideals the GKZ-hypergeometric system is de�ned in the following way.
De�nition 1.1.10 The GKZ-hypergeometric system �A;� with parameters A and �
is the left ideal in An generated by IA and the operators Z�;i, for 1 � i � d. We have
�A;� := hA� � �; IAi = hZ�; IAi: (1.6)
Again, we mostly omit the subscript A and simply write ��.
In terms of di�erential operators the set of solutions S� is de�ned by the set of all
functions f 2 R that are annihilated by ��, that is, S� = ff 2 R j ��f = 0g.
-
1.1. GKZ-HYPERGEOMETRIC SYSTEMS 9
An-modules
Our �nal de�nition of the GKZ-hypergeometric system is in terms of An-modules.
De�nition 1.1.11 The GKZ-hypergeometric system M� is de�ned by
M� := An=��: (1.7)
The module M� de�nes a morphism of An-modules M� ! R for each f 2 S� in the
following way.
P + �� 7! Pf; P 2 An:
Since, for f 2 S�, P1 � P2 2 �� ) P1f = P2f , this is a well-de�ned map.
The solution space S�
In this subsection we discuss some results on the solution space S� in R = k[[x]]. We
suppose that the columns aj lie on an aÆne hyperplane in Rd. This is equivalent to
saying that
� the all-one vector 1 is in the row span of A, or
� the toric ideal IA is homogeneous.
Under this condition Gel'fand, Kapranov and Zelevinskii found a lower bound on
the dimension of S� in terms of the volume of the convex hull of A.
De�nition 1.1.12 The convex hull of A is the polytope in Rd de�ned by
conv(A) :=
{n∑
j=1
�jaj
∣∣∣∣∣ 0 � �j � 1;n∑
j=1
�j = 1
}:
It is a polytope of dimension d � 1 and will be denoted by Q(A). Let J �
f1; 2; : : : ; ng be such that the columns aj with j 2 J are independent. Such a set will
be called independent. For J we de�ne the simplex �J of Q(A) by the convex hull of
faj j j 2 Jg. If a simplex �J is de�ned by J = fj1; j2; : : : ; jdg, then J is called a base
of A and the normalized volume of �J is given by
vol(�J) := j det(aj1aj2 : : : ajd)j:
Using the simplices we can de�ne a triangulation of Q(A).
De�nition 1.1.13 A triangulation of Q(A) is a collection � of simplices such that
� Q(A) =⋃
J2� �J ,
-
10 CHAPTER 1. INTRODUCTION
� for all �I and �J in �: I \ J is independent and �I \ �J = �I\J 2 � and
� for all �J 2 � : 8independent I�J �I 2 �.
Given a triangulation � of the polytope Q(A), we can compute its normalized
volume by taking the sum of the volumes of the maximal simplices in �. The next
theorem relates the dimension of S� to the normalized volume of Q(A).
Theorem 1.1.14 (GKZ) Suppose that the columns of A lie on an aÆne hyperplane
in Rd. The dimension of S� is at least the (normalized) volume of the polytope Q(A) =
conv(A). Equality holds whenever the ring k[x1; : : : ; xn]=IA is Cohen-Macaulay.
Proof. For a proof we refer to [17] and its correction in [18] and [2]. �
In case of equality Gel'fand, Kapranov and Zelevinskii constructed a basis of S�.
In his thesis De Boo [5] gives a construction of this basis using Stanley-Reisner ideals.
We will state the resulting basis in Theorem 1.1.15. But �rst we need some extra
de�nitions.
For a suÆciently generic vector ! 2 Rn, we can de�ne a triangulation �! of Q(A)
in the following way. A subset J � f1; 2; : : : ; ng de�nes a simplex �J of �! if there
exists a vector c 2 Rd, with the property that
a>jc = !j for j 2 J and
a>jc < !j for j =2 J .
A triangulation � is called regular if � = �! for some ! 2 Rn.
For a vector u 2 kn we de�ne a subcollection (u;�) of the simplices of a given
triangulation � of Q(A) by
(u;�) := f�J 2 � j 9v 2 kn : Av = Au and j =2 J ) vj 2 N for all jg:
Notice that if ; 2 (u;�), then we have that (u;�) = �. Corresponding to � and
a given triangulation � we de�ne the subset �Z(�;�) of kn=L by
�Z(�;�) :=⋃
baseJ2�
�Z(�; J)=L; where
�Z(�; J) := fu 2 knj Au = �; uj 2 Z for all j =2 Jg:
When the components �Z(�; J) are pairwise disjoint for all maximal simplices �Jin �, the vector � is called �-nonresonant.
Now we have all the ingredients to formulate the theorem. The independent solu-
tions of �� correspond to the minimal elements of the simplicial complexes (u;�!),
where u runs through �Z(�;�!) and �! is a regular triangulation of Q(A), such that
� is �!-nonresonant. In the nonresonant case the cardinality of �Z(�;�!) is exactly
vol(Q(A)).
-
1.1. GKZ-HYPERGEOMETRIC SYSTEMS 11
Theorem 1.1.15 Let ! 2 Rn be a generic vector, such that � is �!-nonresonant. A
set of vol(Q(A)) independent solutions of �� is given by
f�u;J(x) j �J is a minimal simplex of (u;�!) and u 2 �Z(�;�!)g;
where
�u;J(x) :=∑
v2u+L;j2J,vj =2N
Cu;vxv; (1.8)
Cu;v :=
∏j2K�(v):vj0
vj!
∏j2K(v)
�(1 + uj)
�(1 + vj);
and
K(v) := fj 2 f1; 2; : : : ; ng j vj =2 Zg;
K�(v) := fj 2 f1; 2; : : : ; ng j vj 2 Zg;
�(z) :=
∫1
0
tz�1e�tdt:
Proof. For a proof see [5]. �
-
12 CHAPTER 1. INTRODUCTION
1.2 Parameter shift
When the GKZ-hypergeometric system and its solution space are considered as An-
modules, we will see that the action of An causes a shift of the parameter �. It turns
out that one way of this parameter shift, the annihilation, is easy. Annihilation can
be realized by right multiplication of An. The other way, the creation, is the most
diÆcult part and is the main subject of this thesis.
The columns of the matrix A are denoted by aj. Notice that with this notation
we have that aij = (aj)i.
Lemma 1.2.1 Let � be in Zd. Then for all 1 � i � d and 1 � j � n we have
Z��aj ;i@j = @jZ�;i.
Proof. In view of Proposition 1.1.5,
Z��aj ;i@j =
n∑k=1
aik�k@j � (�i � aij)@j
=
n∑k=1
aik@j�k � @jaij � @j(�i � aij)
= @jZ�;i:
�
For all � 2 Zd and 1 � j � n put
� �� � @j := hP@j j P 2 ��i (right multiplication in An),
� @jS� := f@jf j f 2 S�g (partial di�erentiation in R).
This leads to the following theorem.
Theorem 1.2.2 (Annihilation) For all u 2 Nn and � 2 Zd we have that
� ���Au � @u � ��,
� @uS� � S��Au.
Proof. The �rst inclusion follows from Lemma 1.2.1 and the fact that IA@j = @jIA for
all 1 � j � n. Let f be in S�. Every P 2 ���Au annihilates @uf , because P@u 2 ��.
This implies that @uS� � S��Au. �
-
1.2. PARAMETER SHIFT 13
According to Theorem 1.2.2 we de�ne a map fj :M��aj !M� by right multipli-
cation by @j. That is, fj := P + ���aj 7! P@j + ��, for all P 2 ���aj . Since
P1 + ���aj = P2 + ���aj , P1 � P2 2 ���aj
) (P1 � P2)@j 2 ��
, P1@j + �� = P2@j + ��;
the map fj is well de�ned. Clearly, fj is also k-linear. Since fj(1) = @j 6= 1, it is not
a ring morphism.
The annihilation process can be visualized by the following commuting diagram.
In the diagram the map fj is also denoted by @j.
M�@j M��aj� �
��@j ���aj� �
S�@j! S��aj
Creation operators
We are interested in inverting the morphism @j. To be more precise, we want to �nd
a di�erential operator Cj(�) 2 An, such that Cj = @�1j
:M� !M��aj . The operator
Cj is called a creation operator . When it exists, it satis�es the relation
���aj � @jCj(�) � ���aj : (1.9)
The existence of the creation operators can be studied by means of so-called b-
functions. These are polynomials in d variables which have been �rst introduced
by Saito [32]. In order to de�ne the b-functions we introduce the variables s1; : : : ; sd,
which commute with xi and @j for all 1 � i; j � n. Thus we have [si; @j] = [xi; @j] = 0.
These variables represent the varying parameter � = (�1; : : : ; �d) of ��. Next, we
consider the algebra An[s1; : : : ; sd], which is generated by x1; : : : ; xn, @1; : : : ; @n and
s1; : : : ; sd. We sometimes use the shorter notation s for (s1; : : : ; sd).
We de�ne the following left ideals.
Ij := hZs;1; Zs;2; : : : ; Zs;d; IA; @ji = h�s; @ji in An[s], (1.10)
Bj := Ij \ k[s] in k[s], for all 1 � j � n. (1.11)
Proposition 1.2.3 For the elimination ideal Bj we have the following results.
� If the columns of A lie on a hyperplane, then the elimination ideal Bj is nonzero.
-
14 CHAPTER 1. INTRODUCTION
� If A normal, then Bj is a principal ideal.
Proof. We refer to [36] for a proof. �
In the normal case of A we will give a construction of a nonzero element of Bjin Section 3.4. This gives an alternative proof of the second statement in Proposi-
tion 1.2.3.
De�nition 1.2.4 A nonzero element of Bj in k[s] is called a b-function with index
j or shortly a b-function. Notation: bj(s).
Notice that we do not require that bj is a generator of the ideal Bj. The following
theorem describes the creation process.
Theorem 1.2.5 (Creation) Let bj(s) be a b-function with index j and let � be in
Zd. If bj(�) 6= 0, then @j : M��aj ! M� is an isomorphism and its inverse @�1j
is
given by a creation operator Cj(x; @; �) 2 An. This creation operator satis�es
� ���aj � @jCj(x; @; �) � ���aj ,
� Cj(x; @; �)@jS� � S�.
Proof. Let f� be in S�. Since bj(s) is an element of Ij, which is de�ned by Equa-
tion (1.10), we can write
bj(s) = qj(x; @; s) + rj(x; @; s)@j; with qj 2 �s and rj 2 An[s].
Considering the action of bj(�) on f�, we get
bj(�)f� = rj(x; @; �)@jf� = rj(x; @; �)f��aj ; (1.12)
for some f��aj 2 S��aj .
If bj(�) 6= 0, we can write
f� =rj(x; @; �)
bj(�)f��aj =: Cj(x; @; �)f��aj : (1.13)
The polynomial Cj(x; @; �) is the required creation operator. �
Theorem 1.2.5 translates the problem of inverting di�erential operators inM� into
the problem of �nding b-functions for a given matrix A.
-
1.3. MOTIVATION 15
1.3 Motivation
In this section we give a motivation for the study the above-mentioned annihilation
and creation process. The argument is that there exists a hypergeometric function in
S�, which represents the nonnegative solutions of a linear Diophantine equation. To
see this, consider the system of equations given by Au = �. We are interested in the
nonnegative integer solutions u of these equations. We de�ne
FP (�) := fu 2 Nn j Au = �g: (1.14)
The name FP (�) is used, because in discrete optimization it is called the set of
feasible points for the integer programming problem
IPA;� : Given ! 2 Rn, �nd u 2 FP (�), such that ! � u is minimal.
In R = k[[x1; : : : ; xn]] we �x the following generating function for the feasible points.
De�nition 1.3.1 The generating function for FP (�) is
�(�; x1; : : : ; xn) :=∑
u2FP (�)
x1u1x2
u2 � � �xnun
u1! � � �un!:
Abbreviated notation:
�(�; x) =∑
u2FP (�)
xu
u!:
Notice that according to the de�nition we have that �(�; x) = 0 whenever FP (�)
is empty. It is clear that �(�; x) represents FP (�). We still must show that �(�; x)
is in the solution space S� of the GKZ-hypergeometric system.
Proposition 1.3.2 A vector u 2 Nn is feasible if and only if the monomial xu is
annihilated by Z�;i for all 1 � i � d.
Proof. Put FP (�i) := fu 2 Nn j
∑jaijuj = �ig. If u 2 FP (�i), then
Z�;ixu =
n∑j=1
aijujxu� �ix
u
= �ixu� �ix
u = 0:
Conversely, if Z�;ixu = 0, then we have (
∑n
j=1 aijuj � �i)xu = 0. This means that∑
aijuj = �i. �
Lemma 1.3.3 Let � be in Zd. Then the action of @j transforms �(�; x) into �(� �
aj; x).
-
16 CHAPTER 1. INTRODUCTION
Proof. For all j 2 f1; : : : ; ng we have that
@j∑
u2FP (�)
xu
u!=
∑u2FP (�);uj�1
ujx1
u1x2u2 � � �xj
uj�1 � � �xnun
u!
=∑
u2FP (�);uj�1
x1u1x2
u2 � � �xjuj�1 � � �xn
un
u1! � � � (uj � 1)! � � �un!
(�)=
∑~u2FP (��aj)
x~u
~u!:
As to (�) observe that, with
~uk =
{uk � 1 if k = j
uk if k 6= j,
we have that
a1~u1 + � � �+ aj~uj + � � �+ an~un = a1u1 + � � �+ ajuj + � � �+ anun � aj = � � aj:
�
Notice that Lemma 1.3.3 is indeed true for all � 2 Zd. Suppose that � =2 NA :=
f∑
n
j=1 �jaj j �j 2 Ng. In this case �(�; x) = �(� � aj; x) = 0 for all j. Clearly
@j0 = 0. Now suppose that � 2 NA, but � � aj =2 NA. In that case uj = 0, for every
feasible point u 2 FP (�). This means that the terms xu=u! for all u 2 FP (�) are
constant with respect to uj, thus @j(∑
u2FP (�)xu
u!) = 0.
Proposition 1.3.4 Let � 2 Zd and let u 2 Nn. Then @u�(�; x) = �(� � Au; x).
Proof. Use Lemma 1.3.3. �
Theorem 1.3.5 The generating function �(�; x) is an GKZ-hypergeometric func-
tion, that is, �(�; x) 2 S�.
Proof. From Proposition 1.3.2 it follows that �(�; x) is annihilated by Z�;i for all
1 � i � d. Let @u � @v be in IA, then Au = Av. By Proposition 1.3.4 we know that
both @u�(�; x) = �(� � Au; x) and @v�(�; x) = �(� � Av; x). Since Au = Av, the
transformed generating functions are equal. �
According to Theorem 1.3.5 we can apply the annihilation and creation process
to �(�; x). By Theorem 1.2.2 we see that @u maps �(�; x) into a solution in S��Au.
But Proposition 1.3.4 tells us that even
@u�(�; x) = �(� � Au; x): (1.15)
-
1.3. MOTIVATION 17
Let us now consider the creation process. Similarly, when applying Theorem 1.2.5
to �(�; x), we see that Cj(x; @; �)@j�(�; x) = �(�; x). Combining this with Proposi-
tion 1.3.4 implies that
Cj(x; @; �)�(� � aj; x) = �(�; x): (1.16)
From this it follows that for a given matrix A and under the assumption that the
required creation operators exist, it is possible to express generating functions having
di�erent values of the parameter � in each other using annihilation and creation.
To be more precise, let � and be in NA. Then
� � 2 ZA :=
{n∑
j=1
�jaj
∣∣∣∣∣�j 2 Z}:
Let u 2 Zn be such that Au = � � and write u = u+ � u�, with both u+ and u�
in Nn. Then we have
�(; x) = Cu+
@u�
�(�; x); (1.17)
where
Cu+
= C1() � � �Cn�1(� � Au� + u+an + an�1) �
Cn(� � Au� + u+an) � � �Cn(� � Au
� + 2an)Cn(� � Au� + an):
We conclude that if FP (�) is known, the above described method computes the
feasible solutions FP () by Equation (1.17).
By Theorem 1.1.15 we know that the minimal elements of a simplicial complex
(u;�) de�ne independent solutions of ��. Now we demonstrate how the generating
function �(�; x) occurs in this basis. To this end we suppose that � 2 NA. Then
there exists a vector u 2 Nn, such that Au = �. For any base J of A it means
that u 2 �Z(�; J), implying that u 2 �Z(�;�) for a given triangulation � of Q(A).
Moreover, since uj 2 N for all 1 � j � n, the empty set is an element of the simplicial
complex (u;�). This implies that (u;�) = � and �J = ; is the minimal simplex
of (u;�).
We conclude that �u;; occurs in the basis and by Equation (1.8) we see that this
function is in fact the generating function:
�u;; =∑
v2(u+L)\Nn
1
v!xv
=∑
v2FP (�)
1
v!xv
= �(�; x):
-
18 CHAPTER 1. INTRODUCTION
1.4 Finite case
In this section we will study the case where � 2 Zd and the integer d � n-matrix
A = (aij) satis�es the following conditions.
� aij 2 N for every 1 � i � d, 1 � j � n.
� rank(A) = d.
� A contains no 0-column.
These restrictions on the matrix A will guarantee �niteness of FP (�). The choice
of � 2 Zd is just a formality. Clearly, FP (�) is empty whenever � =2 Nd. But in the
algorithms that we discuss it may happen that � contains negative coordinates. We
still use the term FP (�) in that case.
Proposition 1.4.1 The set FP (�) is �nite.
Proof. Suppose that FP (�) is not empty and let u 2 FP (�) and j 2 f1; : : : ; ng.
Since A contains no 0-column, there is an index 1 � i � d such that aij > 0. Then
0 � uj � �i=aij. Moreover we have
0 � uj � min
{�i
aij
∣∣∣∣ i = 1; : : : ; d}:
We conclude that
jFP (�)j �∏j
(⌊min
{�i
aij
∣∣∣∣ i = 1; : : : ; d}⌋
+ 1
): (1.18)
�
Since FP (�) is �nite, the corresponding generating function �(�; x) is a polyno-
mial in Q[x1; : : : ; xn].
Proposition 1.4.2 We have �(0; x) = 1.
Proof. Put � = 0. By Equation (1.18) we have that jFP (�)j � 1. Moreover u = 0
is a solution of Au = �. This means that the generating polynomial corresponding
to � = 0 is the constant polynomial 1. �
Now look at Equation (1.17). With � 2 NA � Nd and = 0 we have
@u�(�; x) = 1 and �(�; x) = Cu � 1 for all u 2 FP (�). (1.19)
-
1.4. FINITE CASE 19
We conclude that in the �nite case it is possible to construct FP (�) using the
creation operators, provided that one feasible solution is given. This works as follows.
Let u be a feasible solution. Then construct the path
1 = �(s(1); x)! �(s(2); x)! : : :! �(s(k); x) = �(�; x)
corresponding to
s(1) = 0; s(2) = a1; : : : ; s(u1) = u1a1; : : : ; s
(k) = �;
by computing Cu11 � � �Cunn� 1 =: Cu � 1. This leads to the following algorithm.
Algorithm 1.4.3 (Input: A; �; Output: �(�; x))
(1) Find u in FP (�).
(2) Construct Cj for all j 2 supp(u).
(3) Construct �0 := Cu � 1.
(4) Return the result �(�; x) = �0.
Finding a feasible point can be done by using Grobner bases, see [1] or [11]. In
the �nite case the algorithm is given by
Algorithm 1.4.4 (Input: A; �; Output: u 2 FP (�))
(1) I := hxj � taj j 1 � j � ni in k[t1; : : : ; td; x1; : : : ; xn].
(2) Let < be any term order with ti > xj.
(3) Compute the reduced Grobner basis G of the ideal I with respect to
-
20 CHAPTER 1. INTRODUCTION
A2[s] = k[x; y; @x; @y; s]. It is generated by the operator Zs;1 = x@x+2y@y� s and the
toric ideal IA, generated by @2x� @y. In A2[s] we consider the following left ideals.
I1 = hx@x + 2y@y � s; @2x� @y; @xi;
I2 = hx@x + 2y@y � s; @2x� @y; @yi:
In k[s] we de�ne
B1 = I1 \ k[s];
B2 = I2 \ k[s]:
In Chapter 2 several algorithms are given to compute the b-functions. By applying
these algorithms we �nd the following b-functions.
b1(s) = s = �Zs;1 � 2y(@2x� @y) + (2y@x + x)@x;
b2(s) = s(s� 1) = (�x@x � (s� 1)))Zs;1 +
x2(@2x� @y) + (2xy@x + x
2 + 2y(s� 1))@y:
According to Equation (1.13) the corresponding creation operators are now given by
C1(x; y; @x; @y; s) =1
s(2y@x + x);
C2(x; y; @x; @y; s) =1
s(s� 1)(2xy@x + x
2 + 2y(s� 1)):
These creation operators satisfy the relation
Cj(x; y; @x; @y; s+ aj)�(s; x; y) = �(s + aj; x; y) for j = 1; 2:
Put � = 5. To �nd �(5; x; y) we need one feasible point u in FP (5). We compute u by
Algorithm 1.4.4. The Grobner basis of the ideal hx�t; y�t2i in k[t; x; y], with respect
to the pure lexicographical order with t > x > y, is given by G := ft�x; x2�yg. The
normal form of t5 is xy2, corresponding to u = (1; 2). Then �(5; x; y) = C1C22� 1.
�(2; x; y) = C2(x; y; @x; @y; 2)�(0; x; y)
= (xy@x +1
2x2 + y) � 1
=1
2x2 + y:
�(4; x; y) = C2(x; y; @x; @y; 4)�(2; x; y)
=1
12(2xy@x + x
2 + 6y) � (1
2x2 + y)
=1
24x4 +
1
2x2y +
1
2y2:
-
1.4. FINITE CASE 21
�(5; x; y) = C1(x; y; @x; @y; 5)�(4; x; y)
= (2
5y@x +
1
5x) � (
1
24x4 +
1
2x2y +
1
2y2)
=1
120x5 +
1
6x3y +
1
2xy2:
Notice that we also could determine the generating function by using only C1, for
� = (5; 0) 2 FP (5). In fact, in general we have that (�; 0) 2 FP (�). This means
that we can write
�(�; x; y) = C1(�)C1(� � 1) � � �C1(1) � 1
= (1
�!(2y@x + x)
�) � 1
=
b�=2c∑i=0
1
(� � 2i)!i!x��2iyi:
Consider the generating function (x) =∑
��0 jFP (�)jx�. Since the cardinality
of FP (�) of Equation (1.20) is given by the coeÆcient of x� in
(1 + x + x2 + � � �)(1 + x2 + x4 + � � �) =1
1� x�
1
1� x2;
we have that
(x) =1
1� x�
1
1� x2=∑��0
(b�=2c+ 1)x�:
Comparing (x) with �(�; x; y), we see that (x) counts the number of feasible
points in FP (�), that is, the number of terms in �(�; x).
GKZ-hypergeometric systems
We will now show that in the �nite case the GKZ-hypergeometric system �� is a
natural representation of the system Au = �. Moreover we will prove that in the �nite
case S� is a one-dimensional vector space generated by �(�; x), see Theorem 1.4.8.
By looking at the proof of Proposition 1.3.2 we see that the operators Z�;i represent
the equations (Au)i = �i of the system Au = �. Moreover, we have that
Lemma 1.4.6 A polynomial f 2 k[x1; : : : ; xn] is annihilated by all Z�;i if and only if
f =∑
u2Scux
u, where cu 2 k� and S � FP (�).
-
22 CHAPTER 1. INTRODUCTION
Proof. Let f =∑
u2Scuxu be in k[x1; : : : ; xn], with cu 2 k
� and S � Nn. Suppose
that f is annihilated by Z�;i for all i. By Proposition 1.1.8 we know that∑u
cutu1a1+���+unanxu = f(ta1x1; : : : ; t
anxn)
= t�f(x1; : : : ; xn)
=∑u
cut�xu:
From this it follows that tu1a1+���+unan = t� for all u 2 S, or in other words that
S � FP (�).
The other part follows from Proposition 1.3.2. �
Every subset S of FP (�) leads to an independent solution f =∑
u2Scuxu of ��. For
this reason it is not enough to represent Au = � only by the operators Z�;i. Therefore
we need the operators in IA.
Lemma 1.4.7 Let f =∑
u2Scux
u 2 k[x] with cu 2 k� and S � FP (�). Then f is
annihilated by IA if and only if, for all �; � 2 S, we have c��! = c��!.
Proof. Let � and � be in S, then A� = A�. Since the binomial @� � @� is an element
of IA, we have @�f = @�f . The constant term of @�f is @�(c�x
�) = c��!. Similarly, the
constant term of @�f is c��!. It follows that c��! = c��!.
Now let @v � @w 2 IA. Since @vxu = u!
(u�v)!xu�v, we �nd
@vf =∑u2S
cuu!
(u� v)!xu�v;
@wf =∑�u2S
c�u�u!
(�u� w)!x�u�w:
Suppose that u � v = �u � w. We have Au � Av = A�u � Aw, or equivalently
Au = A�u. We conclude that @vf = @wf if cuu! = c�u�u!. �
From Lemma 1.4.7 we conclude that if a nonzero polynomial f is annihilated both
by the Z�;i's and by IA, that its index set S should be equal to FP (�). One could
say that the toric ideal IA is used to glue the terms of f .
The following proposition tells us how Au = � is represented by ��.
Theorem 1.4.8 The solution space S� of �� in k[x] is one-dimensional if and only
if the set of feasible points FP (�) is not empty. In this case �(�; x) spans the solution
space.
-
1.4. FINITE CASE 23
Proof. If FP (�) 6= ;, then by Lemma 1.4.6 we know that there exists a nonzero
solution f of ��, such that f =∑
u2Scux
u and S � FP (�). We �rst show that
S = FP (�). Let v 2 FP (�) and u 2 S. According to Lemma 1.4.7 we have
cuu! = cvv!. Since cu 6= 0, neither cv equals 0, implying that v 2 S. Moreover, it
follows from Lemma 1.4.7 that the solution space is one-dimensional.
By Theorem 1.3.5 we know that �(�; x) is a nonzero solution of ��. Thus �(�; x)
spans S�. �
Roots of b-functions
In the �nite case we study the creation operators in more detail. Consider once more
Equation (1.12), but now for �(�; x).
bj(�)�(�; x) = rj(x; @; �)�(� � aj; x): (1.21)
Since Equation (1.21) is valid for all � 2 Zd, we distinguish the following cases.
When both � 2 NA and � � aj 2 NA, the generating polynomials �(�; x) and
�(� � aj; x) are nonzero. This leads to a nontrivial equation. If both �(�; x) and
�(� � aj; x) are 0, which is the case when for instance � =2 Nd, then Equation (1.21)
reduces to 0 = 0. The case where �(�; x) = 0 and �(� � aj; x) 6= 0 does not occur.
For, if �(��aj; x) 6= 0, then there exists a feasible point u 2 FP (��aj). The vector
u0 = u+ "j 2 Nn is then a feasible point of FP (�) implying that FP (�) is not empty.
Now suppose that �(�; x) 6= 0 and �(� � aj; x) = 0. This is an interesting case,
because it gives conditions on the roots of the b-function bj.
Proposition 1.4.9 Let j 2 f1; : : : ng and let bj(s) be a b-function with index j. Let
� 2 NA be such that �(� � aj) = 0. Then � is a root of bj.
Proof. If � 2 NA, then �(�; x) 6= 0. By substituting �(�; x) 6= 0 and �(� � aj) = 0
in Equation (1.21) we see that bj(�) = 0 for this �. �
First we try to �nd suÆcient conditions for � 2 NA, such that � � aj =2 NA.
Consider the following lemmas.
Lemma 1.4.10 For � 2 NA and j 2 f1; : : : ; ng, we have uj = 0 for all u 2 FP (�)
if and only if �(� � aj; x) = 0.
Proof. Straightforward from
�(� � aj; x) 6= 0 , � � aj 2 NA
, 9v 2 Nn : � � aj = Av
, 9v 2 Nn : � = A(v + "j)
, 9u 2 FP (�) : uj � 1:
�
-
24 CHAPTER 1. INTRODUCTION
Lemma 1.4.11 Let � 2 NA. If � � aj =2 Nd, then �(� � aj; x) = 0.
Proof. If �(� � aj; x) 6= 0, then � � aj 2 NA � Nd. �
The converse of Lemma 1.4.11 is not true. A counterexample is given by A = (3; 4)
and � = 4 2 NA. We have �(� � a1; x) = 0 and � � a1 2 N.
Proposition 1.4.12 Let � 2 NA. If � � aj =2 Nd, then � is a root of bj.
Proof. It follows from Proposition 1.4.9 and Lemma 1.4.11. �
Corollary 1.4.13 For all 1 � j � n we have that bj(0) = 0.
Proof. We have �(0; x) = 1. Since A contains no 0-column, �(�aj ; x) = 0 for all
1 � j � n. �
From Equation (1.21) we can also �nd some necessary conditions on the roots of
b-functions.
Proposition 1.4.14 Let � 2 NA, �x an index j and let bj be a b-function with index
j. Then � is a root of bj if and only if uj = 0 for all u 2 FP (�).
Proof. If � 2 NA, then �(�; x) 6= 0. By substituting this in Equation (1.21) we
see that bj(�) = 0 if and only if �(� � aj; x) = 0. The proposition follows from
Lemma 1.4.10. �
By Theorem 1.2.5 we know that the b-functions give a suÆcient criterion for
the existence of creation operators. Once we have found a b-function, the proof of
Theorem 1.2.5 gives us a method to construct the corresponding creation operator.
This will be discussed in Chapter 2 in more detail.
-
Chapter 2
Algorithms
2.1 Introduction
In this chapter several new algorithms will be presented that construct the creation
operators and the corresponding b-functions, which are discussed in Chapter 1. To
be more precise, the goal of this chapter is to �nd polynomials in An[s1; : : : ; sd] of the
form
bj(s)� rj(x; @; s)@j 2 �s = hA� � s; IAi; (2.1)
for a given matrix A.
In Section 2.2 we develop algorithms that construct such polynomials for several
types of matrices A. After considering these cases separately, the algorithms will
be generalized to an algorithm that uses Grobner bases computations in the Weyl
algebra An, see Algorithm 2.2.14.
In Section 2.3 we turn our attention to constructing the b-functions, that is, we
want to �nd nonzero polynomials bj(s) in k[s1; : : : ; sd], such that
bj(s) 2 Bj = hA� � s; IA; @ji \ k[s]; (2.2)
for a given matrix A. Although Problem 2.2 is weaker than Problem 2.1, it will
turn out that it is always possible to reconstruct the creation operator from a given
b-function. This will be done by Algorithm 2.3.1.
2.2 Construction of creation operators
First, we turn our attention to the case where A consists of one row.
One row
Consider the matrix A = (a1; a2; : : : ; an) 2 N1�n with 0 < a1 < � � � < an and
gcd(a1; : : : ; an) = 1, representing the equation
25
-
26 CHAPTER 2. ALGORITHMS
a1u1 + a2u2 + � � �+ anun = �; with � 2 N. (2.3)
The �rst assumption on A is without loss of generality. Namely, if ai = aj for
1 � i < j � n, we substitute u := ui + uj in Equation (2.3). Any feasible solution
with u = u0 leads to the solutions
(ui; uj) = (0; u0); (1; u0 � 1); : : : ; (u0; 0) 2 FP (�):
Another reason for this assumption is the fact that b-functions and creation oper-
ators corresponding to equal columns are also equal by themselves.
Proposition 2.2.1 Let A be a matrix in Zd�n. If two columns ai and aj are equal,
then the corresponding b-functions and creation operators are equal.
Proof. The result follows from the fact that in this case @i � @j 2 IA. Let bi(s) be a
b-function with respect to i. We have
bi(s) =
d∑k=1
qkZs;k + p + ri@i
=
d∑k=1
qkZs;k + p + ri(@i � @j) + ri@j
=:
d∑k=1
qkZs;k + p0 + rj@j
= bj(s);
for qk; ri 2 An[s] and p 2 IA. �
The assumption that the coeÆcients are relatively prime also does not harm the
generality. It follows from the two facts that FP (�) is nonempty if and only if
a := gcd(a1; : : : ; an) divides �; and that FP (�) is also the set of solutions of the
equationa1
au+
a2
au+ � � �+
an
au =
�
a:
Moreover, we have the following proposition.
Proposition 2.2.2 Let A 2 Zd�n be a matrix and � be in k�. If bj(s) is a b-function
for A, then the b-function b0jfor �A with index j is given by b0
j(s) := bj(
s
�). The same
holds for the creation operators.
-
2.2. CONSTRUCTION OF CREATION OPERATORS 27
Proof. Suppose that bj(s)� rj(x; @; s)@j 2 �A;s. Then we can write
bj(s)� rj(x; @; s)@j =
d∑i=1
qi(x; @; s)ZA;s;i + p with qi 2 An[s] and p 2 IA ,
bj(s
�)� rj(x; @;
s
�)@j =
d∑i=1
qi(x; @;s
�)ZA; s
�;i + p
=
d∑i=1
1
�qi(x; @;
s
�)Z�A;s;i + p
=:
d∑i=1
q0i(x; @; s)Z�A;s;i + p with q
0i2 An[s] and p 2 I�A.
�We consider the special case where a1 = 1. In this case b1 and C1 can be explicitly
given, because a1 divides every aj and @aj
1 � @j 2 IA for all 1 � j � n.
Lemma 2.2.3 Let A = (a1; a2; : : : ; an) be in N1�n with 0 < a1 < � � � < an and
gcd(a1; : : : ; an) = 1. We have that
s� (x1 + a2x2@a2�11 + � � �+ anxn@
an�11 )@1 2 �s:
Proof. For 1 � i < j � n we have @aj
i�@ai
j2 IA. Also @j�@
aj
1 2 IA for all 2 � j � n.
This means that we can write
x1@1 +
n∑j=2
ajxj@j = x1@1 +
n∑j=2
ajxj@aj
1 +
n∑j=2
ajxj(@j � @aj
1 )
=
(x1 +
n∑j=2
ajxj@aj�11
)@1 +
n∑j=2
ajxj(@j � @aj
1 )
=: r(x; @; s)@1 + q;
with r 2 An[s] and q 2 IA. From this we conclude that
s� r(x; @; s)@1 = �Zs;1 + q 2 �s:
�Proposition 2.2.4 Let A = (a1; a2; : : : ; an) be in N
1�n with 0 < a1 < � � � < an and
gcd(a1; : : : ; an) = 1. The b-function with index 1 is b1(s) = s and the corresponding
creation operator is given by
C1(x; @; s) =1
s(x1 + a2x2@
a2�11 + � � �+ anxn@
an�11 ):
Proof. The proof is an immediate consequence of Lemma 2.2.3. �
-
28 CHAPTER 2. ALGORITHMS
Square matrices
Suppose that d = n. Since we only consider matrices of rank d, the matrix A is non-
singular. It implies that FP (�) contains at most one element, that can be computed
by Cramer's rule. If the set FP (�) is not empty, this feasible point is given by
u =
(detA1(�)
detA;detA2(�)
detA; : : : ;
detAn(�)
detA
): (2.4)
Here Aj(�) denotes the matrix that is obtained by replacing the j-th column of A by
the vector �. From this it follows that the corresponding generating function �(�; x)
is given by
�(�; x) =
{1
(A�1�)!xA
�1� if A�1� 2 Nn,
0 otherwise.(2.5)
The next lemma implies that in this case the creation operators can be explicitly
given. In the proof of Lemma 2.2.5 we will use the notation Aij, denoting the matrix
that is obtained by removing the i-th row and j-th column of A.
Lemma 2.2.5 Let A 2 Zn�n be a nonsingular matrix. For all 1 � j � n we have
that
detAj(s)� detA � xj@j 2 �s:
Proof. Consider the ideal �s in An[s1; : : : ; sn] generated by �s = hZs;1; : : : ; Zs;n; IAi.
Since kerA = f0g, also the toric ideal IA is zero. It means that we should express
detAj(s)� detA � xj@j in terms of the operators Zs;1; : : : ; Zs;n. It follows from
detAj(s) = �(detAj(a1)x1@1 + � � �+ detAj(an)xn@n) + detAj(s) +
detA � xj@j
= (�1)j detA1jZs;1 + (�1)j+1 detA2jZs;2 + � � �+
(�1)j+n�1 detAnjZs;n + detA � xj@j:
�
Proposition 2.2.6 Let A 2 Zn�n be a nonsingular matrix. The b-function bj(s) is
given by detAj(s) and the j-th creation operator is given by
Cj(x; @; s) =detA
detAj(s)xj:
Proof. Immediate from Proposition 2.2.5. �
-
2.2. CONSTRUCTION OF CREATION OPERATORS 29
Let us check that the generating function �(�; x) from Equation (2.5) can also
be constructed by the creation operators. Although A =2 Nn�n, we still can use
Equation (1.19) to compute �(�; x), because �(0; x) = 1. We have �(�; x) = Cu � 1,
where u is given by Equation (2.4).
Writing out Cu gives Cu11 Cu2
2 � � �Cunn, where
Cuj
j= Cj(x; @; ujaj +
∑k>j
ukak) � � �Cj(x; @; 2aj +∑k>j
ukak) �
Cj(x; @; aj +∑k>j
ukak)
=(detA)uj
detAj(ujaj) � � �detAk(2aj) detAj(aj)xuj
j
=1
uj!xuj
j:
Indeed, we have that �(�; x) = Cu11 Cu2
2 � � �Cunn� 1 = 1
u!xu. Notice that in this
case the creation operators are in fact useless, because the feasible point computed
by these creation operators is also part of the input of Algorithm 1.4.3 in order to
compute that feasible point.
Example 2.2.7 Consider the matrix
A =
(1 2
2 1
):
The GKZ-hypergeometric system is given by
�s = hx@x + 2y@y � s1; 2x@x + y@y � s2i:
By Proposition 2.2.5 we see that the b-functions are given by
b1(s) = det(A1(s)) = s1 � 2s2;
b2(s) = det(A2(s)) = s2 � 2s1:
Since we can write
s1 � 2s2 = �Zs;1 + 2Zs;2 � 3x@x and s2 � 2s1 = 2Zs;1 � Zs;2 � 3y@y;
the corresponding creation operators are given by
C1(x; y; s; @) =3
2s2 � s1x; C2(x; y; s; @) =
3
2s1 � s2y:
-
30 CHAPTER 2. ALGORITHMS
One-dimensional kernel
When A is a d� (d + 1)-matrix with rank(A) = d, its kernel is one-dimensional. In
the case where ker(A) is one-dimensional, the b-functions can be computed by using
Gaussian elimination and some extra substitutions. We will describe how this works
in terms of the creation operators. Moreover when A is a d � (d + 1)-matrix, the
b-functions can be explicitly given. This is stated in Theorem 2.3.4.
First we only suppose that the kernel of the matrix A has dimension one. We
have the following proposition.
Proposition 2.2.8 If the kernel of A is one-dimensional, then the toric ideal IA in
k[@1; : : : ; @n] is principal.
Proof. Suppose that ker(A) \ Zn is generated by the vector h 2 Zn. Then fhg is
called the Hilbert basis of ker(A). For a de�nition of the Hilbert basis we refer to
De�nition 5.2.1. The coordinates of h are relatively prime. Let u; v 2 Nn be such
that @u � @v 2 IA. De�ne c = (c1; : : : ; cn) 2 Nn by cj = min(uj; vj) for 1 � j � n.
Then
@u � @v = @c(@u0
� @v0
);
such that the supports of u0 and v0 are disjoint. Since u0 � v0 2 ker(A), we can write
u0 � v0 = �h for some �. Since h is primitive, � is integral. If � is positive, we write
u0 = �h+ and v0 = �h�. Thus
@u0
� @v0
= @�h+
� @�h�
;
which has @h+
�@h�
as a factor. If � is negative, we write u0 = ��h� and v0 = ��h+,
and show in a similar way that @h+
� @h�
is a factor of @u0
� @v0
. We conclude that
IA is generated by @h+ � @h
�
. �
A generator of IA will play a central role in our algorithm. Using this generator,
we will construct an operator in �s of the form bj(s)�rj(x; @; s)@j , such that bj 2 k[s]
and rj 2 An[s]. The algorithm looks as follows.
Algorithm 2.2.9 (Input: A with dim(ker(A)) = 1 and index j;
Output: bj � rj@j 2 �s.)
(1) Compute the Hilbert basis HA := fhg, corresponding to the generator
@h+
� @h�
of IA.
(2) if j =2 supp(h) then do (6) else do (3),(4) and (5).
(3) Write h = h+ � h� =: u� v, such that j 2 supp(v).
(4) Apply Gaussian elimination on A� = s and write
�i = fi + gi�j with fi 2 k[s], gi 2 k, for all i 2 supp(u).
-
2.2. CONSTRUCTION OF CREATION OPERATORS 31
(5) Substitute �i = fi + gi�j in
n∏i=1
�i(�i � 1) � � � (�i � ui + 1)� xu@v:
Expand and return the result.
(6) Choose k 2 supp(h). Apply Gaussian elimination on A� = s, such that �k is not
eliminated and return �j � bj(s).
For proving the correctness of this algorithm, we need the following lemma.
Lemma 2.2.10 Let u; v 2 Nn be such that u� v 2 ker(A)\Zn. In the Weyl algebra
we haven∏i=1
�i(�i � 1) � � � (�i � ui + 1)� xu@v 2 IA:
Proof. According to Proposition 1.1.5 we can write
xu@u = xu11 @u1
1 � xu2
2 @u2
2 � � �xunn@unn
=
n∏i=1
�i(�i � 1) � � � (�i � ui + 1):
This implies that
n∏i=1
�i(�i � 1) � � � (�i � ui + 1)� xu@v = xu(@u � @v);
which is clearly in IA. �
Proof. (of correctness of Algorithm 2.2.9.) We must show that the operator which is
computed in Step 5 is an element of �s and has the required form bj(s)�rj(x; @; s)@j.
From Lemma 2.2.10 it follows that this operator is an element of �s. Since the kernel
is one-dimensional, we can perform Step 4 and write �i = fi+gi�j for all i 2 supp(u).
After substituting �i in Step 5, we get an element of the form
bj(s) + qj�j � xu@v = bj(s)� (x
u@v�"j � qjxj)@j
=: bj(s)� rj@j; for qj 2 An[s].
This completes the proof. �
Example 2.2.11 Let A = ( a b ) 2 N1�2 be such that 0 < a < b and gcd(a; b) = 1.
By Algorithm 2.2.9 we �nd the following b-functions.
b1(s) = s(s� b) � � � (s� (a� 1)b)
b2(s) = s(s� a) � � � (s� (b� 1)a):
-
32 CHAPTER 2. ALGORITHMS
Example 2.2.12 To demonstrate that Algorithm 2.2.9 not only works for matrices
of size d� (d+1), but also for other matrices of which the kernel is one-dimensional,
we consider the matrix
A =
1 1 0 0
0 0 1 1
1 0 1 0
0 1 0 1
:
This matrix de�nes the transportation problem with & = � = 2. For more details on
the transportation problem we refer to Chapter 4. The kernel of A has dimension one
and is generated by the vector h = (�1; 1; 1;�1). Thus IA is generated by @1@4�@2@3.
We will compute b1 and r1. We put u = (0; 1; 1; 0) and v = (1; 0; 0; 1), such that we
have h = u� v. Next we apply Algorithm 2.2.9. We go through the following steps.
� Consider �2�3 � x2x3@1@4 2 �s.
� By Gaussian elimination we �nd
�2 = s1 � �1;
�3 = s3 � �1:
� Substituting this in the �rst equation yields
s1s3 � ((s1 + s3 � 1)x1 � x21@1 � x2x3@4)@1:
We conclude that b1 = s1s3 and r1 = (s1 + s3 � 1)x1 � x21@1 � x2x3@4.
General case
Suppose that the dimension of the kernel of A is at least two. We try to generalize
Algorithm 2.2.9 in the following way.
Find an element u � v in the kernel of A, such that j 2 supp(v). According to
Lemma 2.2.10 we know that
n∏i=1
�i(�i � 1) � � � (�i � ui + 1)� xu@v 2 �s:
Next, substitute �i = fi + gi�j in this expression.
But in this case it is not possible anymore to compute �i = fi + gi�j only by
applying Gaussian elimination on A� = s. For, if we do that, we will �nd �i =
fi +∑
p
k=1 gik�ik , where p = dim(ker(A)). We conclude that it is not possible to
generalize Algorithm 2.2.9 in this way.
We will use Grobner bases to solve Problem 2.1 in the general case. First consider
the ideal IA. We need a �nite set of generators for IA. There are several algorithms
that compute a Grobner basis of IA, which can be used. We mention Algorithm 2.2.13.
-
2.2. CONSTRUCTION OF CREATION OPERATORS 33
Algorithm 2.2.13 (Input: A; Output: a basis ff1; : : : ; fkg of IA.)
(1) R := k[t0; : : : ; td; @1; : : : ; @n].
(2) Compute the Grobner basis G of ht0t1 � � � td � 1; @1ta�
1 � ta+1 ; : : : ; @nt
a�
n � ta+n i in
R with respect to any term order
-
34 CHAPTER 2. ALGORITHMS
2.3 Construction of b-functions
Suppose that for a given matrix A and index j we already know a b-function bj(s).
We claim that we can construct a corresponding creation operator. In fact, it is even
possible to construct a polynomial rj(x; @) 2 An such that bj(s)� rj(x; @)@j 2 �s.
Observe that since∑
n
k=1 aik�k � si 2 �s for all 1 � i � d, we also have that
bj(s1; : : : ; sd)� bj
(n∑
k=1
a1k�k; : : : ;
n∑k=1
adk�k
)2 �s:
From this it follows that it suÆces to �nd an element rj(x; @) in An, such that
bj
(n∑
k=1
a1k�k; : : : ;
n∑k=1
adk�k
)� rj(x; @)@j 2 IA � �s:
This can be realized by computing a Grobner basis of the toric ideal IA in the
commutative ring k[@1; : : : ; @n] and leads to the following algorithm.
Algorithm 2.3.1 (Input: b-function with index j; Output: rj 2 An, such that
rj�(s� aj; x) = bj(s)�(s; x).)
(1) Let < be any reverse lexicographic term order on k[x1; : : : ; xn; @1; : : : ; @n] with @jas lowest variable.
(2) Compute the reduced Grobner basis G of IA with respect to
-
2.3. CONSTRUCTION OF B-FUNCTIONS 35
Notice that from Algorithm 2.3.1 it follows that there always exists a creation
operator Cj of the form
Cj(x; @; s) =rj(x; @)
bj(s); with rj(x; @) 2 An.
From Algorithm 2.3.1 it also follows that we may focus our research on �nding
the b-functions. In the next chapter b-functions will be determined for the case where
the columns of A lie on a hyperplane. In Chapter 4 we will study the b-functions for
several problems in discrete optimization.
Some results on factors and orders
Consider once more Proposition 1.4.12. For d = 1 we can use this proposition to
determine linear factors of a b-function.
Proposition 2.3.2 Let A = (a1; a2; : : : ; an) be a matrix, such that a1 < a2 < � � � <
an. If 0 � � < aj such that � 2 NA, then s � � is a linear factor of bj(s) for all
1 � j � n.
Proof. It follows immediately from Proposition 1.4.12, combining with the fact that
bj is a polynomial in only one variable. �
Corollary 2.3.3 Let A = (a1; a2; : : : ; an) be a matrix, such that a1 < a2 < � � � < an.
� All b-functions have a factor s.
� If a1 = 1, then∏aj�1
k=0 (s� k)jbj(s) for all 1 � j � n.
According to Corollary 2.3.3 we conjecture that for a matrix A = (1; a2; : : : ; an)
and an index j the b-function with index j is given by bj(s) =∏aj�1
k=0 (s � k). By
applying Algorithm 2.3.1 to a polynomial of this form we can check whether it is
indeed a b-function.
This strategy can not be used when d > 1. To see this, consider Example 2.2.7.
For this matrix we have that 0 2 NA and 0� aj =2 Nd. Although 0 is a root of both
b-functions, there are no factors s1 or s2.
Now suppose that A is an integral d � (d + 1)-matrix with rank d. By applying
Algorithm 2.2.9 the b-functions can be explicitly computed.
Theorem 2.3.4 Let A be a d� (d+ 1)-matrix with rank d. Suppose that the Hilbert
basis of A is given by fhg. Write h = u � v, such that the supports of u and v are
disjoint. For all 1 � j � n put Aj = (a1 : : : âj : : : ad+1), that is, the matrix obtained
by removing the column aj of A. The b-function with respect to j is given by
bj(s) =
{ ∏n
i=1(A�1js)i � � � ((A
�1js)i � ui + 1) if j 2 supp(v),
(A�1ks)j if j =2 supp(h); k 2 supp(h).
-
36 CHAPTER 2. ALGORITHMS
Proof. Apply Algorithm 2.2.9 on A. First suppose that j 2 supp(v). In Step 3
we �nd fi = (A�1js)i 2 k[s] and gi = �(A
�1jaj)i 2 k. If we substitute this in the
expression in Step 4 and expand it, we �nd that the j-th b-function is given by
n∏i=1
fi(fi � 1) � � � (fi � ui + 1) =
n∏i=1
(A�1js)i � � � ((A
�1js)i � ui + 1): (2.6)
Now suppose that j =2 supp(h). Since the kernel of A is one-dimensional, there
exists an index k 2 supp(h). Multiply both sides of A� = s by (Ak)�1. Denote the
j-th row of the product matrix by c. We have ckhk + hj = 0. Since hj = 0, the entry
ck should be 0. This means that the j-th equation reads �j = ((Ak)�1s)j. �
Remark 2.3.5 The notation in Equation (2.6) is somewhat sloppy. The index i in
the product runs from 1 up to n = d+1 in the formula. But strictly speaking we �rst
remove index i = j and then renumber the index set into f1; : : : ; dg.
Proposition 2.3.6 Suppose that the kernel of A is one-dimensional and that IA is
generated by @u � @v, for some u; v in Nn. Let j be in supp(v). Let ordsi(bj) denote
the maximal exponent of si in bj(s). Then
ordsj(bj) �
n∑k=1
uk:
Proof. Apply Algorithm 2.2.9. In Step 2 we have ordsk(fi) � 1 for all sk. After
substituting this in Step 3, we see that the b-function is given by∏
n
i=1 fi(fi�1) � � � (fi�
ui + 1). Thus ordfi(bj) = ui. Combining this we �nd ordsi(bj) �∑
n
k=1 uk. �
Example 2.3.7 Let A be the matrix
A =
(3 1 0
0 2 3
):
The Hilbert Basis of A is f(1;�3; 2)g. Put u = (1; 0; 2) and v = (0; 3; 0). We have
A1 =
(1 0
2 3
); A2 =
(3 0
0 3
); A3 =
(3 1
0 2
):
By Theorem 2.3.4 we �nd the following b-functions:
b1 = s1(s1 � 1)(s1 � 2);
b2 = s1s2(s2 � 3);
b3 = s2(s2 � 3)(s2 � 6):
-
2.3. CONSTRUCTION OF B-FUNCTIONS 37
In order to �nd the corresponding creation operators we apply both Algorithm 2.2.9
and Algorithm 2.3.1. For j = 1 we �nd by Algorithm 2.2.9:
s1(s1 � 1)(s1 � 2)� (9s21 � 27s1�1 + 27�
21 � 18s1 + 27�1 + 6)�1 � x
32@
23@1 2 �s:
We conclude that
r1 = 27�21x1 + (27� 27s1)�1x1 + (9s
21 � 18s1 + 6)x1 + x
32@
23 :
Applying Algorithm 2.3.1 gives us the following. Let < be the reverse lexicographic
order on k[x1; x2; x3; @1; @2; @3], such that @1 < @3 < @2 < x3 < x2 < x1. The reduced
Grobner basis of IA with respect to < is given by G = f@32 � @1@
23g. Reducing the
polynomial b1(3�1 + �2; 2�2 + 3�3) modulo G leads to
r01 =2
9x1@1 +
2
3x1x2@1@2 +
1
3x1x
22@1@
22 +
1
27x32@1@
23 + 2x
21@
21 + x
21x2@
21@2 + x
31@
31 :
From this we conclude that
r1 =2
9x1 +
2
3x1x2@2 +
1
3x1x
22@
22 +
1
27x32@
23 + 2x
21@1 + x
21x2@1@2 + x
31@
21 :
-
38 CHAPTER 2. ALGORITHMS
-
Chapter 3
Normality
3.1 Introduction
In this chapter we assume that the columns of A lie on an aÆne hyperplane in Rd.
Under this extra condition a geometrical construction of the b-functions can be given
when A is a normal matrix. Here we mean normality in the sense of De�nition 3.2.1
below. This construction is based on a decomposition of the elimination ideals Bj,
where the components of this decomposition correspond to the facets of the convex
hull of A. In turn, these facets give rise to (linear) factors of the b-function.
In Section 3.2 we will study the normality of a matrix in more detail. We give
criteria for checking the normality of a matrix in Section 3.3. Furthermore, in The-
orem 3.3.3 and Corollary 3.3.5 new criteria are stated. Finally, in Section 3.4, we
consider the case where A is normal and give a construction the b-functions.
3.2 Normality of a matrix
Let us �rst give the combinatorial de�nition of normality of a matrix.
De�nition 3.2.1 Similar to NA and ZA we de�ne
R�0A :=
{n∑
j=1
�jaj
∣∣∣∣∣�j 2 R; �j � 0}:
An integer matrix A is called normal if
NA = ZA \ R�0A: (3.1)
The nontrivial inclusion in the de�nition of normality is NA � ZA \ R�0A. We
can also express normality in geometrical terms. To see this, let N be the lattice ZA.
The cone R�0A in Rd generated by the columns of A will be denoted by Pos(A) and
39
-
40 CHAPTER 3. NORMALITY
the additive semigroup NA by S. Then A is normal if and only if S = N \ Pos(A).
Notice that this de�nition of normality coincides with the normality of toric varieties
and their corresponding coordinate rings.
Theorem 3.2.2 [43] The matrix A is normal in the sense of De�nition 3.2.1 if and
only if its coordinate ring k[ta1 ; : : : ; tan ] is normal, that is, if and only if the variety
XA := Spec(k[x]=IA) is normal.
For more details on the normality of rings we refer to [15], [29] or [45]. Now let
us present some examples of matrices to clarify the notion of normality.
Example 3.2.3 Consider the matrix
A =
(3 2 1 0
0 1 2 3
):
�
�
x
y
� �
�
�
������
�
a1
a2
a3
a4
Figure 3.1: The columns of A.
We claim that this matrix is normal in the sense of De�nition 3.2.1. We will prove
this in two di�erent ways. The �rst way is by induction and the second proof is a
more straightforward one.
Proof 1. Consider the lattice N = ZA. It consists of all integer points on the lines
x+ y = 3k in R2, with k 2 Z. To see this, notice that N = Z(3; 0)>+Z(1;�1)>. For
a �xed integer k the line (3k; 0)>+ l(1;�1)> has equation x+ y = 3k. If we intersect
N with Pos(A), we obtain all nonnegative integer points on the lines x+ y = 3k, for
k 2 N. We prove by induction on k that all these points are in NA. For k = 0, clearly
(0; 0)> 2 NA. If k = 1, then the nonnegative integral points on x+ y = 3 are exactly
the columns of A.
Now suppose that for some k all points on x+y = 3k are in the N-span of A. The
points on the plane u1 + u2 = 3k + 3 are given by
(0; 3k + 3)>; (1; 3k + 2)>; : : : ; (3k + 2; 1)>; (3k + 3; 0)>:
We have that
(0; 3k + 3)> = (0; 3k)> + (0; 3)>
(1; 3k + 2)> = (0; 3k)> + (1; 2)>
(2; 3k + 1)> = (0; 3k)> + (2; 1)>
(3 + j; 3k � j)> = (j; 3k � j)> + (3; 0)> for 0 � j � 3k.
-
3.2. NORMALITY OF A MATRIX 41
Thus every integral point on x+ y = 3k + 3 can be written as the sum of a point
on x+ y = 3k and a column of A. Using the induction hypothesis, we conclude that
these points on x + y = 3k + 3 are in the N-span of A.
Proof 2. Let � be a vector in R2. The solution set of Au = � in R4 is given byu1u2u3u4
=
�1=3
0
0
�2=3
+ �
�2=3
1
0
�1=3
+ �
�1=3
0
1
�2=3
; �; � 2 R:
Suppose that � 2 ZA \ R�0A. This implies that there exist �; � in Z, such that{�1 � 2�� � = 0 (mod 3)
�2 � �� 2� = 0 (mod 3):(3.2)
and that there also exist �; � in R�0, such that{2� + � � �1� + 2� = �2:
(3.3)
The matrix A is normal if there exist �; � in N satisfying the Equations 3.2 and 3.3,
where �; � is substituted by �, and �; � is substituted by �. If �1 = 0 (mod 3), then
by Equation (3.2) we have
2�+ � = 0 (mod 3), �+ 2� = 0 (mod 3):
Thus �2 should also be 0 modulo 3. Since � � 0 and � � 0 we use Equation (3.3)
to see that �1 � 0 and �2 � 0. By similar reasonings we can distinguish the following
three cases:
Case 1 :
�1 = 0 (mod 3)
�2 = 0 (mod 3)
�i � 0:
Case 2 :
�1 = 1 (mod 3)
�2 = 2 (mod 3)
�i � 0:
Case 3 :
�1 = 2 (mod 3)
�2 = 1 (mod 3)
�i � 0:
In Case 1 we can take � = 0 and � = 0, in Case 2 � = 0; � = 1 and in Case 3
� = 1; � = 0 satisfy. From this we conclude that � 2 NA. This completes the proof
for the normality of A.
-
42 CHAPTER 3. NORMALITY
�
�
x
y
� �
�
�
������
�
a1
a2
a3
Figure 3.2: The columns of B.
Example 3.2.4 Now let us give an example of a matrix which is not normal. Put
B =
(3 2 0
0 1 3
):
To see that this matrix is not normal, consider the vector(1
2
)= (1� 2�)
(3
0
)+ (�1 + 3�)
(2
1
)+ (1� �)
(0
3
): (3.4)
If we take for � the values 0 and 1=2, we see that the vector (1; 2)> is both in the
Z-span and in the R�0-span of the columns of B, respectively. But there is no � such
that the coeÆcients in Equation (3.4) become nonnegative integers. Thus (1; 2)> is
not in NB. This shows that B is not normal.
3.3 Criteria for normality
In this section we discuss several criteria for checking the normality of a given matrix.
To make a geometric approach possible, we suppose that the columns a1; : : : ; an of A
lie on an aÆne hyperplane in Rd. That means that there exist integers c; c1; : : : ; cdwith c 6= 0 and gcd(c1; : : : ; cd) = 1, such that
∑d
i=1 ciaij = c, for all 1 � j � n. Notice
that under this restriction on the matrix A all feasible points in FP (�) have the same
degree. That is, juj :=∑ui is constant for all u 2 FP (�). It means that for every
two feasible points u and v the number of multiplications in Cu and Cv are equal.
The constant is called the degree of �.
By P (A) we denote the convex hull in Rd of the columns of A and the vector 0. We
recall that Q(A) denotes the convex hull of the vectors a1; : : : ; an in Rd. Notation:
P (A) := conv(A; 0) and Q(A) := conv(A). So P (A) is a pyramid with Q(A) as
base. Every facet � of P (A) spans a hyperplane in Rd. We de�ne F� as the linear
form for this hyperplane, such that the coeÆcients are integers, relatively prime, and
F�(u) � 0 for all u 2 Pos(A). According to the de�nition of these linear forms we
have
Pos(A) =⋂�
fu 2 Rd j F�(u) � 0g: (3.5)
-
3.3. CRITERIA FOR NORMALITY 43
We �rst consider the case where the rank of A is 1.
Rank 1
In this case we have the following propositions.
Proposition 3.3.1 Let A = ( a1 � � � an ) be a 1 � n matrix with positive integral
entries. The matrix A is normal if and only if there exists an index j such that
aj = gcd(a1; : : : ; an).
Proof. Put a = gcd(a1; : : : ; an). Suppose that ai 6= a for all i. By the properties of
the greatest common divisor we know that a 2 ZA. We also have that a = (a=a1)a1 2
R�0A. But a is no element of NA, because a = gcd(aj) < ai. Hence A is not normal.
Now suppose that there is an aj equal to a. Then ZA = haji. Thus an element
b 2 ZA \ R�0A can be written as b = �aj, with � 2 N. Hence A is normal. �
This result can be generalized as follows.
Proposition 3.3.2 Let A be a d�n matrix with rank 1. The matrix is normal if and
only if the vector (gcd(a1j); gcd(a2j); : : : ; gcd(adj))>, with gcd(aij) := gcd(ai1; : : : ; ain),
is a column of A.
Proof. Suppose that a1 = (gcd(a1j); gcd(a2j); : : : ; gcd(adj))>. Every column aj of A
can be written as aj = �ja1, with �j 2 N. Let b be in ZA \R�0A. We can write b =∑j�j�ja1 =
∑j�j�ja1, with �j 2 Z and �j 2 R�0. But then
∑�j�j =
∑�j�j = c,
with c 2 N. Indeed, b = ca1 in NA.
The other inclusion is clear. �
Rank 2
Let A be a 2�n matrix of rank 2. We have supposed that the columns a1; : : : ; an 2 N2
are on a line that is not passing through 0. To be more precise, the columns are
supposed to be on a line c1u1+ c2u2 = c, where c1; c2 and c 6= 0 are integers such that
gcd(c1; c2) = 1. The facets of P (A) are given by �1;�2, and Q(A), with corresponding
linear forms F�1 ; F�2, and FQ = c1u1 + c2u2, respectively. We assume that �1 and �2are chosen in such a way that a1 2 �1 and an 2 �2. The following theorem gives a
criterion for the normality of a 2� n-matrix.
Theorem 3.3.3 Let A 2 N2�n be such that its columns lie on the line c1u1+c2u2 = c.
The matrix A is normal if and only if P (A) \ ZA = f0; a1; : : : ; ang.
-
44 CHAPTER 3. NORMALITY
Proof. Suppose that A is normal. Let � be in P (A)\ZA. Since P (A) is a subset of
Pos(A), normality implies that � 2 NA. The vector � also satis�es 0 � FQ(�) � c.
Write � =∑
n
j=1 �jaj, with �j 2 N.
Using the linearity of FQ we have
0 � FQ
(∑�jaj
)� c; �j 2 N,
0 �∑
�jc � c; �j 2 N,
0 �∑
�j � 1; �j 2 N:
This is only possible for � = 0 or � = aj for some j. Since clearly f0; a1; : : : ; ang is a
subset of P (A) \ ZA, we conclude that P (A) \ ZA = f0; a1; : : : ; ang.
For the converse assume that P (A) \ ZA = f0; a1; : : : ; ang. Let � be in Pos(A) \
ZA. We must show that � 2 NA. Since FQ(�) is integral (actually a multiple of
c), we can use induction on FQ(�) (or on FQ(�)=c). If 0 � FQ(�) � c then � is an
element of the polytope P (A). Our assumption implies that � 2 f0; a1; : : : ; ang and
clearly � 2 NA.
Suppose that FQ(�) � c. We claim that there exists a column ai such that
� � ai 2 Pos(A) \ ZA; or equivalently, that (3.6)
F�j (ai) � F�j (�) for all j. (3.7)
Moreover, we claim that ai = a1 or ai = an satis�es property (3.7). Since � 2
Pos(A) we already know that F�1(�) � 0 = F�1(a1) and F�2(�) � 0 = F�2(an). To
prove the claim we suppose the contrary. This means that we suppose that F�2(a1) >
F�2(�) and F�1(an) > F�1(�). In other words, � lies in the cone de�ned by all u
with F�2(u) < F�2(a1) and F�1(u) < F�1(an). Since F�1(an) = F�1(a1 + an) and
F�2(a1) = F�2(a1 + an), this cone has its origin in a1 + an. But then we also should
have that FQ(�) < FQ(a1 + an) = 2c.
Put � 0 := a1 + an � �. Notice that �0 is the reection of � through the point
1=2(a1 + a2). Clearly, �0 is in the lattice ZA. Moreover, since
FQ(�0) = FQ(a1 + an � �) = 2c� FQ(�);