PROOF OF IRA GESSEL’S LATTICE PATH CONJECTURE

MANUEL KAUERS^{∗} AND CHRISTOPH KOUTSCHAN^{∗} AND DORON ZEILBERGER^{∗∗}

Abstract. We present a computer-aided, yet fully rigorous, proof of Ira Gessel’s tantalizingly simply-stated conjecture that the number of ways of walking 2n steps in the region x + y ≥ 0, y ≥ 0 of the square-lattice with unit steps in the east, west, north, and south directions, that start and end at the origin, equals 16^{n} \frac{(5/6)_{n}(1/2)_{n}}{(5/3)_{n}(2)_{n}} .

1. Introduction

There is a certain family of lattice walks, let us call them the Gessel walks, whose counting function has been puzzling the combinatorialists already for several years. Gessel walks (that are trivially equivalent to the walks described in the abstract) are walks in the lattice ℤ^{2} that stay entirely in the first quadrant (viz. they are walks in ℕ^{2}) and that only consist of steps chosen from G := {←, →, ↙, ↗}. If f(n; i, j) denotes the number of Gessel walks with exactly n steps starting at the origin (0, 0) and ending at the point (i, j), then the counting function is the multivariate power series

F (t; x, y) := ∑_{n=0}^{∞} ∑_{i=0}^{∞} ∑_{j=0}^{∞} f(n; i, j)x^{i}y^{j}t^{n}.

We would call this power series holonomic (with respect to t) if it satisfies an ordinary linear differential equation (with respect to t) with polynomial coefficients in t, x, y. This, a priori, may or may not be the case.

For example, the Kreweras walks are defined just like the Gessel walks, but with the steps chosen from {←, ↓, ↗} instead of from G. It is a classical result [8] that their counting function is holonomic. In constrast, Bousquet-Mélou and Petkovšek showed that the counting function for certain Knight walks is not holonomic [3]. Mishna [9] provides a systematic study of all the possible walks in the quarter plane with steps chosen from any step set S ⊆ {←, ↖, ↑, ↗, →, ↘, ↓, ↙} with |S| = 3. She shows that the counting functions for the step sets {↗, ↘, ↖} and {↗, ↘, ↑} (and some others that are equivalent to those by symmetry) are not holonomic while all others are holonomic.

For the number of walks returning to the origin, there is sometimes a nice closed form representation, even if there is no such representation for the number of walks to an arbitrary point (i, j). For instance, if k(n; i, j) denotes the number of Kreweras walks of length n from (0, 0) to (i, j), then [8]

k(3n; 0, 0) = \frac{4^{n}}{(n + 1)(2n + 1)}\binom{3n}{n} (n ≥ 0)

[11, A006335] and k(n; 0, 0) = 0 if n is not a multiple of 3.

Gessel [6] observed that a similar representation seems to exist for the number f(n; 0, 0) of Gessel walks returning to the origin [11, A135404]. He conjectured the following closed form representation.

Key words and phrases. Lattice Walks, Quarter Plane, Holonomic Ansatz.

∗ Supported in part by the Austrian FWF grants SFB F1305, P19462-N18, and P20162-N18.

∗∗ Supported in part by the USA National Science Foundation.

Theorem. Let f(n; i, j) denote the number of Gessel walks going in n steps from (0, 0) to (i, j). Then f(n; 0, 0) = 0 if n is odd and

f(2n; 0, 0) = 16^{n} \frac{(5/6)_{n}(1/2)_{n}}{(5/3)_{n}(2)_{n}} (n ≥ 0),

where (a)_{n} := a(a + 1) ⋯ (a + n − 1) denotes the Pochhammer symbol.

The purpose of the present article is to describe, to human beings, the proof of this theorem. The proof is accomplished by computing a homogeneous linear recurrence in n for f(n; 0, 0). Then the statement follows directly by verifying that the right hand side satisfies the same recurrence and that the initial values match. Our recurrence has order 32, polynomial coefficients of degree 172, and involves integers with up to 385 decimal digits. As this is somewhat too much to be printed here (it would cover about 250 pages), we provide it electronically at

