conjugate {partitions} | R Documentation |
Given a partition, provide its conjugate or Durfee square
conjugate(x) durfee(x)
x |
Either a vector describing a partition, in standard form (ie nonincreasing); or a matrix whose columns are partitions in standard form |
Conjugation is described in Andrews, and (eg) Hardy and Wright.
Essentially, conjugate()
carries out R idiom
rev(cumsum(table(factor(a[a>0],levels=max(a):1))))
, but faster.
The “Durfee square” of a partition is defined on page 281 of
Hardy and Wright. It is the largest square of nodes contained in the
partition's Ferrers graph. Function durfee()
returns the side
of the Durfee square which Andrews denotes
d(lambda). It is equivalent to R idiom
function(a){sum(a>=1:length(a))}
, but faster.
Returns either a partition in standard form, or a matrix whose columns are partitions in standard form.
If argument x
is not nonincreasing, all bets are off: these
functions will not work and will silently return garbage. Caveat
emptor! (output from blockparts()
is not necessarily
non-increasing)
Robin K. S. Hankin
parts(5) conjugate(parts(5)) restrictedparts(6,4) conjugate(restrictedparts(6,4)) durfee(10:1)