[GAP Forum] Elements in Wreath Products
Alexander Hulpke
hulpke at math.colostate.edu
Mon Nov 16 17:00:27 GMT 2009
Dear GAP-forum, Dear Kursat Aker,
> Gi := Dihedral(8);
> n := 3;S_n := SymmetricGroup( n );
> G := WreathProduct( Gi, S_n );
> x := One(G);
> x![1] := 3;
This access to internal components, while not technically prohibited, is not advisable.
- The internal structures are not documented and not guaranteed to stay fixed between versions
- doing so is very representation dependent. If you use instead DihedralGroup(IsPermGroup,8) this kind of access will not work.
- Finally, modifying internal components of objects is likely to lead to the system to become seriously confused.
>
> I don't know what ! means. Does this allow me to change an immutable object such
> as One(G) ?
Yes -- this access is apparently possible for these particular objects, but the existing code assumes that nothing like this would happen. Basically after such an assignment the group created is broken.
> Question (2):
> -------------
>
> How can I create elements inside the wreath product ?
The proper way to create elements (independent of the representation) is to use homomorphisms: E.g. for elements a,b,c in D8 and d in Sn create the element
(a,b,c;d) in the wreath product use:
emb:=List([1..4],x->Embedding(G,x));;
Image(emb[1],a)*Image(emb[2],b)*Image(emb[3],c)*Image(emb[4],d);
You can similarly use these homomorphisms (and the one returned by Projection(G))
to decompose, using PreImagesRepresentative (after dividing off the S3-part).
Regards,
Alexander Hulpke
-- Colorado State University, Department of Mathematics,
Weber Building, 1874 Campus Delivery, Fort Collins, CO 80523-1874, USA
email: hulpke at math.colostate.edu, Phone: ++1-970-4914288
http://www.math.colostate.edu/~hulpke
More information about the Forum
mailing list