InvariantRingPermutationGroup
-
Ce module Sage permet de calculer les invariants secondaires de l'anneau des invariants d'un groupe de permutations. Ces invariants secondaires sont associés aux invariants primaires formés par les polynômes symétriques.
-
Ces deux familles de polynômes invariants engendrent l'anneau des invariants en tant qu'algèbre et donc caractérisent complètement la structure algébrique.
-
Ce module est disponible sous la forme d'un patch téléchargeable dans la suite de patch Sage-Combinat.
-
Exemple avec un grand groupe :
sage: G = TransitiveGroup(14,61)
sage: G.cardinality()
50803200
sage: factorial(14)/G.cardinality()
1716
sage: I = InvariantRingPermutationGroup(G, QQ)
sage: I.secondary_invariants_series()
z^48 + z^47 + 2z^46 + 2z^45 + 4z^44 + 5z^43 + 8z^42 + 9z^41 + 14z^40 + 16z^39 + 22z^38 + 25z^37 + 33z^36 + 36z^35 + 45z^34 + 48z^33 + 58z^32 + 61z^31 + 70z^30 + 71z^29 + 80z^28 + 79z^27 + 85z^26 + 82z^25 + 87z^24 + 81z^23 + 83z^22 + 75z^21 + 75z^20 + 66z^19 + 64z^18 + 54z^17 + 52z^16 + 42z^15 + 39z^14 + 30z^13 + 28z^12 + 20z^11 + 18z^10 + 12z^9 + 11z^8 + 7z^7 + 6z^6 + 3z^5 + 3*z^4 + z^3 + z^2 + 1sage: I.secondary_invariants(verbose=True)
Initialiation of secondary of degree 0
------
Secondary of degree 1 :
We must search 0 secondaries invariants
------
Secondary of degree 2 :
We must search 1 secondaries invariants
Research of product of secondaries of degree smaller
Research now to complete with new irreducible secondaries
New irreducible [2]
------
Secondary of degree 3 :
We must search 1 secondaries invariants
Research of product of secondaries of degree smaller
Research now to complete with new irreducible secondaries
New irreducible [3]
------
Secondary of degree 4 :
We must search 3 secondaries invariants
Research of product of secondaries of degree smaller
Add product [2, 2]
Research now to complete with new irreducible secondaries
New irreducible [4]
(3, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) is not a good secondary invariants
New irreducible [5]
------
Secondary of degree 5 :
We must search 3 secondaries invariants
Research of product of secondaries of degree smaller
Add product [2, 3]
Research now to complete with new irreducible secondaries
New irreducible [6]
(4, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) is not a good secondary invariants
New irreducible [7]
------
Secondary of degree 6 :
We must search 6 secondaries invariants
Research of product of secondaries of degree smaller
Add product [2, 4]
Add product [2, 5]
Add product [3, 3]
Register new relation : [2, 2, 2]
Research now to complete with new irreducible secondaries
New irreducible [8]
(5, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) is not a good secondary invariants
New irreducible [9]
(4, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) is not a good secondary invariants
(4, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) is not a good secondary invariants
(4, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) is not a good secondary invariants
(4, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0) is not a good secondary invariants
New irreducible [10]
------
( ... FICHIER DE LOG COUPÉ )
------
Secondary of degree 48 :
We must search 1 secondaries invariants
Correction by adding the space spanned by secondaries of degree 34
Correction by adding the space spanned by secondaries of degree 20
Correction by adding the space spanned by secondaries of degree 6
Research of product of secondaries of degree smaller
Add product [3, 28, 28, 28]
...
sage: for i in range(49): print i," : ", I.irreducible_secondary_invariants_of_degree(i)
....:
0 : [[(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)]]
1 : []
2 : [[(1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)]]
3 : [[(2, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)]]
4 : [[(3, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)], [(2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)]]
5 : [[(4, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)], [(3, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)]]
6 : [[(5, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)], [(4, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)],
[(3, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)]]
7 : [[(6, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)], [(5, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)],
[(4, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)]]
8 : [[(7, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)], [(6, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)],
[(5, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)]]
9 : [[(7, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)], [(6, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)]]
10 : [[(7, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)], [(6, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)]]
11 : [[(7, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)]]
12 : [[(7, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)]]
13 : [[(12, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)], [(11, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)]]
14 : [[(13, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)], [(12, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)],
[(11, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)]]
15 : [[(13, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)]]