http://www.math.rutgers.edu/˜ zeilberg/tokhniot/Guessel2

which has the recurrence as a Maple procedure whose output being 0 proves Gessel’s conjecture (once the first 32 initial values are checked, but this has already been done by Gessel himself, when he formulated his conjecture). As variations of Gessel’s conjecture, Petkovšek and Wilf [10] have conjectured simple recurrence equations for f(n; 0, 1) and f(n; 1, 0) and some others. We were able to prove these conjectures as well, by computing recurrence equations for the respective sequences in the same way as we computed our recurrence equation for f(n; 0, 0). We have also found a recurrence for f(n; 2, 0), for which Petkovšek and Wilf had conjectured that no recurrence exists. Our result implies that F (t; 0, 0) is holonomic with respect to t, but has no immediate implications concerning the holonomy of F (t; x, y) for general x and y.

Final Notes [added at this final version] . Meanwhile Bostan and Kauers [2] have shown that the general series F (t; x, y) is in fact algebraic, and thus in particular holonomic. Their proof uses as a prerequisite the holonomy of F (t; 0, 0) proven below, in addition to computer algebra techniques which are different from those used below for establishing the holonomy of F (t; 0, 0). Shortly after that, Bousquet-Melou and Mishna [4] announced a complete classification of all the 256 step sets. With a uniform technique they are able to determine the nature of all step sets, with one single but remarkable exception: Gessel’s. This fact reveals evidence that the problem of enumerating Gessel walks is sui generis within the class of lattice path problems and hence deserves special attention. We want to thank the two anonymous referees for their insightful comments.

2. The Quasi-Holonomic Ansatz

2.1. Annihilating Operators. Let S_{n}, S_{i}, S_{j} be the shift operators, acting on f(n; i, j) in the natural way, e.g., S_{n}f(n; i, j) = f(n+1; i, j). An annihilating operator of f(n; i, j) is an operator R with

R(n, i, j, S_{n}, S_{i}, S_{j})f(n; i, j) = 0.

Those operators belong to a noncommutative polynomial algebra ℚ[n, i, j][S_{n}, S_{i}, S_{j}], and together they form a left ideal in that algebra, called the annihilator of f(n; i, j). Later, when it turns out to be computationally more convenient, we will view operators also as elements of the algebra ℚ(n, i, j)[S_{n}, S_{i}, S_{j}], which is hardly more than a technical difference. Note that for sake of simplicity we do not use the cumbersome notation for Ore extensions but refer to the operator algebra with the above somewhat sloppy notation. Our goal is to find an annihilating operator for Gessel’s f(n; i, j) that implies the conjecture. For example, it would be sufficient to know an annihilating operator R(n, i, j, S_{n}) free of the shifts S_{i} and S_{j}, because then R(n, 0, 0, S_{n}) would be an annihilating operator for f(n; 0, 0).

For this reasoning to apply, we could actually be less restrictive and allow also shifts in i and j to occur in R, as long as they disappear when i and j are set to zero. Our goal, therefore, is to find operators P, Q_{1}, Q_{2} such that

R(n, i, j, S_{n}, S_{i}, S_{j}) = P (n, S_{n}) + iQ_{1}(n, i, j, S_{n}, S_{i}, S_{j}) + jQ_{2}(n, i, j, S_{n}, S_{i}, S_{j})

annihilates f(n; i, j). This is the quasi-holonomic ansatz [7].

2.2. Discovering annihilating operators. We search for annihilating operators by making, for some fixed d, an ansatz

R = ∑_{0≤e_{1},...,e_{6}≤d} c_{e_{1},...,e_{6}}n^{e_{1}}i^{e_{2}}j^{e_{3}}S_{n}^{e_{4}}S_{i}^{e_{5}}S_{j}^{e_{6}}

with undetermined coefficients c_{e_{1},...,e_{6}}. Applying this “operator template” to f(n; i, j) gives

