IMPORTANT: Some of the earlier progrmas may not run properly on Maple 8 or 9, or Maple 10. Unless indicated explicitly below, where I adapted to and tested the programs for Maple 8, (for example like in EKHAD8), or later. If you find a problem, please tell me!

Doron Zeilberger's Maple Packages and Programs

Last Update: Oct. 6, 2008


Maple packages accompanying A=B

Ilse, Maple packages that incorporates a constant-term rendition of Ilse Fischer's gorgeous approach to counting Monotone Triangles. Very preliminary. It may accompany and/or inspire future papers by a non-empty subset of {DZ, Dan Romik, Ilse Fischer}. (Posted Oct. 6, 2008).

qTSPP, and TSPP, Maple packages that contain semi-rigorous proofs of George Andrews' and Dave Robbins' qTSPP conjecture, and of Stembridge's TSPP theorem, respectively. They accompany an article By Christoph Koutschan, Manuel Kauers and Doron Zeilberger (Posted Aug. 6, 2008).

TANGLE, a Maple package that counts certain configurations that came up in studies of RNA. It accompanies an article By William Y.C. Chen, Jing Qin, Christian M. Reidys and Doron Zeilberger (Posted Feb. 23, 2008).

BruteTwoFone, a Maple package that searches, by (clever!) brute force, for hypergeometric closed-form "strange" evaluations. It accompanies Moa Apagodu and Doron Zeilberger's article (Posted Feb. 22, 2008).

ConnectFour, a Maple package that automatically generates Connect Four End-Game Problems. It generated Shalosh B. Ekhad's webbook One Hundred and Twenty Connect-Four End-Game Problemns (Posted Feb. 1, 2008).

DRUNKARD, a Maple package that computes the probabilities of return to the origin of a simple random walker in Zd that starts at the origin, and is either unconfined (like in Polya's original case), or must stay in (a) the positive orthant (b) the simplex x1 ≥ x2 ≥ ... ≥ xd (c)x1 ≥ x2 ≥ ... ≥ xd ≥ 0, as well as counting number of ways of walking from A to B etc. It accompanies Doron Zeilberger's article (Posted Dec. 19, 2007).

LUACH, a Maple package that converts Hebrew dates to Gregorian ones, and vice versa, and also constructs Hebrew Yearly Calendars, for ANY year, after the creation of the world, for ever after, and has other neat features like predicting the year when Rosh Hashana will be at any given Gregorian date, for example Christmass (answer: 20606). It accompanies Doron Zeilberger's lecture, at the Rutgers University Experimental Mathematics Seminar, on 5:00pm, Tishrei 8, 5768, entitled: "Why Erev Yom Kippur can never be on Thursday Evening". (Posted Oct. 7, 2007).

RotaStanley, a Maple package that uses Gian-Carlo Rota's Umbral Calculus to enumerate Richard Stanley's P-Partitions. It accompanies Shalosh B. Ekhad and Doron Zeilberger's article (Posted June 12, 2007).

Bipartite, a Maple package that counts regular (labelled) bipartite graphs It accompanies Shalosh B. Ekhad and Doron Zeilberger's article In How Many Ways Can n (Straight) Men and n (Straight) Women Get Married, if Each Person Has Exactly k Spouses? Also accompanying this article is the Maple package LatinRectangles, for computing the number of Latin Rectangles with small width but with rather long length. (Posted Jan. 2, 2007).

VATTER, a Maple package that finds Generalized Enumeration Schemes (in the sense of Vince Vatter) for Wilf classes. It accompanies Doron Zeilberger's article On Vince Vatter's Brilliant Extension of Doron Zeilberger's Enumeration Schemes for Herb Wilf's Classes (Posted Jan. 2, 2007).

AMITAI, a Maple package that makes conjectures about the number of n-celled Young tableaux with certain properties. It accompanies Doron Zeilberger's article Proof of a Conjecture of Amitai Regev about Three-Rowed Young Tableaux (and Much More!) (Posted Dec. 11, 2006).

FELLER, a Maple package that studies Coin Tossing, a la Feller's v. 1 ch. 3. It accompanies Doron Zeilberger's article Fully Automated Computerized Redux of Feller's (v.1) Ch. III (and Much More!) (Posted Nov. 14, 2006).

AppsWZ, a Maple package that uses the Almkvist-Zeilbeger algorithm to compute recurrences for quantities of interest in enumeration and discrete probability and AppsWZmulti, that does the same for multi-dimensional lattice paths and random walks. They accompany Moa Apagodu and Doron Zeilberger's article FIVE Applications of Wilf-Zeilberger Theory to Enumeration and Probability (Posted Oct. 20, 2006).

RUIN, a Maple package that studies the Gambler's Ruin problem. It accompanies Doron Zeilberger's article Symbol Crunching with the Gambler's Ruin Problem (Posted Sept. 17, 2006).

EMILIE, a Maple package whose first version empirically verifies and conjecutures a general generating function for Paul Heideman and Emilie Hogan's beautiful article New Family of Somos-like Recurrences . The current version completes the lovely proof of Heideman and Hogan by doing the "base cases" (completely empirically, yet rigorously! It is an amazing illustartion of experimental-yet-rigorous math). If you type EmiliePaul(K,n); while in EMILIE, you would get oEmiliePaul, that discovers everything from scracth! (i.e. it didn't save any previously computed results).
(First version Posted March 28, 2006. This version: Sept. 19, 2006).

