Ask Your Question
2

Semimonomial transformation group

asked 2016-07-19 17:57:35 +0200

AxelD gravatar image

updated 2017-01-08 12:03:07 +0200

FrédéricC gravatar image

I have a subgroup of the semimonomial transformation group which is implemented in Sage and would like to be able to use for example the Orbit-functions in GAP, any ideas of how to do this?

Below I compute the full automorphism group of a linear [8,5] code over GF(4), with its generators stored in the variable "Gautgens".

f.<w>=GF(4,'x')
G=matrix(f,[[1,0],[w,1]])
Gt=reduce(lambda x,y:x.tensor_product(y,subdivide=False),[G]*3)
C=LinearCode(Gt[range(3,8)])
Gautgens=C.automorphism_group_gens()[0]

What I would like to do is to use the Orbits-function in GAP to find the orbits of some vectors in GF(4)^8 (v1,v2,v3,...) under the action of the automorphism group above. That is, something like:

gap.Orbits(gap.Group(Gautgens),[v1,v2,v3,..],"On....")

But I don't know how to make the automorphism group a group in GAP.

An alternative solution for me would be to map the automorphism group to an isomorphic permutation group acting on points. That is I would number all the vectors in GF(4)^8 and the automorphism group would then act as a permutation group on this indexing.

edit retag flag offensive close merge delete

1 Answer

Sort by » oldest newest most voted
0

answered 2016-07-26 17:42:10 +0200

 sage: g=libgap.Group(map(lambda s: libgap.PermList(s.get_perm()), Gautgens))

will give you the underlying permutation group. It has 1 orbit in its natural action (on 8 points):

 sage: g.Orbits()
 [ [ 1, 2, 5, 3, 6, 4, 7, 8 ] ]

You can convert it into a matrix group acting on GF(4)^8.

 sage: mg=libgap.Group(map(lambda s: libgap.PermutationMat(s,8,libgap.GF(4)), g.GeneratorsOfGroup()))

Now you can compute orbits on vectors (see e.g. code in graphs/generators/classical_geometries.py for details); however, you might want to make sure that GAP's GF(4) is created in a compatible way.

edit flag offensive delete link more

Comments

I am not 100% sure that you want to start with the permutation group - it might be a proper quotient of the "real" group, and then you need to do something else.

Dima gravatar imageDima ( 2016-07-26 17:43:19 +0200 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower

Stats

Asked: 2016-07-19 17:57:35 +0200

Seen: 249 times

Last updated: Jul 26 '16