Javaid Aslam asked:
I am searching for possibly a gap implementation of:
double coset reprensentatives of subgroups (say) H and K
in a permutation group G.
The operation `DoubleCosets(G,U,V)' will compute double cosets U\G/V.
At the moment the method used for permutation groups is the generic method
provided by `CalcDoubleCosets' (in lib/csetgrp.gi). Permutation specific code
then gets executed in the operations called to determine subgroup chains and
identify right cosets.
Also if somebody can provide some guidelines on how to determine
a canonical representative of the coset HgK, where g is a member of G.
The operation `CanonicalRightCosetElement' will return the lexicographical
smallest element of the right coset Hg. By having K act on right coset
representatives by right multiplication, canonizing each multiplication
result, one obtains canonical representatives for all right cosets of H
contained in HgK.
In GAP this is provided by the operation `RepresentativesContainedRightCosets'.
One could define the smallest of these representatives to be the canonical
representative for HgK.
(G. Butler (On computing double coset representatives in permutation groups.
Computational group theory, 283--290, Academic Press) suggests to use these
representatives to actually compute double cosets, the approach used by
GAP seems to be more deterministic.)
I hope this is of help,
-- The Ohio State University, Department of Mathematics,
231W 18th Avenue, Columbus, OH 43210, USA
email: firstname.lastname@example.org, Phone: ++1-614-688-3175