∑_{0≤e_{1},...,e_{6}≤d} c_{e_{1},...,e_{6}}n^{e_{1}}i^{e_{2}}j^{e_{3}}f(n + e_{4}; i + e_{5}, j + e_{6}),

which, when equated to zero for any specific choice of n, i, j yields a linear constraint for the undetermined coefficients. (The f(n; i, j) can be computed efficiently for any given n, i, j ∈ ℤ.) By taking several different n, i, j we obtain a linear system of equations. If that system has no solution, then there is definitely no annihilating operator matching the template. If there are solutions, then these are candidates for annihilating operators. We can clearly restrict the search to quasi-holonomic operators by leaving out unwanted terms in the ansatz for R.

2.3. Verifying conjectured annihilating operators. An algorithm was given in [7] for deciding whether some given operator R ∈ ℚ(n, i, j)[S_{n}, S_{i}, S_{j}] annihilates f(n; i, j) or not. We repeat this algorithm for the sake of self-containedness. First note that the step set {←, →, ↗, ↙} gives readily rise to the recurrence

f(n + 1; i, j) = f(n; i + 1, j) + f(n; i − 1, j) + f(n; i + 1, j + 1) + f(n; i − 1, j − 1)

(n ≥ 0, i, j ∈ ℤ), and therefore the “trivial operator”

T := S_{n}S_{i}S_{j} − S_{i}^{2}S_{j} − S_{j} − S_{i}^{2}S_{j}^{2} − 1

certainly annihilates f(n; i, j). Instead of checking that R annihilates f(n; i, j), we will check that T R annihilates f(n; i, j). By the following lemma, this is sufficient. Lemma. Suppose that an operator R is such that (T R)f(n; i, j) = 0. Then it can be checked whether Rf(n; i, j) = 0.

Proof. (T R)f(n; i, j) = 0 implies that T annihilates Rf(n; i, j), i.e., Rf(n; i, j) also satisfies the above recurrence. Therefore, in order to show that Rf(n; i, j) = 0 entirely, it suffices to show that Rf(n; i, j) = 0 for n = 0 and all i and j. If r_{n} bounds the degree of S_{n} in R, then it suffices to verify Rf(n; i, j) = 0 for n = 0 and 0 ≤ i, j ≤ r_{n}, because we clearly have f(n; i, j) = 0 for i > n or j > n. This leaves us with checking finitely many values, which can be done. □

By the lemma, in order to check Rf(n; i, j) = 0, it suffices to be able to check (T R)f(n; i, j) = 0. For checking the latter, compute operators U, V with T R = UT + V by division with remainder. Then

(T R)f(n; i, j) = 0 ⟺ V f(n; i, j) = 0.

If V is the zero operator, then we are done, otherwise we proceed recursively to show that V f(n; i, j) = 0 (compute U′, V′ with T V = U′T + V′, observe that (T V)f(n; i, j) = 0 iff V′f(n; i, j) = 0, and so on.) As T has constant coefficients and, for any d > 0, the commutation rules in ℚ(n, i, j)[S_{n}, S_{i}, S_{j}] are such that S_{i}n^{d} = n^{d}S_{i}, S_{j}n^{d} = n^{d}S_{j} and S_{n}n^{d} = n^{d}S_{n} + O(n^{d−1}) (and similarly for i and j in place of n), it follows that the degree of V with respect to n, i, j will be strictly smaller than the degree of R with respect to these variables. Therefore, the recursion must eventually come to an end.

2.4. Nice idea, but… At this point, we know that all we need for proving the conjecture is a quasi-holonomic annihilating operator for f(n; i, j). We know how to search for such operators, and once empirically discovered, we know how to verify them. Unfortunately, it turned out that if a quasi-holonomic annihilating operator for f(n; i, j) exists at all, then it must be quite large. It was shown [7] that there is no such operator of order up to 8 in either direction with polynomial coefficients of total degree at most 6. Increasing the bounds on order and degree further might, of course, help, but this is beyond our current computing capabilities. (For the above assertion, a dense linear system with several thousand variables and equations had to be solved exactly.)