DET, a Maple package that automatically guesses(!) and proves(!!) explicit determinant evaluations of matrices with holonomic (in particular, rationl-function) entries. It accompanies the article The Holonomic Ansatz II. Aoutomatic Discovery(!) and Proof(!!) of Holonomic Determinant Evaluations (Posted Feb. 20, 2006).

GuessHolo2, and
GuessHolo3 are two Maple packages that guess holonomic representations for discrete functions of two and three variables respectively, and apply them for conjecturing (and proving!) pure reecurrence relations for discrete functions enumerating lattice paths. They accompany by the article The Holonomic Ansatz I. Foundations and Applications to Lattice Path Counting (Posted Feb. 5, 2006).

TILINGS, a Maple package that automatically computes generating functions enumerating tilings of rectangular boards of arbitrary but fixed width (but general length), by the tiles belonging to any inputted set of tiles. It accompanies by the article Automatic CounTilings (Posted Jan. 20, 2006).

PHIL, a Maple package that implements (and empirically verifies!) Phlip Matchett Wood's lovely article "A biective proof of
fn+4+1f1+2f2+ ... + nfn=(n+1)fn+2+3"
(Posted Dec. 9, 2005).

SMCramsey, a Maple package that computes (symbolic!) moment for random variables that arise in Graph Colorings and Ramsey theory. It accompanies by the article Symbolic Moment Calculus II.: Why is Ramsey Theory Soooo Eeeeenormously Hard? (Posted Nov. 22, 2005).

Bearoff, BearoffOneDie, Sulam, are three Maple packages that study the bearoff stage in Backgammon (generalized for an arbitary fair die). They are accompanied by the article How to Play Backgammon (if you must), and how to Research it (if you have time) (Posted Nov. 15, 2005).

JONAS, a Maple package that implements the lovely bijective proof of Jonas Sjostrand . It is accompanied by the article Another Proof that Euler Missed: Jonas Sjöstrand's Amazingly Simple (and Lovely!) Proof of the No-Longer-So-Amazing Lattice Paths Conjecture (Posted Oct. 23, 2005).

TEN, a Maple package that automatically proved the amazing Loehr-Warrington 10 to the power n conjecture. It is accompanied by the article A Proof of the Loehr-Warrington Amazing TEN to the Power n Conjecture (Posted Sept. 14, 2005).

SuDoku, a Maple program to solve SuDoku problems. (Posted July 20, 2005).
For example, the input file produces the output file.

