how to calculate the quotient of two permutation group

484 Views Asked by At

G/N

i guess G and N are both permutation group

however, i can not find command in maple to do quotient

there is really a quotient command in maple, however it is for polynomial

how about quotient for permutation group

could you give some steps to show how to calculate this quotient, or where can find this quotient example

1

There are 1 best solutions below

2
On BEST ANSWER

Maple 17 got a new GroupTheory package.

It does not have a dedicated command for computing the quotient, but it may be done (with extra computation) by defining a custom group.

with(GroupTheory):

g1 := PermutationGroup({[[1,2]], [[1,2,3],[4,5]]});

                        g1 := ((12)(123)(45))

g2 := Subgroup({[[1,3,2], [4,5]]}, g1);

                          g2 := ((132)(45))


LeftCosets(g2,g1);

           {(()) . (((132)(45))), ((23)) . (((132)(45)))}

mult:=proc(c1,c2)
    return LeftCoset( Representative(c1) . Representative(c2), g2 );
end proc:

eq:=proc(c1,c2)
    return member( Representative(c1) . Representative(c2)^(-1), g2);
end proc:

inv := proc(c1)
    return LeftCoset( Representative(c1)^(-1), g2 );     
end proc:

operation_module := module() export `.` := mult;
                         export `/` := inv;
                         export `=` := eq;
                end module:

Q := Group(LeftCosets(g2,g1), operation_module);

             Q :=  < a custom group with 2 generators > 

## alternatively
#Q:=Group( LeftCosets(g2,g1), multiply = mult, inverse = inv, equals = eq );
#Q:=CustomGroup(LeftCosets(g2,g1), operation_module);
#Q:=CustomGroup(LeftCosets(g2,g1), multiply = mult, inverse = inv, equals = eq);

GroupOrder(Q);

                                  2

IdentifySmallGroup(Q);

                                2, 1

CayleyTable(Q);

                               [1  2]
                               [    ]
                               [2  1]

CayleyTableGroup(Q); # make it do all the work

              < a Cayley table group with 2 elements > 

PermutationGroup(%);

                               ((12))

PermutationGroup(Q);

                               ((12))