Macaulay2 » Documentation
Packages » InvariantRing :: isAbelian
next | previous | forward | backward | up | index | toc

# isAbelian -- check whether a finite matrix group is Abelian

- Usage:
    `isAbelian G`
- Inputs:
  - G, an instance of the type FiniteGroupAction
- Outputs:
  - a Boolean value, whether the group associated to the action is Abelian

## 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:

- `isAbelian(FiniteGroupAction)`

## For the programmer

The object isAbelian is a method function.

The source of this document is in /build/macaulay2-88fgJW/macaulay2-1.25.11+ds/M2/Macaulay2/packages/InvariantRing/FiniteGroupsDoc.m2:186:0.