parameter shift in gkz-hypergeometric systemsgelev erd. marc smeets eindho v en, 29 februari 2000...

124
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 be important differences between the submitted version and the official published version of record. People interested in the research are advised to contact the author for the final version of the publication, or visit the DOI 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 page numbers. Link to publication General rights Copyright and moral rights for the publications made accessible in the public portal are retained by the authors and/or other copyright owners and 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, please follow below link for the End User Agreement: www.tue.nl/taverne Take down policy If you believe that this document breaches copyright please contact us at: [email protected] providing details and we will investigate your claim. Download date: 09. Jul. 2021

Upload: others

Post on 18-Feb-2021

1 views

Category:

Documents


0 download

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(�);