Last update: April 18, 1997.

Welcome to the webpage of the paper `The Goulden-Jacskon Cluster Method: Extensions, Applications and Implementations', by John Noonan , and Doron Zeilberger .

The available packages are (in order of appearance in the paper):

NAIVE, a Maple package that applies the Naive approach to solve probelms that the Goulden-Jackson Cluster method, and its extensions by Noonan and Zeilberger, handle much quicker and more efficiently. It can be used to test the other packages, and for theoretical insight. To use it, download it as NAIVE, go into Maple, type `read NAIVE:`, and follow the instructions given there.

DAVID_IAN, a Maple package that applies the the Goulden-Jackson Cluster method for finding generating functions for the sequence: number of words in a given alphabet that avoid, as (consecutive) subwords, a given list of `mistakes'. And many other related quantities described in the paper, (and in the on-line documentation). To use it, download it as DAVID_IAN, go into Maple, type `read DAVID_IAN:`, and follow the instructions given there.

JODO , a Maple package that implements the Noonan-Zeilberger extension of the Goulden-Jackson method for finding the generating function for the number of words in a given alphabet that contain a prescribed number of (consecutive) subwords from a given list of `mistakes'. To use it, download it as JODO, go into Maple, type `read JODO:`, and follow the instructions given there.

BLANKS , a Maple package that implements a further extension, in which mistakes with `blanks' may occur, of the above JODO extension of the Goulden-Jackson method for finding the generating function for the number of words in a given alphabet that contain a prescribed number of (consecutive) subwords from a given list of `mistakes'. To use it, download it as BLANKS go into Maple, type `read BLANKS:`, and follow the instructions given there.
[Added April 29, 2013 (inspired by Rus May): Here is an example of an input file that yields the output file ]
[Added April 30, 2013 (also inspired by Rus May): Here is an example of an input file that yields the output file ]

SYMGJ, Like DAVID_IAN, but now the set of bad words is closed under the symmetric group and we are taking advantage of this. To use it, download it as SYMGJ go into Maple, type `read SYMGJ:`, and follow the instructions given there.

SPGJ, Like DAVID_IAN, but now the set of bad words is closed under the group of signed permutations and we are taking advantage of this. To use it, download it as SPGJ go into Maple, type `read SPGJ:`, and follow the instructions given there.

GJseries, A Maple package that implements a clever and novel speeding-up variation of the Goulden-Jacskon method, due to Noonan and Zeilberger, to find series expansions for generating functions for the number of words in a finite alphabet avoiding a given set of Mistakes as factors. To use it, download it as GJseries, go into Maple, type `read GJseries`, and follow the instructions given there.

GJSAW, A Maple package that applies the Goulden-Jacskon Cluster method, as extended and cleverly implemented by Noonan and Zeilberger, to find series expansions for generating functions of interest in the theory of Self-Avoiding Walks. To use it, download it as GJSAW, go into Maple, type `read GJSAW`, and follow the instructions given there.

GJsqfree, A Maple package that applies the Goulden-Jacskon Cluster method, as extended and cleverly implemented by Noonan and Zeilberger, to find series expansions for generating functions of interest in the theory of Square-Free Words. To use it, download it as GJSAW, go into Maple, type `read GJsqfree`, and follow the instructions given there.

Doron Zeilberger's Homepage