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)
3 3 3
o5 = {x + y + z, x*y + x*z + y*z, x + 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)
3 2 2 3 2 2 2
o8 = {- 42x + 22x y + 22x*y - 42y + 22x z - 28x*y*z + 22y z + 22x*z +
------------------------------------------------------------------------
2 3 6 5 4 2 3 3 2 4 5 6
22y*z - 42z , - 33x + 43x y + 29x y - 42x y + 29x y + 43x*y - 33y
------------------------------------------------------------------------
5 4 3 2 2 3 4 5 4 2 3 2
+ 43x z - 22x y*z - 4x y z - 4x y z - 22x*y z + 43y z + 29x z - 4x y*z
------------------------------------------------------------------------
2 2 2 3 2 4 2 3 3 2 3 2 3 3 3
+ 7x y z - 4x*y z + 29y z - 42x z - 4x y*z - 4x*y z - 42y z +
------------------------------------------------------------------------
2 4 4 2 4 5 5 6 6 5
29x z - 22x*y*z + 29y z + 43x*z + 43y*z - 33z , 24x - 30x y +
------------------------------------------------------------------------
4 2 3 3 2 4 5 6 5 4 3 2
8x y - 41x y + 8x y - 30x*y + 24y - 30x z + 41x y*z - 10x y z -
------------------------------------------------------------------------
2 3 4 5 4 2 3 2 2 2 2 3 2
10x y z + 41x*y z - 30y z + 8x z - 10x y*z - 11x y z - 10x*y z +
------------------------------------------------------------------------
4 2 3 3 2 3 2 3 3 3 2 4 4 2 4
8y z - 41x z - 10x y*z - 10x*y z - 41y z + 8x z + 41x*y*z + 8y z
------------------------------------------------------------------------
5 5 6
- 30x*z - 30y*z + 24z }
o8 : List
|
For more information about the algorithms used to calculate a hsop in primaryInvariants, see hsop algorithms.