Added Feb. 16, 2006: Bobby Griffin just won ten dollars in my Experimental Math Class contest for the best Maple Sudoku program SuDokuGriffin. It is a thousand times faster!
To prove my point, the input file produces the output file.


Five Maple packages accompany Multi-Variate Zeilberger and Almkvist-Zeilberger Algorithms and the Sharpening of Wilf-Zeilberger Theory by M. Mohammed and D. Zeilberger. Namely: (Posted Dec. 8, 2004).

QuantumMACMAHON, a Maple package that verifies the Quantum Macmahon Master Theorem for any specific dimension. It accompanies the (still incomplete) article The Quantum MacMahon Master Theorem by S. Garoufalidis, T. Le and D. Zeilberger.

(WIth Andrew V. Sills) GuessRat, a Maple package that guesses Rational function for empirically derived data; and GoodDyson, taylored-made for Dyson-type constant-term identities. Both accompany Disturbing the Dyson Conjecture (in a GOOD way) by Sills and Zeilberger.

ZEILBERGER, and qZEILBERGER, two Maple packages that perform the simplified Zeilberger and q-Zeilberger algorithms as described in the article Sharp Upper Bounds for the Orders of the Recurrences Outputted by the Zeilberger and q-Zeilberger Algorithms by Mohamud Mohammed and Doron Zeilberger. (posted Aug. 10, 2004).

MarkovWZ, A Maple package (written in collaboration with Mohamud Mohammed) that computes Markov-WZ pairs and MWZ Acceleration schemes. It accompanies the article The Markov-WZ Method by D. Zeilberger and M. Mohammed.. Also accompanying this paper are the Maple packages MarkovAZ, for computing Markov-Almkvist-Zeilberger pairs and ContMarkovWZ, for computing Continuous-Discrete Markov-WZ pairs. (posted June 3, 2004).
Added July 19, 2004: MarkovWZ has been upgraded to do diagonal contours, download the enhanced package MarkovWZdiag, and type ezraD(); for specifics.

CheckMate, a Maple package for solving Mate-in-k-Moves, Very preliminary and very primitive, hopefully to be improved in the future. You should also download, and keep in the same directory, the files Carpenter [last update: Dec. 19, 2006] and Evans [last update: June 12, 2008], (First Posted June 18, 2004).. [Added June 12, 2008: The new version has a new procedure, MateInTwo, that only handles Mate-In-Two problems, but is more succinct. The input would produce, the The output].

TAG, a Maple package for studying the Totally Ambiguous Grammar discussed in Doron Zeilberger's talk at the Princeton Discrete Math Seminar (March 31, 2004). It may accompany a forthcoming article by Doron Zeilberger.

SMCper, A Maple package that computes Pattern Statistics for permutations. It accompanies the article Symbolic Moment Calculus I.: Foundations and Permutation Pattern Statistics .

BYRNES, A Maple package that investigates Chomp. It accompanies the article Chomp, Recurrences, and Chaos(?). You should also download the data file ChompData, and put them in the same directory.

GRW, A Maple package to handle the Gelfand-Retakh-Wilson "non-commutative" theory of "quasi-determinants". [Still Very Preliminary, Version of Feb. 21, 2003].

