  The minimum hypergeometric test (mHG) is a powerful nonparametric hypothesis
test to detect enrichment in ranked binary lists. Here, I provide a detailed
review of its definition, as well as the algorithms used in its implementation,
which enable the efficient computation of an exact p-value. I then introduce a
generalization of the mHG, termed XL-mHG, which provides additional control
over the type of enrichment tested, and describe the precise algorithmic
modifications necessary to compute its test statistic and p-value. The XL-mHG
algorithm is a building block of GO-PCA, a recently proposed method for the
exploratory analysis of gene expression data using prior knowledge.