3. A Takayama-Style Approach

By making an ansatz, we could not find a quasi-holonomic annihilating operator, but we could find (and verify) plenty of other operators, R_{1}, R_{2}, R_{3}, … that were not of the quasi-holonomic type. Once it has been verified that these R_{i} are indeed annihilating operators, we may of course freely choose any operators P_{1}, P_{2}, P_{3}, …, and the combined operator

P_{1}R_{1} + P_{2}R_{2} + P_{3}R_{3} + ⋯

will again be an annihilating operator. This just rephrases the fact that all annihilating operators form a left ideal in the corresponding algebra. Our next step is to find a quasiholonomic combination of the operators R_{1}, R_{2}, R_{3}, … that were found (and verified) by the method of the previous section.

3.1. Takayama’s Algorithm. Assume we want to find a recurrence for the sum

∑_{k} f(n, k).

In his “holonomic systems approach” [14] the third-named author proposes to search for an annihilating operator R of f(n, k) of the form

R(n, S_{n}, S_{k}) = P (n, S_{n}) + (S_{k} − 1)Q(n, S_{n}, S_{k}).

Summing over k shows (in case of natural boundaries which we will assume in the following) that P (n, S_{n}) annihilates the sum. Starting with the annihilator of the summand f(n, k) in A = ℚ(k, n)[S_{n}, S_{k}], i.e. Ann_{A} f ⊆ A, one computes an R(n, S_{n}, S_{k}) ∈ Ann_{A} f free of k (e.g., by elimination via Gröbner bases). Any such R can be brought to the above form. Almkvist [1] observed that in the above setting the constraint for Q can be released: The whole proof would go through in the same way if additionally Q depends on k. This fact is exploited in Takayama’s algorithm [12, 13] which originally was formulated only in the context of the Weyl algebra. Chyzak and Salvy [5] extended the algorithm to more general Ore algebras and proposed some improvements (including the shift case that we are dealing with). We follow their version of the algorithm. The idea in short is the following: while in the algorithm above, first k was eliminated and then the part (S_{k} − 1)Q was removed (which corresponds to dividing out the right ideal (S_{k} − 1)A), the order is now reversed. In Takayama’s algorithm we first reduce modulo (S_{k}−1)A and then perform the elimination of k. The algorithm usually leads to shorter recurrences since we allow more freedom for Q. Second, the elimination is in general much faster since we got rid of Q from the very beginning. Note that Q is not computed at all so we have to assure natural boundaries a priori. There is one technical complication in this approach. The fact that we are computing in a noncommutative algebra restricts us in the computations after having divided out the right ideal (S_{k} − 1)A. In particular, we are no longer allowed to multiply by k from the left. We can easily convince ourselves that otherwise we would get wrong results: Assume we have written an operator already in the form P + (S_{k} − 1)Q. Multiplying it by k and then reducing it by (S_{k} − 1)A leads to kP − Q since we have to rewrite k(S_{k} − 1) as (S_{k} − 1)(k − 1) − 1. Because k does not commute with S_{k} − 1 we get the additional term −Q in the result which we lose if we first remove (S_{k} − 1)Q and then multiply by k.

In order to find a k-free operator one needs an elimination procedure that takes this complication properly into account. Let now R_{1}, …, R_{m} ∈ A be the operators which generate Ann_{A} f, and let R′_{1}, …, R′_{m} ∈ ℚ(k, n)[S_{n}] be the corresponding reductions modulo (S_{k} − 1)A. For 1 ≤ i ≤ m we can write

R′_{i}(k, n, S_{n}) = R_{i,0}(n, S_{n}) + R_{i,1}(n, S_{n})k + R_{i,2}(n, S_{n})k^{2} + …

where R_{i,j} ∈ A′ := ℚ(n)[S_{n}]. Elimination of k now amounts to finding a linear combination