OtiotUmisparim, [Last Update, Aug. 3, 2003, with new procedure PtorKefWm, that solves multiplication Alphametics with one typo, like the one in Yediot, Aug. 1, 2003]. A Maple package that solves, and more impressively generates, `alphametics' (cryptharithms in which every number is a word). It was used to generate Shalosh B. Ekhad's web-book Computer-Generated Alphametics.

CLD, A Maple package that accompanies the article Liebe Opa, Ich Bin Auch Ein Experimental Scientist, that automatically discovers, and proves at the same time, explicit evaluations of Hankel and Toeplitz determinants, using the Dodgson ansatz.

EHRENBORG, A Maple package that accompanies the article I Am Sorry, Richard Ehrenborg and Margie Readdy, About Your Two Conjectures. But One is FAMOUS, While The Other Is FALSE, by Doron Zeilberger, (placed here July 2, 2002). This package also contains procedures that implement the Robinson-Schenstead Correspondence, and its inverse, RS and iRS, respectively, (see the on-line help (ezra();)), that may be of independent interest.

There are five Maple packages accompanying the article Computerized Deconstruction, by Doron Zeilberger. These are (in order of appearance in the paper): PADE, AperyWZ, AperyRecurrence, AperyAcc, and AperyAppx. Look at the webpage of the article for links to sample input and output files.

AARON, A small Maple package that accompanies the article Refined Restricted Permutations, by Aaron Robertson, Dan Saracino, and Doron Zeilberger. It requires WILF, see below. Download it as AARON, get into Maple, and type ez(); for on-line help, not to be confused with ezra(); that describes the parent package WILF (see below).

LinDiophantus, A Maple analog of the Andrews-Paule-Riese OMEGA package for Macmahon's method for solving linear diophantine equations. Unlike the A-P-R treatment that resorts to dubious analysis, my approach is completely elementary (high-school algebra), and hence more rigorous.

There are three Maple packages accompanying my article The Umbral Transfer-Matrix Theorem V. The Goulden-Jackson Cluster Method for Infinitely Many Mistakes. These are UGJ, for the general case, SymUGJ, for the case where the mistakes are invariant under the action of the Symmetric Group, and SiPerUGJ, for the case where the mistakes are invariant under the action of the group of Signed Permutations. To use, for example, UGJ, first download it as UGJ, go into Maple, by typing maple (ENTER), then type : read UGJ: (ENTER) and then follow the on-line instructions. Similarly for SymUGJ and SiPerUGJ.

There are three Maple packages accompanying my article The Umbral Transfer-Matrix Theorem IV. Counting Self-Avoding Polygons and Walks. The first one is USAP, A Maple package for computing and using Umbral Schemes for important families of self-avoiding polygons. The second one is USAW, A Maple package for computing and using Umbral Schemes for important families of self-avoiding walks. The third one is MAYLIS, A Maple package for handling, Umbrally, various classes of convex polyominoes by perimeter. To use, for example, USAP, first download it as USAP, go into Maple, by typing maple (ENTER), then type : read USAP: (ENTER) and then follow the on-line instructions.

ZOO, A Maple package for computing and using Umbral Schemes for important families of lattice animals. It accompanies my paper on that subject. (Placed here: Dec. 27, 2000).

PERCY, A Maple package for handling Markovian Permutation Statistics It accompanies Foata and Zeilberger's paper on that subject. (Placed here: Oct. 31, 2000).

PPar, A Maple package for computing and using Umbral Schemes for plane partitions and monotone triangles. It accompanies my paper on that subject. (Placed here: Oct. 26, 2000).

PARRONDO, A Maple package for studying the Parrondo Paradox. It accompanies Ekhad and Zeilberger's article Remarks On The PARRONDO PARADOX.

Chomp3Rows, A Maple package for finding symbolic algorithms for playing 3-Rowed Chomp. It accompanies my article Three-Rowed CHOMP.

PEG, A Maple package for solving Peg-Solitaire on arbitrary boards, including the standard `English' one and triangular ones (Hi-Q). One day it might lead to an article, but right now it is very preliminary. First posted: May 12, 2000. Last update: May 12, 2000.

ROTA, A Maple package for handling Umbral Schemes. It accompanies my paper on that subject.

