combinat-0.2.8.2: Generate and manipulate various combinatorial objects.

Math.Combinat.Partitions.Skew

Description

Skew partitions.

Skew partitions are the difference of two integer partitions, denoted by lambda/mu.

For example

mkSkewPartition (Partition [9,7,3,2,2,1] , Partition [5,3,2,1])

creates the skew partition (9,7,3,2,2,1) / (5,3,2,1), which looks like

Synopsis

# Basics

newtype SkewPartition Source #

A skew partition lambda/mu is internally represented by the list [ (mu_i , lambda_i-mu_i) | i<-[1..n] ]

Constructors

 SkewPartition [(Int, Int)]

Instances

 Source # Methods Source # Methods Source # MethodsshowList :: [SkewPartition] -> ShowS # Source # Methods Source # Methods Source # Methods Source # Methods

mkSkewPartition (lambda,mu) creates the skew partition lambda/mu. Throws an error if mu is not a sub-partition of lambda.

Returns Nothing if mu is not a sub-partition of lambda.

The weight of a skew partition is the weight of the outer partition minus the the weight of the inner partition (that is, the number of boxes present).

This function "cuts off" the "uninteresting parts" of a skew partition

Returns the outer and inner partition of a skew partition, respectively:

mkSkewPartition . fromSkewPartition == id

The lambda part of lambda/mu

The mu part of lambda/mu

The dual skew partition (that is, the mirror image to the main diagonal)

# Listing skew partitions

Lists all skew partitions with the given outer shape and given (skew) weight

Lists all skew partitions with the given outer shape and any (skew) weight

Lists all skew partitions with the given inner shape and given (skew) weight