# Integer partitions

### Description

Routines to enumerate all partitions of an integer; includes restricted and unequal partitions.

### Details

This package comprises eight functions: `P()`

, `Q()`

,
`R()`

, and `S()`

give the number of partitions, unequal
partitions, restricted partitions, and block partitions of an integer.

Functions `parts()`

, `diffparts()`

, `restrictedparts()`

,
and `blockparts()`

enumerate these partitions.

Function `conjugate()`

gives the conjugate of a partition and
function `durfee()`

gives the size of the Durfee square.

**NB** the emphasis in this package is terse, efficient C code.
This means that there is a minimum of argument checking. For example,
function `conjugate()`

assumes that the partition is in standard
form (ie nonincreasing); supplying a vector in nonstandard form will
result in garbage being returned silently. Note that a block partition
is not necessarily in standard form.

### Author(s)

Robin K. S. Hankin

### References

G. E. Andrews 1998

*The Theory of Partitions*, Cambridge University PressM. Abramowitz and I. A. Stegun 1965.

*Handbook of Mathematical Functions*, New York: DoverG. H. Hardy and E. M. Wright 1985

*An introduction to the theory of numbers*, Clarendon Press: Oxford (fifth edition)R. K. S. Hankin 2006. “Additive integer partitions in

**R**”.*Journal of Statistical Software*, Volume 16, code snippet 1R. K. S. Hankin 2007. “Urn sampling without replacement: enumerative combinatorics in

**R**”.*Journal of Statistical Software*, Volume 17, code snippet 1R. K. S. Hankin 2007. “Set partitions in

**R**”.*Journal of Statistical Software*, Volume 23, code snippet 2

### Examples

1 2 3 4 5 6 |