P_{1}(n, S_{n}) ( R_{1,0} ; R_{1,1} ; R_{1,2} ; ⋮ ) + ⋯ + P_{m}(n, S_{n}) ( R_{m,0} ; R_{m,1} ; R_{m,2} ; ⋮ ) = ( P (n, S_{n}) ; 0 ; 0 ; ⋮ )

for some P_{1}, …, P_{m} ∈ A′. The vector on the right hand side corresponds to the desired k-free operator. In general, this will not work yet since we can not expect to succeed in the elimination without multiplying by k at all. Hence we also have to include multiples of the R_{i} by powers of k. More algebraically speaking, the computations take place in an A′-module M that is generated by the above vectors plus the vectors corresponding to the elements k^{j}R_{i} mod (S_{k} − 1)A, 1 ≤ i ≤ m, j = 1, 2, . . .. The elimination is achieved by computing a Gröbner basis of this module. Note that P ∈ M if and only if there exists a Q ∈ A such that P + (S_{k} − 1)Q ∈ Ann_{A} f. For practical purposes we have to truncate the module M by considering only elements with a finite number d of components, i.e., which have zeros in all positions greater than d. The most natural choice for d is the highest power k^{d} that appears in R_{1}, …, R_{m}. But we are not guaranteed that for any P, Q ∈ A with P + (S_{k} − 1)Q ∈ Ann_{A} f the operator P is an element of the truncated module. In the unlucky case that no k-free operator was found, the bound d has to be increased. The algorithm works similar in the case of multiple sums where we want to eliminate several variables k_{1}, …, k_{r}.

3.2. Proof of Gessel’s conjecture. Now back to Gessel’s conjecture: Recall that we were looking for a quasi-holonomic operator

R(n, i, j, S_{n}, S_{i}, S_{j}) = P (n, S_{n}) + iQ_{1}(n, i, j, S_{n}, S_{i}, S_{j}) + jQ_{2}(n, i, j, S_{n}, S_{i}, S_{j})

where we are mainly interested in P, because Q_{1} and Q_{2} anyway vanish when we set i and j to 0. This task is very similar to the setting in the previous section and with slight modifications we can apply Takayama’s algorithm to solve it. The only difference is that now i and j play the role of S_{k} − 1, and instead of k, we want to eliminate the operators S_{i} and S_{j}. Consequently we have to consider the ℚ(n)[S_{n}]-module which is generated by {S_{i}^{e_{1}}S_{j}^{e_{2}}|e_{1}, e_{2} = 0, 1, … }. For our concrete application, we started with a set of 16 annihilating operators for f(n; i, j). These operators were found by the ansatz described in Section 2.2 and verified as proposed in Section 2.3. The maximal degree with respect to i as well as the maximal degree with respect to j is 4. Some of the operators had degree less than 4 in i or j, hence we had to add their corresponding multiples to the set of annihilating operators (which after this step consisted of 24 elements). Next we performed the substitution i = 0 and j = 0. Finally, the elimination of S_{i} and S_{j} using a Mathematica package for noncommutative Gröbner bases computations written by the second author took about 30 hours and resulted in an operator P (n, S_{n}) of order 32 and polynomial coefficients of degree 172 in n. (This is the operator posted on our website.) As already pointed out, Takayama’s algorithm does not deliver Q_{1} and Q_{2}. However, in principle the full certificate R(n, i, j, S_{n}, S_{i}, S_{j}) can be computed by doing some book-keeping during the run of the algorithm. But in the case of Gessel’s conjecture this extra cost would make our computations not feasible with current computers (we would have to wait for a few, or perhaps even many, more Moore-doublings). We want to emphasize that, nevertheless, the proof is completely rigorous. To cite a simple (commutative) analogy, Euclid devised, more than 2300 years ago, an algorithm to find the greatest common divisor of two integers. Later mathematicians extended it to the generalized Euclidean algorithm that inputs integers m and n and outputs not only d, the greatest common divisor of m and n, but also two other integers a and b such that am + bn = d. Just because our computers are not fast or big enough to actually find these two other integers a and b does not detract from the correctness of the output d of the original Euclidean algorithm, and their existence is implied by it.

