Description
Dade takes Boolean values and is set to false by default. If Dade is set to true, then primaryInvariants will use the Dade algorithm to calculate a homogeneous system of parameters (hsop) for the invariant ring of a finite group.
The example below computes the invariant ring of S3 acting on QQ[x,y,z] by permutations on the variables. Dade is set to true.
i1 : A=matrix{{0,1,0},{0,0,1},{1,0,0}};
3 3
o1 : Matrix ZZ <-- ZZ
|
i2 : B=matrix{{0,1,0},{1,0,0},{0,0,1}};
3 3
o2 : Matrix ZZ <-- ZZ
|
i3 : S3=finiteAction({A,B},QQ[x,y,z])
o3 = QQ[x..z] <- {| 0 1 0 |, | 0 1 0 |}
| 0 0 1 | | 1 0 0 |
| 1 0 0 | | 0 0 1 |
o3 : FiniteGroupAction
|
i4 : primaryInvariants(S3,Dade=>true)
6 5 4 2 3 3
o4 = {39382402500x + 249046812000x y + 642775481775x y + 866232067050x y +
------------------------------------------------------------------------
2 4 5 6 5
642775481775x y + 249046812000x*y + 39382402500y + 249046812000x z +
------------------------------------------------------------------------
4 3 2 2 3
1295309543850x y*z + 2642253080670x y z + 2642253080670x y z +
------------------------------------------------------------------------
4 5 4 2
1295309543850x*y z + 249046812000y z + 642775481775x z +
------------------------------------------------------------------------
3 2 2 2 2 3 2
2642253080670x y*z + 3999578334634x y z + 2642253080670x*y z +
------------------------------------------------------------------------
4 2 3 3 2 3
642775481775y z + 866232067050x z + 2642253080670x y*z +
------------------------------------------------------------------------
2 3 3 3 2 4
2642253080670x*y z + 866232067050y z + 642775481775x z +
------------------------------------------------------------------------
4 2 4 5
1295309543850x*y*z + 642775481775y z + 249046812000x*z +
------------------------------------------------------------------------
5 6 6 5 4 2
249046812000y*z + 39382402500z , 576x + 3888x y + 10448x y +
------------------------------------------------------------------------
3 3 2 4 5 6 5 4
14276x y + 10448x y + 3888x*y + 576y + 3888x z + 21332x y*z +
------------------------------------------------------------------------
3 2 2 3 4 5 4 2 3 2
44710x y z + 44710x y z + 21332x*y z + 3888y z + 10448x z + 44710x y*z
------------------------------------------------------------------------
2 2 2 3 2 4 2 3 3 2 3
+ 68613x y z + 44710x*y z + 10448y z + 14276x z + 44710x y*z +
------------------------------------------------------------------------
2 3 3 3 2 4 4 2 4 5
44710x*y z + 14276y z + 10448x z + 21332x*y*z + 10448y z + 3888x*z
------------------------------------------------------------------------
5 6 6 5 4 2 3 3
+ 3888y*z + 576z , 104976x + 1714608x y + 8461908x y + 14720616x y +
------------------------------------------------------------------------
2 4 5 6 5 4
8461908x y + 1714608x*y + 104976y + 1714608x z + 19397232x y*z +
------------------------------------------------------------------------
3 2 2 3 4 5 4 2
55116180x y z + 55116180x y z + 19397232x*y z + 1714608y z + 8461908x z
------------------------------------------------------------------------
3 2 2 2 2 3 2 4 2
+ 55116180x y*z + 100398673x y z + 55116180x*y z + 8461908y z +
------------------------------------------------------------------------
3 3 2 3 2 3 3 3
14720616x z + 55116180x y*z + 55116180x*y z + 14720616y z +
------------------------------------------------------------------------
2 4 4 2 4 5 5
8461908x z + 19397232x*y*z + 8461908y z + 1714608x*z + 1714608y*z +
------------------------------------------------------------------------
6
104976z }
o4 : List
|
Compare this result to the hsop output when Dade is left to its default value false.
i5 : primaryInvariants(S3)
2 2 2 2 2 2 2 2 2
o5 = {x + y + z, x + y + z , x y + x*y + x z + y z + x*z + y*z }
o5 : List
|
Below, the invariant ring QQ[x,y,z]S3 is calculated with K being the field with 101 elements.
i6 : K=GF(101)
o6 = K
o6 : GaloisField
|
i7 : S3=finiteAction({A,B},K[x,y,z])
o7 = K[x..z] <- {| 0 1 0 |, | 0 1 0 |}
| 0 0 1 | | 1 0 0 |
| 1 0 0 | | 0 0 1 |
o7 : FiniteGroupAction
|
i8 : primaryInvariants(S3,Dade=>true)
6 5 4 2 3 3 2 4 5 6 5
o8 = {- 45x + 24x y - 36x y - 3x y - 36x y + 24x*y - 45y + 24x z +
------------------------------------------------------------------------
4 3 2 2 3 4 5 4 2 3 2
42x y*z + 17x y z + 17x y z + 42x*y z + 24y z - 36x z + 17x y*z -
------------------------------------------------------------------------
2 2 2 3 2 4 2 3 3 2 3 2 3 3 3
28x y z + 17x*y z - 36y z - 3x z + 17x y*z + 17x*y z - 3y z -
------------------------------------------------------------------------
2 4 4 2 4 5 5 6 6 5 4 2
36x z + 42x*y*z - 36y z + 24x*z + 24y*z - 45z , 5x + 6x y + 29x y
------------------------------------------------------------------------
3 3 2 4 5 6 5 4 3 2 2 3
- 49x y + 29x y + 6x*y + 5y + 6x z - 5x y*z + 44x y z + 44x y z -
------------------------------------------------------------------------
4 5 4 2 3 2 2 2 2 3 2 4 2
5x*y z + 6y z + 29x z + 44x y*z - 11x y z + 44x*y z + 29y z -
------------------------------------------------------------------------
3 3 2 3 2 3 3 3 2 4 4 2 4
49x z + 44x y*z + 44x*y z - 49y z + 29x z - 5x*y*z + 29y z +
------------------------------------------------------------------------
5 5 6 6 5 4 2 3 3 2 4 5
6x*z + 6y*z + 5z , - 14x - 34x y + 10x y - 11x y + 10x y - 34x*y
------------------------------------------------------------------------
6 5 4 3 2 2 3 4 5 4 2
- 14y - 34x z + 27x y*z - 6x y z - 6x y z + 27x*y z - 34y z + 10x z -
------------------------------------------------------------------------
3 2 2 2 2 3 2 4 2 3 3 2 3 2 3
6x y*z + 42x y z - 6x*y z + 10y z - 11x z - 6x y*z - 6x*y z -
------------------------------------------------------------------------
3 3 2 4 4 2 4 5 5 6
11y z + 10x z + 27x*y*z + 10y z - 34x*z - 34y*z - 14z }
o8 : List
|
For more information about the algorithms used to calculate a hsop in primaryInvariants, see hsop algorithms.
Caveat
Currently users can only use
primaryInvariants to calculate a hsop for the invariant ring over a finite field by using the Dade algorithm. Users should enter the finite field as a
GaloisField or a quotient field of the form
ZZ/p and are advised to ensure that the ground field has cardinality greater than
|G|n-1, where
n is the number of variables in the polynomial ring
R. Using a ground field smaller than this runs the risk of the algorithm getting stuck in an infinite loop;
primaryInvariants displays a warning message asking the user whether they wish to continue with the computation in this case. See
hsop algorithms for a discussion on the Dade algorithm.