Skip to content

NonInjectiveProjectivesOfDominantDimensionEqualToInjectiveDimension ​

The indecomposable projective modules that are not injective and whose dominant dimension equals their injective dimension.

✓ checked against that system · ! checked, with disagreements (hover a chip)FindStatSt001088via DyckPath✓
NonInjectiveProjectivesOfDominantDimensionEqualToInjectiveDimension(path)The indecomposable projective modules that are not injective and whose dominant dimension equals their injective dimension.
Typed signatures
TypePackageApplies
(dyck_path) -> numbercombinatoricsalways

Domain: Dyck path statistics

Details
  • Defined over DyckPath as an expression in _x, evaluated by compute-engine — the definition IS the implementation.
  • Takes a DyckPath and nothing else — it reads values against their positions, or walks the orbits, so it needs the bijection. Applying it to a bare list is a type error, not a wrong answer.
  • FindStat's St001088.

Definition

Epsil, as the implementation runs it.

on DyckPath, over _x

0 if Length(_x) < 1 else Apply(
                                (series: list<integer>) => Apply((leftSeries: list<integer>) => Apply(
                                                                                                       (projectiveInjectiveDims: list<integer>) => Apply(
                                                                                                                                                          (projectiveDominantDims: list<integer>) => Count(Filter(Range(1, Length(_x) / 2 +
                                                                                                                                                                                                                           1), Function(leftSeries[v] > series[v] &&
                                                                                                                                                                                                                                       projectiveInjectiveDims[v] == projectiveDominantDims[v], v))),
                                                                                                                                                          Map(Function(Fold(
                                                                                                                                                                             Function(Apply((socle: integer) => Apply(
                                                                                                                                                                                                                       (hull: integer) => Apply(
                                                                                                                                                                                                                                                 (flag: integer) => [a[1], 0, a[3] + flag, flag] if a[2] == 0 else [hull, a[1] - hull, a[3] + flag, flag],
                                                                                                                                                                                                                                                 a[4] *
                                                                                                                                                                                                                                                 (1 if a[2] == 0 ||
                                                                                                                                                                                                                                                       series[hull + 1] ==
                                                                                                                                                                                                                                                       socle + 1 -
                                                                                                                                                                                                                                                       hull else 0),
                                                                                                                                                                                                                                               ),
                                                                                                                                                                                                                       Min(Filter(Range(0, socle, 1), Function(x +
                                                                                                                                                                                                                                                               series[x + 1] >
                                                                                                                                                                                                                                                               socle, x))),
                                                                                                                                                                                                                     ), Max(a[1] + a[2] -
                                                                                                                                                                                                                           1, 0)), a, b),
                                                                                                                                                                             [v - 1, series[v], 0, 1],
                                                                                                                                                                             Range(1, Length(_x) / 2 +
                                                                                                                                                                                      1),
                                                                                                                                                                           )[3], v), Range(1, Length(_x) / 2 +
                                                                                                                                                                                             1)),
                                                                                                                                                        ),
                                                                                                       Map(
                                                                                                            Function(Fold(
                                                                                                                           Function(Apply((socle: integer) => Apply(
                                                                                                                                                                     (hull: integer) => [a[1], a[2], a[3]] if a[1] == hull else [hull, a[1] - hull, a[3] + 1],
                                                                                                                                                                     Min(Filter(
                                                                                                                                                                                 Range(0, socle, 1),
                                                                                                                                                                                 Function(x +
                                                                                                                                                                                          series[x + 1] >
                                                                                                                                                                                          socle, x),
                                                                                                                                                                               )),
                                                                                                                                                                   ), a[1] + a[2] -
                                                                                                                                                                     1), a, b),
                                                                                                                           [v - 1, series[v], 0],
                                                                                                                           Range(1, Length(_x) / 2 +
                                                                                                                                    1),
                                                                                                                         )[3], v),
                                                                                                            Range(1, Length(_x) / 2 +
                                                                                                                     1),
                                                                                                          ),
                                                                                                     ), Join([0], series)),
                                Apply(
                                       (h: list<integer>) => Apply(
                                                                    (ups: list<integer>) => Join(Map(
                                                                                                      Function(h[ups[Length(_x) / 2 +
                                                                                                                     1 -
                                                                                                                     t]] +
                                                                                                               1, t),
                                                                                                      Range(1, Length(_x) / 2),
                                                                                                    ), [1]),
                                                                    Filter(
                                                                            Range(1, Length(_x)),
                                                                            Function(_x[i] == 1, i),
                                                                          ),
                                                                  ),
                                       Map(
                                            Function(Sum(Map(
                                                              Function(
                                                                        2 *
                                                                        _x[k] - 1,
                                                                        k,
                                                                      ),
                                                              Range(1, i),
                                                            )), i),
                                            Range(1, Length(_x)),
                                          ),
                                     ),
                              )

Examples

Basic #

the step word UUDDUDUUDDUD

live ↗
InNonInjectiveProjectivesOfDominantDimensionEqualToInjectiveDimension(DyckPath⁡([1,1,0,0,1,0]))\mathrm{NonInjectiveProjectivesOfDominantDimensionEqualToInjectiveDimension}({\operatorname{DyckPath}}([1, 1, 0, 0, 1, 0]))Out22

the step word UDUUDDUDUUDD

live ↗
InNonInjectiveProjectivesOfDominantDimensionEqualToInjectiveDimension(DyckPath⁡([1,0,1,1,0,0]))\mathrm{NonInjectiveProjectivesOfDominantDimensionEqualToInjectiveDimension}({\operatorname{DyckPath}}([1, 0, 1, 1, 0, 0]))Out22
Properties #

FindStat's value for [1,0]

live ↗
InCombinatorialStat(DyckPath⁡([1,0]),NonInjectiveProjectivesOfDominantDimensionEqualToInjectiveDimension)\mathrm{CombinatorialStat}({\operatorname{DyckPath}}([1, 0]), \text{NonInjectiveProjectivesOfDominantDimensionEqualToInjectiveDimension})Out11

Known value · FindStat St001088

FindStat's value for [1,0,1,0]

live ↗
InCombinatorialStat(DyckPath⁡([1,0,1,0]),NonInjectiveProjectivesOfDominantDimensionEqualToInjectiveDimension)\mathrm{CombinatorialStat}({\operatorname{DyckPath}}([1, 0, 1, 0]), \text{NonInjectiveProjectivesOfDominantDimensionEqualToInjectiveDimension})Out11

Known value · FindStat St001088

FindStat's value for [1,1,0,0]

live ↗
InCombinatorialStat(DyckPath⁡([1,1,0,0]),NonInjectiveProjectivesOfDominantDimensionEqualToInjectiveDimension)\mathrm{CombinatorialStat}({\operatorname{DyckPath}}([1, 1, 0, 0]), \text{NonInjectiveProjectivesOfDominantDimensionEqualToInjectiveDimension})Out22

Known value · FindStat St001088

About
Examples5
CrosswalkFindStat