Processing math: 100%

First time here? Check out the FAQ!

Ask Your Question
1

Major index of skew-SYT

asked 6 years ago

joakim_uhlin gravatar image

updated 4 years ago

FrédéricC gravatar image

For a standard Young tableaux (SYT), I can compute the major index as follows:

T = Tableau([[1,2,3],[4,5]])
T.major_index()

Is there a way to compute the major index of a skew-SYT currently? Something like:

S = SkewTableaux().from_expr([[1,1],[[5],[3,4],[1,2]]])
S.major_index()

At the moment, it seems major_index() is not defined for the SkewTableau-class.

EDIT: The major index of a (skew) standard Young tableau T, denoted maj(T), is defined as follows. A descent of T is an entry i such that i+1 appears strictly below i in T. Define maj(T) as the sum of all descents of T. For example, the major index of the skew standard Young tableau above is 2+4=6.

FindStat has a definition, although they only define it for non-skew tableau. But the definition extends trivially to skew-shapes as well.

Preview: (hide)

Comments

Can you give a reference to a (mathematical) definition?

rburing gravatar imagerburing ( 6 years ago )

Added the definition of major index.

joakim_uhlin gravatar imagejoakim_uhlin ( 6 years ago )

1 Answer

Sort by » oldest newest most voted
1

answered 5 years ago

joakim_uhlin gravatar image

I decided to finally write this myself! Posting here as an answer for anyone that is interested. I decided to use the built-in SemistandardSkewTableaux class instead of the SkewTableaux class as it seems that the latter does not have a ''.list()'' method. It would also be easy to modify this code to make it work on more general skew SSYT.

def des(T):
    out = []
    for i in range(1,T.size()):
        if T.cells_containing(i)[0][0]<T.cells_containing(i+1)[0][0]:
            out += [i]
    return out

def maj(T):
    return sum(des(T))

def majpol(lmbda,mu):
    var('q')
    out = 0
    for T in SemistandardSkewTableaux([lmbda,mu],[1]*(sum(lmbda)-sum(mu))):
        out += q**maj(T)
    return out

So one can write for example

lmbda = [3,2]
mu = [1]
majpol(lmbda,mu)

which outputs

q^4 + q^3 + 2*q^2 + q
Preview: (hide)
link

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower

Stats

Asked: 6 years ago

Seen: 524 times

Last updated: Nov 08 '19