from itertools import accumulate
def w(mu):
    """
    Return a permutation with cycle type `mu`. 
    """
    psmu = list(accumulate(mu))
    nn = list(range(1, sum(mu)+1))
    cycles = [tuple(nn[:psmu[0]])]
    for i,ps in enumerate(psmu[1:]):
        cycles.append(tuple(nn[psmu[i]:ps]))
    return Permutation(cycles)

def mult_triv(n):
    r"""
    Return the matrix whose `(i,j)`th entry is the multiplicity of the restriction of `V_\lambda` to the cyclic group generated by `w_\mu`, where `\lambda` is the ith partition and `\mu` is the jth partition. 
    """
    T = symmetrica.chartafel(n)
    Pars = list(Partitions(n))
    l = len(Pars)
    A = Matrix(ZZ, l, l)
    for j,mu in enumerate(Partitions(n)):
        wmu = w(mu)
        N = lcm(mu)
        for i,la in enumerate(Partitions(n)):
            A[i,j] = sum(T[i,Pars.index(Partition((wmu^k).cycle_type()))]*euler_phi(N/k) for k in divisors(N))/N
    return A

L = load('https://www.imsc.res.in/~amri/invariant_vectors/multiplicities.sobj')

for n in range(1,15):
    for i,la in enumerate(Partitions(n)):
        for j,mu in enumerate(Partitions(n)):
            if L[n-1][i,j]==0:
                print(la,mu)