Properties of Invariant Rings

The following functions return non-trivial structural properties of invariant rings of finite groups.

Sections Steenrod Operations and Minimalization and Homogeneous Module Testing present functions whose scope is not limited to the context of invariant theory.

HilbertSeries(R) : RngInvar -> FldFunUElt
The Hilbert series of the invariant ring R=K[V]G, returned as an element of the rational function field Z(t). The Molien series of G will be used if possible; otherwise (the modular matrix group case) secondary invariants for R will be constructed to determine the result.
HilbertSeriesApproximation(R, n) : RngInvar, RngIntElt -> RngSerLaurElt
The Hilbert series of the invariant ring R=K[V]G, returned as a Laurent series with n known terms. The conjugacy classes of G will be used to compute the approximation.
IsCohenMacaulay(R) : RngInvar -> BoolElt
Given the invariant ring R=K[V]G of the group G over the field K, return true iff R is Cohen-Macaulay. This is always true in the non-modular case. Otherwise, secondary invariants for R will be constructed to determine the result.
FreeResolution(R) : RngInvar -> [ ModMPol ]
Given the invariant ring R=K[V]G of the group G over the field K, return a free resolution of (the module of) R. This is just the same as the invocation FreeResolution(Module(R)). The free resolution is returned as a sequence F such that F[1] is M, F[i + 1] is the syzygy module of F[i] for i<#F, and the last element of F is free (its basis has no syzygies).

MinimalFreeResolution(R) : RngInvar -> [ ModMPol ]
Given the invariant ring R=K[V]G of the group G over the field K, return a minimal free resolution of (the module of) R. This is just the same as the invocation MinimalFreeResolution(Module(R)).
HomologicalDimension(R) : RngInvar -> RngInt
Given the invariant ring R=K[V]G of the group G over the field K, return the homological dimension of R. This is just the length of a minimal free resolution of R minus 1 (taking account of the fact that the module M of R is always included in the free resolution).
Depth(R) : RngInvar -> RngIntElt
Given the invariant ring R=K[V]G of the group G over the field K, return the depth of R. This is n - d by the Auslander-Buchsbaum formula, where n is the rank of R and d is the homological dimension of R.

Example RngInvar_Depth (H117E13)

We construct a minimal free resolution of the invariant ring of the group generated by the degree-5 Jordan block over GF(2) and verify that the depth is 3.
> K:=GF(2);
> G := MatrixGroup<5,K | [1,0,0,0,0, 1,1,0,0,0, 0,1,1,0,0,
>                         0,0,1,1,0, 0,0,0,1,1]>;
> R := InvariantRing(G);
> time F := MinimalFreeResolution(R);
Time: 0.690
> F;
Chain complex with terms of degree 3 down to -1
Dimensions of terms: 0 1 7 22 0
> Depth(R);
3
> HomologicalDimension(R);
2
V2.28, 13 July 2023