edit this statistic or download as text // json
Identifier
Values
=>
Cc0005;cc-rep
[1,0]=>1 [1,0,1,0]=>1 [1,1,0,0]=>2 [1,0,1,0,1,0]=>1 [1,0,1,1,0,0]=>2 [1,1,0,0,1,0]=>2 [1,1,0,1,0,0]=>2 [1,1,1,0,0,0]=>3 [1,0,1,0,1,0,1,0]=>1 [1,0,1,0,1,1,0,0]=>1 [1,0,1,1,0,0,1,0]=>2 [1,0,1,1,0,1,0,0]=>1 [1,0,1,1,1,0,0,0]=>3 [1,1,0,0,1,0,1,0]=>1 [1,1,0,0,1,1,0,0]=>3 [1,1,0,1,0,0,1,0]=>1 [1,1,0,1,0,1,0,0]=>2 [1,1,0,1,1,0,0,0]=>3 [1,1,1,0,0,0,1,0]=>3 [1,1,1,0,0,1,0,0]=>3 [1,1,1,0,1,0,0,0]=>3 [1,1,1,1,0,0,0,0]=>4 [1,0,1,0,1,0,1,0,1,0]=>1 [1,0,1,0,1,0,1,1,0,0]=>1 [1,0,1,0,1,1,0,0,1,0]=>2 [1,0,1,0,1,1,0,1,0,0]=>1 [1,0,1,0,1,1,1,0,0,0]=>2 [1,0,1,1,0,0,1,0,1,0]=>2 [1,0,1,1,0,0,1,1,0,0]=>3 [1,0,1,1,0,1,0,0,1,0]=>1 [1,0,1,1,0,1,0,1,0,0]=>2 [1,0,1,1,0,1,1,0,0,0]=>2 [1,0,1,1,1,0,0,0,1,0]=>3 [1,0,1,1,1,0,0,1,0,0]=>3 [1,0,1,1,1,0,1,0,0,0]=>2 [1,0,1,1,1,1,0,0,0,0]=>4 [1,1,0,0,1,0,1,0,1,0]=>1 [1,1,0,0,1,0,1,1,0,0]=>2 [1,1,0,0,1,1,0,0,1,0]=>3 [1,1,0,0,1,1,0,1,0,0]=>2 [1,1,0,0,1,1,1,0,0,0]=>4 [1,1,0,1,0,0,1,0,1,0]=>1 [1,1,0,1,0,0,1,1,0,0]=>2 [1,1,0,1,0,1,0,0,1,0]=>2 [1,1,0,1,0,1,0,1,0,0]=>2 [1,1,0,1,0,1,1,0,0,0]=>3 [1,1,0,1,1,0,0,0,1,0]=>3 [1,1,0,1,1,0,0,1,0,0]=>2 [1,1,0,1,1,0,1,0,0,0]=>3 [1,1,0,1,1,1,0,0,0,0]=>4 [1,1,1,0,0,0,1,0,1,0]=>2 [1,1,1,0,0,0,1,1,0,0]=>4 [1,1,1,0,0,1,0,0,1,0]=>2 [1,1,1,0,0,1,0,1,0,0]=>3 [1,1,1,0,0,1,1,0,0,0]=>4 [1,1,1,0,1,0,0,0,1,0]=>2 [1,1,1,0,1,0,0,1,0,0]=>3 [1,1,1,0,1,0,1,0,0,0]=>3 [1,1,1,0,1,1,0,0,0,0]=>4 [1,1,1,1,0,0,0,0,1,0]=>4 [1,1,1,1,0,0,0,1,0,0]=>4 [1,1,1,1,0,0,1,0,0,0]=>4 [1,1,1,1,0,1,0,0,0,0]=>4 [1,1,1,1,1,0,0,0,0,0]=>5 [1,0,1,0,1,0,1,0,1,0,1,0]=>1 [1,0,1,0,1,0,1,0,1,1,0,0]=>1 [1,0,1,0,1,0,1,1,0,0,1,0]=>1 [1,0,1,0,1,0,1,1,0,1,0,0]=>1 [1,0,1,0,1,0,1,1,1,0,0,0]=>2 [1,0,1,0,1,1,0,0,1,0,1,0]=>2 [1,0,1,0,1,1,0,0,1,1,0,0]=>2 [1,0,1,0,1,1,0,1,0,0,1,0]=>1 [1,0,1,0,1,1,0,1,0,1,0,0]=>2 [1,0,1,0,1,1,0,1,1,0,0,0]=>2 [1,0,1,0,1,1,1,0,0,0,1,0]=>2 [1,0,1,0,1,1,1,0,0,1,0,0]=>2 [1,0,1,0,1,1,1,0,1,0,0,0]=>2 [1,0,1,0,1,1,1,1,0,0,0,0]=>3 [1,0,1,1,0,0,1,0,1,0,1,0]=>1 [1,0,1,1,0,0,1,0,1,1,0,0]=>2 [1,0,1,1,0,0,1,1,0,0,1,0]=>3 [1,0,1,1,0,0,1,1,0,1,0,0]=>2 [1,0,1,1,0,0,1,1,1,0,0,0]=>4 [1,0,1,1,0,1,0,0,1,0,1,0]=>1 [1,0,1,1,0,1,0,0,1,1,0,0]=>2 [1,0,1,1,0,1,0,1,0,0,1,0]=>2 [1,0,1,1,0,1,0,1,0,1,0,0]=>2 [1,0,1,1,0,1,0,1,1,0,0,0]=>3 [1,0,1,1,0,1,1,0,0,0,1,0]=>2 [1,0,1,1,0,1,1,0,0,1,0,0]=>2 [1,0,1,1,0,1,1,0,1,0,0,0]=>3 [1,0,1,1,0,1,1,1,0,0,0,0]=>3 [1,0,1,1,1,0,0,0,1,0,1,0]=>2 [1,0,1,1,1,0,0,0,1,1,0,0]=>4 [1,0,1,1,1,0,0,1,0,0,1,0]=>2 [1,0,1,1,1,0,0,1,0,1,0,0]=>3 [1,0,1,1,1,0,0,1,1,0,0,0]=>4 [1,0,1,1,1,0,1,0,0,0,1,0]=>2 [1,0,1,1,1,0,1,0,0,1,0,0]=>3 [1,0,1,1,1,0,1,0,1,0,0,0]=>3 [1,0,1,1,1,0,1,1,0,0,0,0]=>3 [1,0,1,1,1,1,0,0,0,0,1,0]=>4 [1,0,1,1,1,1,0,0,0,1,0,0]=>4 [1,0,1,1,1,1,0,0,1,0,0,0]=>4 [1,0,1,1,1,1,0,1,0,0,0,0]=>3 [1,0,1,1,1,1,1,0,0,0,0,0]=>5 [1,1,0,0,1,0,1,0,1,0,1,0]=>1 [1,1,0,0,1,0,1,0,1,1,0,0]=>2 [1,1,0,0,1,0,1,1,0,0,1,0]=>2 [1,1,0,0,1,0,1,1,0,1,0,0]=>2 [1,1,0,0,1,0,1,1,1,0,0,0]=>3 [1,1,0,0,1,1,0,0,1,0,1,0]=>2 [1,1,0,0,1,1,0,0,1,1,0,0]=>4 [1,1,0,0,1,1,0,1,0,0,1,0]=>2 [1,1,0,0,1,1,0,1,0,1,0,0]=>3 [1,1,0,0,1,1,0,1,1,0,0,0]=>3 [1,1,0,0,1,1,1,0,0,0,1,0]=>4 [1,1,0,0,1,1,1,0,0,1,0,0]=>4 [1,1,0,0,1,1,1,0,1,0,0,0]=>3 [1,1,0,0,1,1,1,1,0,0,0,0]=>5 [1,1,0,1,0,0,1,0,1,0,1,0]=>1 [1,1,0,1,0,0,1,0,1,1,0,0]=>2 [1,1,0,1,0,0,1,1,0,0,1,0]=>2 [1,1,0,1,0,0,1,1,0,1,0,0]=>2 [1,1,0,1,0,0,1,1,1,0,0,0]=>3 [1,1,0,1,0,1,0,0,1,0,1,0]=>1 [1,1,0,1,0,1,0,0,1,1,0,0]=>2 [1,1,0,1,0,1,0,1,0,0,1,0]=>2 [1,1,0,1,0,1,0,1,0,1,0,0]=>2 [1,1,0,1,0,1,0,1,1,0,0,0]=>1 [1,1,0,1,0,1,1,0,0,0,1,0]=>3 [1,1,0,1,0,1,1,0,0,1,0,0]=>2 [1,1,0,1,0,1,1,0,1,0,0,0]=>1 [1,1,0,1,0,1,1,1,0,0,0,0]=>4 [1,1,0,1,1,0,0,0,1,0,1,0]=>2 [1,1,0,1,1,0,0,0,1,1,0,0]=>4 [1,1,0,1,1,0,0,1,0,0,1,0]=>2 [1,1,0,1,1,0,0,1,0,1,0,0]=>3 [1,1,0,1,1,0,0,1,1,0,0,0]=>3 [1,1,0,1,1,0,1,0,0,0,1,0]=>2 [1,1,0,1,1,0,1,0,0,1,0,0]=>3 [1,1,0,1,1,0,1,0,1,0,0,0]=>1 [1,1,0,1,1,0,1,1,0,0,0,0]=>4 [1,1,0,1,1,1,0,0,0,0,1,0]=>4 [1,1,0,1,1,1,0,0,0,1,0,0]=>4 [1,1,0,1,1,1,0,0,1,0,0,0]=>3 [1,1,0,1,1,1,0,1,0,0,0,0]=>4 [1,1,0,1,1,1,1,0,0,0,0,0]=>5 [1,1,1,0,0,0,1,0,1,0,1,0]=>2 [1,1,1,0,0,0,1,0,1,1,0,0]=>3 [1,1,1,0,0,0,1,1,0,0,1,0]=>4 [1,1,1,0,0,0,1,1,0,1,0,0]=>3 [1,1,1,0,0,0,1,1,1,0,0,0]=>5 [1,1,1,0,0,1,0,0,1,0,1,0]=>2 [1,1,1,0,0,1,0,0,1,1,0,0]=>3 [1,1,1,0,0,1,0,1,0,0,1,0]=>2 [1,1,1,0,0,1,0,1,0,1,0,0]=>1 [1,1,1,0,0,1,0,1,1,0,0,0]=>4 [1,1,1,0,0,1,1,0,0,0,1,0]=>4 [1,1,1,0,0,1,1,0,0,1,0,0]=>3 [1,1,1,0,0,1,1,0,1,0,0,0]=>4 [1,1,1,0,0,1,1,1,0,0,0,0]=>5 [1,1,1,0,1,0,0,0,1,0,1,0]=>2 [1,1,1,0,1,0,0,0,1,1,0,0]=>3 [1,1,1,0,1,0,0,1,0,0,1,0]=>2 [1,1,1,0,1,0,0,1,0,1,0,0]=>1 [1,1,1,0,1,0,0,1,1,0,0,0]=>4 [1,1,1,0,1,0,1,0,0,0,1,0]=>2 [1,1,1,0,1,0,1,0,0,1,0,0]=>1 [1,1,1,0,1,0,1,0,1,0,0,0]=>3 [1,1,1,0,1,0,1,1,0,0,0,0]=>4 [1,1,1,0,1,1,0,0,0,0,1,0]=>4 [1,1,1,0,1,1,0,0,0,1,0,0]=>3 [1,1,1,0,1,1,0,0,1,0,0,0]=>4 [1,1,1,0,1,1,0,1,0,0,0,0]=>4 [1,1,1,0,1,1,1,0,0,0,0,0]=>5 [1,1,1,1,0,0,0,0,1,0,1,0]=>3 [1,1,1,1,0,0,0,0,1,1,0,0]=>5 [1,1,1,1,0,0,0,1,0,0,1,0]=>3 [1,1,1,1,0,0,0,1,0,1,0,0]=>4 [1,1,1,1,0,0,0,1,1,0,0,0]=>5 [1,1,1,1,0,0,1,0,0,0,1,0]=>3 [1,1,1,1,0,0,1,0,0,1,0,0]=>4 [1,1,1,1,0,0,1,0,1,0,0,0]=>4 [1,1,1,1,0,0,1,1,0,0,0,0]=>5 [1,1,1,1,0,1,0,0,0,0,1,0]=>3 [1,1,1,1,0,1,0,0,0,1,0,0]=>4 [1,1,1,1,0,1,0,0,1,0,0,0]=>4 [1,1,1,1,0,1,0,1,0,0,0,0]=>4 [1,1,1,1,0,1,1,0,0,0,0,0]=>5 [1,1,1,1,1,0,0,0,0,0,1,0]=>5 [1,1,1,1,1,0,0,0,0,1,0,0]=>5 [1,1,1,1,1,0,0,0,1,0,0,0]=>5 [1,1,1,1,1,0,0,1,0,0,0,0]=>5 [1,1,1,1,1,0,1,0,0,0,0,0]=>5 [1,1,1,1,1,1,0,0,0,0,0,0]=>6
search for individual values
searching the database for the individual values of this statistic
/ search for generating function
searching the database for statistics with the same generating function
click to show known generating functions       
Description
The number of indecomposable injective modules with codominant dimension equal to the dominant dimension of the linear Nakayama algebra corresponding to a Dyck path.
The dominant dimension is given by St000685The dominant dimension of the linear Nakayama algebra corresponding to a Dyck path..
The correspondence between linear Nakayama algebras and Dyck paths is explained on the Nakayama algebras page.
Code
gap('LoadPackage("QPA");')

