[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]