[back] [prev] [next] [index] [root]
s := FindQuotientOfShapeEnumInit(G, L);
| record | s |
|
| AbelianGroup | G |
|
| list | L |
of integers describing the shape of the subgroup |
See also: FindQuotientOfShapeEnumNext
kash> G := AbelianGroupCreate(MatDiag(Z, [8, 8, 6, 6, 2]));
Group with relations:
[8 0 0 0 0]
[0 8 0 0 0]
[0 0 6 0 0]
[0 0 0 6 0]
[0 0 0 0 2]
kash> s := FindQuotientOfShapeEnumInit(G, [4, 2]);
Record of type FindQuotientOfShapeEnum
kash> while FindQuotientOfShapeEnumNext(s) and s.no <3 do
> Print("Number ", s.no, "\n", s.elt, "\n");
> l := AbelianQuotientGroup(G, AbelianSubGroup(G, s.elt));
> gs := AbelianGroupEnumInit(l);
> l := [];
> while AbelianGroupEnumNext(gs) do Add(l, gs.elt); od;
> Apply(l, x->AbelianGroupEltMove(x, G));
> Print("Containing: ", l, "\n");
> od;
Number 1
[2 0 4 0 1]
[6 0 1 0 0]
[2 4 4 3 0]
[0 2 0 4 0]
[4 0 2 0 0]
[0 0 0 0 0]
[0 0 0 0 0]
[0 0 0 0 0]
[0 0 0 0 0]
[0 0 0 0 0]
Containing: [ [0 0 0 0 0], [6 7 0 5 0], [1 0 0 0 0], [7 7 0 5 0],
[2 0 0 0 0], [0 7 0 5 0], [3 0 0 0 0], [1 7 0 5 0] ]
Number 2
[0 0 0 0 1]
[6 0 1 0 0]
[2 4 4 3 0]
[0 2 0 4 0]
[4 0 2 0 0]
[0 0 0 0 0]
[0 0 0 0 0]
[0 0 0 0 0]
[0 0 0 0 0]
[0 0 0 0 0]
Containing: [ [0 0 0 0 0], [6 7 0 5 0], [1 0 0 0 0], [7 7 0 5 0],
[2 0 0 0 0], [0 7 0 5 0], [3 0 0 0 0], [1 7 0 5 0] ]
kash> while FindQuotientOfShapeEnumNext(s) do
> i := 1;
> od;
kash> Print("Total: ", s.no, "\n");
> Total: 360
<- back[back] [prev] [next] [index] [root]