import tempfile as _tf, os as _os

# GAP helper: given a Kupisch series L, compute
# (1) d = dominant dimension of the Nakayama algebra A(L)
# (2) number of indecomposable injectives with codominant dimension = d
#
# IMPORTANT FIXES vs the broken version:
# - Do NOT try to reimplement domdim in Python; use QPA itself.
# - In QPA, DominantDimensionOfModule(M, bound) returns either an integer <= bound
#   or 'false' if domdim(M) > bound. So checking "= d" is wrong when domdim(M) > d.
#   We must test ">= d" by allowing the 'false' case.
# - The statistic asks for codominant dimension, i.e. domdim(Dual(M)).
# - Handle the zero/empty case safely (n=0 => return 0).
_gap_code = r"""
DeclareOperation("numbersinjcodomdimd", [IsList]);

InstallMethod(numbersinjcodomdimd, "for a representation of a quiver", [IsList],0,function(LIST)
    local A, R, RR, d, list;
    list := LIST[1];
    d := LIST[2];
    A := NakayamaAlgebra(GF(3),list);
    R := IndecInjectiveModules(A);
    RR := Filtered(R,x->DominantDimensionOfModule(DualOfModule(x),d)=d);
    return(Size(RR));
end);
"""

with _tf.NamedTemporaryFile(mode="w", suffix=".g", delete=False, dir="/tmp") as _f:
    _f.write('LoadPackage("QPA");;\n')
    _f.write(_gap_code)
    _tmp = _f.name
