Macaulay2 » Documentation
Packages » BettiCharacters » action » Semidirect
next | previous | forward | backward | up | index | toc

Semidirect -- action of semidirect product with torus

Description

Consider a polynomial ring $R$ and an $R$-module $M$ with a $\mathbb{Z}^r$-grading corresponding to the action of a torus $T$. Let $G$ be a finite group acting on $R$ and $M$ in a way that is compatible with multiplication. Then the semidirect product $T\rtimes G$ acts on $R$ and $M$. For a given degree $d \in \mathbb{Z}^r$, the graded components $R_d$ and $M_d$ need not be representations of $G$. However, if $\mathcal{O}$ is the orbit of $d$ under the action of $G$ on the character group $\mathbb{Z}^r$ of $T$, then $\bigoplus_{d\in\mathcal{O}} R_d$ and $\bigoplus_{d\in\mathcal{O}} M_d$ are representations of $T\rtimes G$. Starting with version 2.3, the BettiCharacters package allows one to compute the characters of $G$ on these representations using the Semidirect option of the action method, and specifying a single degree $d$ in the orbit $\mathcal{O}$.

The value of the Semidirect option is a list of two functions. The first function takes as input a degree $d$ and returns its orbit $\mathcal{O}$ as output. This function is stored in the action under the key degreeOrbit. The second function takes as input a degree $d$ and returns a user-chosen representative $d'$ from the orbit $\mathcal{O}$ of $d$. This function is stored in the action under the key degreeRepresentative. When computing the actors or the characters of $G$ on $\bigoplus_{d\in\mathcal{O}} R_d$ and $\bigoplus_{d\in\mathcal{O}} M_d$, the values are stored only for the chosen representative $d'$, and computing the actors or characters of $G$ for another degree in the same orbit produces the same result as for $d'$. By default, both functions are set to the identity, which corresponds to the action of the direct product $T\times G$.

A typical use case is that of the symmetric group $\mathfrak{S}_n$ acting on a fine graded polynomial ring $\Bbbk [x_1,\dots,x_n]$ by permuting the variables. The symmetric group also acts by permuting the entries of the degrees $d \in \mathbb{Z}^n$. In this case, the orbit of $d$ consists of all its permutations, which can be obtained with the function uniquePermutations. As a representative of this orbit we choose the unique degree $d$ whose entries are sorted in nonincreasing order from left to right; this can be obtained with the function rsort.

We illustrate this use case. First, consider the action on the polynomial ring.

i1 : R = QQ[x_1..x_4,Degrees=>{{1,0,0,0},{0,1,0,0},{0,0,1,0},{0,0,0,1}}]

o1 = R

o1 : PolynomialRing
i2 : S4 = symmetricGroupActors R

o2 = {| x_2 x_3 x_4 x_1 |, | x_2 x_3 x_1 x_4 |, | x_2 x_1 x_4 x_3 |, | x_2
     ------------------------------------------------------------------------
     x_1 x_3 x_4 |, | x_1 x_2 x_3 x_4 |}

o2 : List
i3 : A = action(R,S4,Semidirect=>{uniquePermutations,rsort})

o3 = PolynomialRing with 5 actors

o3 : ActionOnGradedModule
i4 : actors(A,{1,1,1,0})

o4 = {{1, 1, 1, 0} | 0 1 0 0 |, {1, 1, 1, 0} | 1 0 0 0 |, {1, 1, 1, 0} | 0 1
      {1, 1, 0, 1} | 0 0 1 0 |  {1, 1, 0, 1} | 0 0 1 0 |  {1, 1, 0, 1} | 1 0
      {1, 0, 1, 1} | 0 0 0 1 |  {1, 0, 1, 1} | 0 0 0 1 |  {1, 0, 1, 1} | 0 0
      {0, 1, 1, 1} | 1 0 0 0 |  {0, 1, 1, 1} | 0 1 0 0 |  {0, 1, 1, 1} | 0 0
     ------------------------------------------------------------------------
     0 0 |, {1, 1, 1, 0} | 1 0 0 0 |, {1, 1, 1, 0} | 1 0 0 0 |}
     0 0 |  {1, 1, 0, 1} | 0 1 0 0 |  {1, 1, 0, 1} | 0 1 0 0 |
     0 1 |  {1, 0, 1, 1} | 0 0 0 1 |  {1, 0, 1, 1} | 0 0 1 0 |
     1 0 |  {0, 1, 1, 1} | 0 0 1 0 |  {0, 1, 1, 1} | 0 0 0 1 |

o4 : List
i5 : character(A,{1,1,1,0})

o5 = Character over QQ
      
     (0, {1, 1, 1, 0})  |  0  1  0  2  4

o5 : Character

As expected, the character is the same if we compute it for a different degree in the same orbit.

i6 : oo == character(A,{1,0,1,1})

o6 = true

Next, consider the quotient by an ideal stable under the group action.

i7 : I = ideal apply(subsets(gens R,3),product)

o7 = ideal (x x x , x x x , x x x , x x x )
             1 2 3   1 2 4   1 3 4   2 3 4

o7 : Ideal of R
i8 : M = R/I

o8 = M

o8 : QuotientRing
i9 : B = action(M,S4,Semidirect=>{uniquePermutations,rsort})

o9 = QuotientRing with 5 actors

o9 : ActionOnGradedModule
i10 : character(B,{2,1,0,0})

o10 = Character over QQ
       
      (0, {2, 1, 0, 0})  |  0  0  0  2  12

o10 : Character

Similarly, the Semidirect option can be used for actions on complexes and for computing Betti characters of a module.

i11 : RI = res I

       1      4      3
o11 = R  <-- R  <-- R
                     
      0      1      2

o11 : Complex
i12 : C = action(RI,S4,Semidirect=>{uniquePermutations,rsort})

o12 = Complex with 5 actors

o12 : ActionOnComplex
i13 : character C

o13 = Character over QQ
       
      (0, {0, 0, 0, 0})  |   1  1   1  1  1
      (1, {1, 1, 1, 0})  |   0  1   0  2  4
      (2, {1, 1, 1, 1})  |  -1  0  -1  1  3

o13 : Character

See also

Functions with optional argument named Semidirect:

  • *(CharacterDecomposition,CharacterTable,Semidirect=>...)
  • action(...,Semidirect=>...)
  • character(...,Semidirect=>...)

For the programmer

The object Semidirect is a symbol.


The source of this document is in /build/reproducible-path/macaulay2-1.26.05+ds/M2/Macaulay2/packages/BettiCharacters.m2:3859:0.