There are seven Maple packages described in Maple Packages For Counting Skinny Physical Creatures. (http://www.math.rutgers.edu/~zeilberg/tm.html) It accompanies my paper on that subject.

CGJ , A Maple package that accompanies Anne Edlin and Doron Zeilberger's paper The Goulden-Jackson Cluster Method For Cyclic Words. It generates generating functions counting necklaces that do not contain any ugly segments.

RORTY , A Maple package that accompanies Ekhad and Zeilberger's paper A User's Manual for RORTY: A Maple Package for Finding Final Vocabularies..

JAN , A Maple package that accompanies Ekhad and Zeilberger's paper There Are More Than 2**(n/17) n-Lettered Ternary Words. To use JAN, download it as JAN go into Maple, type `read JAN`, and follow the instructions given there.

WILF , and HERB , Two Maple packages that automatically find (rigorously and empirically, respectively) Enumeration Schemes for counting permutations with forbidden patterns (Wilf classes). They accompanies Doron Zeilberger's paper Enumeration Schemes, and More Importantly, Their Automatic Generation. To use WILF, download it as WILF go into Maple, type `read WILF`, and follow the instructions given there. (ditto for HERB.)
Added July 19, 2004: A very significant enhancement of WILF has been just completed by my brilliant student Vince Vatter, in his Maple package WILFPLUS. It does many more cases than WILF, but in a few cases runs a bit slower, so I am still keeping WILF here.

RENE , Last Update: Oct. 14, 2004 [Sadov's Theorem added]. Tested on Maple9 and below. A Maple package that gives very elegant and succinct Maple-statements of fifty five famous theorems in Plane Geometry, and 13 Monthly Problems, that enable their immediate proof by Maple. It makes explicit the 350-year-old secret, still kept away from school-children, that Plane Geometry is all routineable. This Maple package was adapted (and largely extended) from Shalosh B. Ekhad, XIV's Elementary Geometry Textbook(ca. 2050) .

RON , A Maple package to study Ron Graham's problem on Schur triples. It accompanies Aaron Robertson and Doron Zeilberger's paper A 2-Coloring of [1,N] Can Have (1/22)N^2+O(N)... . To use it, download it as RON go into Maple, type `read RON:`, and follow the instructions given there.

DODGSON , DODGSON: VERY PRELIMINARY version of a package that uses Dodgson rule to conjecture `closed form' expressions for (so far Hankel) determinants. Soon it will prove the conjectured expression, etc. etc. Written By Tewodros Amdeberhan and Doron Zeilberger. Accompanying a forthcoming paper by them. To use it, download it as DODGSON go into Maple, type `read DODGSON:`, and follow the instructions given there.

IRRAT , Investigates how Apery could have arrived empirically at his marvelous irrationality proofs. VERY PRELIMINARY

HORTON. A Maple package to study John HORTON Conway's brilliant Audiactive Decay. It accompanies Shalsoh B. Ekhad and Doron Zeilberger's paper on that subject .

John Noonan and I have written several packages dealing with the Goulden-Jacskon Cluster method. It accompanies our paper on that subject.

LEGO, A Maple package that automatically counts (certain) LEGO towers. This package is a companion to the paper Automated Counting of LEGO Towers.

DIKDUK, A Maple package that attemps to derive the (so-far Markovian) grammar of an inputted language (given in terms of a finite set of words), and then computes the generating function of the (infinite) language whose grammar it is. Very preliminary version! Better versions coming up. To use it, download it as DIKDUK, go into Maple, type `read DIKDUK:`, and follow the instructions given there .

SAWgrammar, A Maple package that uses the above package DIKDUK to find generating functions for families of restricted Self Avoiding Walks in a strip and variations. You must have DIKDUK at the same directory. To use it, download it as SAW, go into Maple, type `read SAW:`, and follow the instructions given there .

DREIDEL, A Maple package that plays the dreidel for any number of players, and computes winning probabilities, and expected duration, for 2-player games. To use it, download it as DREIDEL, go into Maple, type `read DREIDEL:`, and follow the instructions given there .

DOMINO, a Maple package that studies the dimer problem. To use it, download it as DOMINO, go into Maple, type `read DOMINO:`, and follow the instructions given there. [Last Update: Oct. 10, 1997]

LUC , A Maple program that implements the amazing explicit formula for the Jack polynomials, found by Luc Lapointe and Luc Vinet, in their paper ``A Rodrigues formula for the Jack polynomials and the Macdonald-Stanley conjecture''. To use it, download it as LUC, go into Maple, type `read LUC:`, and follow the instructions given there.

ROBBINS , a Maple package accompanying my paper ``Proof of the alternating sign matrix conjecture ( Electronic Journal of Combinatorics. 3(2)(1996) [Foata issue] R13). It empirically verifies every non-trivial statement in the (structured) proof. To use it, download it as ROBBINS, go into Maple, type `read ROBBINS:`, and follow the instructions given there.

SCHUTZENBERGER , a Maple package that treats algebraic and other formal power series. To use it, download it as SCHUTZENBERGER, go into Maple, type `read SCHUTZENBERGER:`, and follow the instructions given there.

SYLVESTER , A Maple implementation of Sylvester's enhancement of Tchebychev's method for finding lower and upper bounds for psi(x)/x, based on his CW IV, paper 72. To use it, download it as SYLVESTER go into Maple, type `read SYLVESTER:`, and follow the instructions given there.

You can also find:

MIKLOS, a short program/article, by AAron Robertson, Herb Wilf, and Doron Zeilberger, to find generating functions for permutations with NO (resp. exactly ONE) occurences of the pattern 132 and exactly r occurences of the pattern 123. Save this program as MIKLOS, go into Maple, type: read MIKLOS; and follow the instructions.

LOU, A Maple package that investigates Lou Kauffman's approach to 4CT. It accompanies a forthcoming article. .

NSFdms, A Maple package for doing NSF-research in Mathematics, or rather, meta-mathematical research, about the funding of the Division of Mathematical Sciences of the National Science Foundation. It should be used in conjuction with DMSDATA, (download this file in the same directory). To find out how to use it, download User's Manual for NSFdms. Written: Oct. 6, 1998

GetMicrosoftJob, A Maple package that solves the Microsoft job-interview puzzle, about the U2 band crossing a bridge at night. To use GetMicrosoftJob, download it as GetMicrosoftJob, go into Maple, type `read GetMicrosoftJob;`, and follow the instructions given there. Written: Sept. 25, 1998

ChutesAndLadders, A Maple package that plays Milton-Bradley's ChutesAndLadders(tm) game, and generalizations with arbitrary sets of Chutes and Ladders, and computes probabilities of winning, and expected duration of the game. To use ChutesAndLadders download it as ChutesAndLadders go into Maple, type `read ChutesAndLadders`, and follow the instructions given there. Written by Doron Zeilberger, with Hadas Zeilberger (b. Dec. 19, 1990) serving as consultant.

RubikClock , A Maple program to solve Rubik's Clock Puzzle. To use it, download it as RubikClock, go into maple, and type: read RubikClock: Then follow the on-line instructions.

BET , A short Maple package that studies the Ben Ezra Transform, as it is described in Ibn Ezra's Sefer Hamispar, Gate 6.

BenEzra, implements (the general) Rabbi Ben Ezra (Ibn Ezra) pseudo-random drowning of bad guys (essentially the Josephus problem).

rec2 , Empirically finds linear recurrences, in each variables, with polynomial coeffs. satisfied by a discrete function a(n,m).

appel, A small Maple package that implements Andrew Appel's Test for mathematical content. It accompanies Shalosh B. Ekhad paper The Theory of Self-Avoiding Walks in only 66.81 percents mathematical (according to the Appel test).

pinsky, A small Maple package that answers a Calculus excercise posed by Mark Pinsky.

alice, A small Maple package accompanying D. Zeilberger's paper Dodgson's Determinant Evaluation Rule Proved by TWO-TIMING MEN and WOMEN.

rabbit , A small Maple package accompanying T. Amdeberhan and S.B. Ekhad's paper A Condensed Condensation Proof of a determinant evaluation conjectured by Greg Kuperberg and Jim Propp.

catalan , A small Maple package accompanying my paper (exclusive for my http and ftp archives) ``Catalan strikes again (and again*)''

hex , A short Maple program that proves Pascal's hexagon's theorem.

change , How many ways can you make change?

elim , Naive elimination in the ring of linear partial difference operators with polynomial coefficients

Doron Zeilberger's Home Page