ProjectivesOfInjectiveDimensionAtMostDominantDimension
The indecomposable projective modules whose injective dimension is at most their dominant dimension.
✓ checked against that system · ! checked, with disagreements (hover a chip)FindStat
St000998via DyckPath✓ProjectivesOfInjectiveDimensionAtMostDominantDimension(path)The indecomposable projective modules whose injective dimension is at most their dominant dimension.Typed signatures
| Type | Package | Applies |
|---|---|---|
(dyck_path) -> number | combinatorics | always |
Details
- Defined over
DyckPathas an expression in_x, evaluated by compute-engine — the definition IS the implementation. - Takes a
DyckPathand 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 St000998, read with the dominant dimension of the module itself: that is the reading its rows follow.
Definition
Epsil, as the implementation runs it.
on DyckPath, over _x
0 if Length(_x) < 1 else Apply(
(series: list<integer>) => Apply(
(projectiveInjectiveDims: list<integer>) => Apply(
(projectiveDominantDims: list<integer>) => Count(Filter(Range(1, Length(_x) / 2 +
1), Function(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,
),
),
),
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
Properties #
About
| Examples | 5 |
|---|---|
| Crosswalk | FindStat |