next | previous | forward | backward | up | top | index | toc | Macaulay2 website
InvariantRing :: isAbelian

isAbelian -- check whether a finite matrix group is Abelian

Synopsis

Description

This function is provided by the package InvariantRing.

The following example defines the action of a symmetric group permuting the three variables generating a polynomial ring.

i1 : R = QQ[x_1..x_4]

o1 = R

o1 : PolynomialRing
i2 : P = apply(3, i -> permutationMatrix(4, [i + 1, i + 2] ) )

o2 = {| 0 1 0 0 |, | 1 0 0 0 |, | 1 0 0 0 |}
      | 1 0 0 0 |  | 0 0 1 0 |  | 0 1 0 0 |
      | 0 0 1 0 |  | 0 1 0 0 |  | 0 0 0 1 |
      | 0 0 0 1 |  | 0 0 0 1 |  | 0 0 1 0 |

o2 : List
i3 : S4 = finiteAction(P, R)

o3 = R <- {| 0 1 0 0 |, | 1 0 0 0 |, | 1 0 0 0 |}
           | 1 0 0 0 |  | 0 0 1 0 |  | 0 1 0 0 |
           | 0 0 1 0 |  | 0 1 0 0 |  | 0 0 0 1 |
           | 0 0 0 1 |  | 0 0 0 1 |  | 0 0 1 0 |

o3 : FiniteGroupAction
i4 : isAbelian S4

o4 = false

The following example defines the action of the product of two cyclic groups. One group has order 3 and cyclically permutes the three variables generating a polynomial ring. The other group has order 2 and multiplies the variables by -1.

i5 : R = QQ[x_1..x_3]

o5 = R

o5 : PolynomialRing
i6 : L = {matrix {{0,0,1},{0,1,0},{1,0,0}}, matrix {{-1,0,0},{0,-1,0},{0,0,-1}} }

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

o6 : List
i7 : G = finiteAction(L, R)

o7 = R <- {| 0 0 1 |, | -1 0  0  |}
           | 0 1 0 |  | 0  -1 0  |
           | 1 0 0 |  | 0  0  -1 |

o7 : FiniteGroupAction
i8 : isAbelian G

o8 = true

Ways to use isAbelian :

For the programmer

The object isAbelian is a method function.