4. Conclusion

Computer-aided proofs have come a long way since the hostile reception of the Appel-Haken landmark proof of the Four-Color Conjecture. Even as recently as 1998, Hales’ breakthrough computer-aided proof of Kepler’s conjecture was met with skepticism, but it did get published, with some reservations, in the prestigious journal Annals of Mathematics. Both the Appel-Haken and Hales theorems are examples of extremely simply-stated statements, whose proofs defied, so far, human attempts. While Ira Gessel’s conjecture has neither the longevity nor the notoriety of the above theorems, it does belong to that genre, and we believe that it is very possible that a short human proof does not exist. Unfortunately, formally proving this last meta-conjecture would be probably much more difficult than proving Gessel’s conjecture, since proving realistic lower bounds is a notoriously difficult task. So we have to resort to empirical sociological testing, using the ingrained greed of human mathematicians. To that end, the third-named author (DZ) offers a prize of one hundred (100) US-dollars for a short, self-contained, human-generated (and computer-free) proof of Gessel’s conjecture, not to exceed five standard pages typed in standard font. The longer that prize would remain unclaimed, the more (empirical) evidence we would have that a proof of Gessel’s conjecture is indeed beyond the scope of humankind.

References

[1] Gert Almkvist and Doron Zeilberger. The method of differentiating under the integral sign. Journal of Symbolic Computation, 11(6):571–591, 1990.

[2] Alin Bostan and Manuel Kauers. The full counting function for Gessel walks is algebraic. Technical report, INRIA-Rocquencourt, 2008. (in preparation).

[3] Mireille Bousquet-Mélou and Marko Petkovšek. Linear recurrences with constant coefficients: the multivariate case. Discrete Mathematics, 225:51–75, 2000.

[4] Mireille Bousquet-Mélou and Marni Mishna. Walks with small steps in the quarter plane. ArXiv preprint 0810.4387, October 2008.

[5] Frédéric Chyzak and Bruno Salvy. Non-commutative elimination in Ore algebras proves multivariate identities. Journal of Symbolic Computation, 26:187–227, 1998.

[6] Ira Gessel. personal communication, 2001.

[7] Manuel Kauers and Doron Zeilberger. The quasi-holonomic ansatz and restricted lattice walks. Journal of Difference Equations and Applications, 14(10):1119–1126, 2008.

[8] Germain Kreweras. Sur une classe de problèmes liés au treillis des partitions d’entiers. Cahiers du B.U.R.O., 6:5–105, 1965.

[9] Marni Mishna. Classifying lattice walks restricted to the quarter plane. In Proceedings of FPSAC’07, 2007.

[10] Marko Petkovšek and Herbert S Wilf. On a conjecture of Gessel. ArXiv preprint 0807.3202, June 2008.

[11] Neil J. A. Sloane. The On-Line Encyclopedia of Integer Sequences. http://research.att.com/˜ njas/sequences/.

[12] Nobuki Takayama. An algorithm of constructing the integral of a module. In Proceedings of ISSAC’90, pages 206–211, 1990.

[13] Nobuki Takayama. Gröbner basis, integration and transcendental functions. In Proceedings of ISSAC’90, pages 152–156, 1990.

[14] Doron Zeilberger. A holonomic systems approach to special function identities. Journal of Computational and Applied Mathematics, 32:321–368, 1990.

Manuel Kauers, Research Institute for Symbolic Computation, J. Kepler University Linz, Austria

E-mail address: mkauers@risc.uni-linz.ac.at

Christoph Koutschan, Research Institute for Symbolic Computation, J. Kepler University Linz, Austria.

E-mail address: ckoutsch@risc.uni-linz.ac.at

Doron Zeilberger, Mathematics Department, Rutgers University (New Brunswick), Piscataway, NJ, USA.

E-mail address: zeilberg@math.rutgers.edu