gap.eval('Read("' + _tmp + '");')
_os.unlink(_tmp)

def kupisch(D):
    DR = D.reverse()
    H = DR.heights()
    return [1 + H[i] for i, s in enumerate(DR) if s == 0] + [1]

def proj_to_inj_nak(L):
    n = len(L)
    Liste_d = []
    for j in range(1, n + 1):
        candidates = []
        for k in L:
            r = (j - k) % n
            if r == 0: r = n
            if k >= L[r - 1]:
                candidates.append(k)
        Liste_d.append(min(candidates))
    return Liste_d

def domdim_from_kupisch(L):
    n = len(L)
    Liste_d = proj_to_inj_nak(L)
    List1 = set()
    for i in range(1, n + 1):
        r = i % n
        if r == 0: r = n
        s = (i + 1) % n
        if s == 0: s = n
        if Liste_d[s - 1] <= Liste_d[r - 1]:
            List1.add(i - 1)
    List2 = set()
    for i in range(1, n + 1):
        r = i % n
        if r == 0: r = n
        s = (i - 1) % n
        if s == 0: s = n
        if L[s - 1] <= L[r - 1]:
            List2.add(i - 1)
    List_not_in_List2 = [i for i in range(n) if i not in List2]
    if not List_not_in_List2:
        return n
    List_for_dom = []
    for j in List_not_in_List2:
        List_for_dom.append([(j + L[j] - 1, L[j])])
    def f(x, y):
        c = (x - y) % n
        if c == 0: c = n
        z = (x + 1) % n
        if z == 0: z = n
        return (c, Liste_d[z - 1] - y)
    for r_idx in range(len(List_for_dom)):
        while True:
            last = List_for_dom[r_idx][-1]
            result = f(last[0], last[1])
            if result[0] % n in List1:
                List_for_dom[r_idx].append(result)
            else:
                break
    temp2 = [len(lst) for lst in List_for_dom]
    return min(temp2)

def statistic(D):
    K = kupisch(D)
    d = domdim_from_kupisch(K)
    return ZZ(gap.numbersinjcodomdimd([K, d]))
Created
Oct 29, 2017 at 17:34 by Rene Marczinzik
Updated
Mar 12, 2026 at 14:40 by Nupur Jain