Ask Your Question
0

finding the order of a matrix in GL(3,Z)

asked 2016-09-02 09:10:29 +0100

nebuckandazzer gravatar image

I am working in GL(3,Z). I want to find all the elements with order less than or equal to 6.

I have the follwoing questions

  1. Given a matrix in GL(3,Z), is there a command to find its order ?
  2. Is there a way to find all the matrices of order 6 ? (On a different context, is it possible to find all the elements of a given order in GL(3,F) where F is a finite field ?)
edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted
1

answered 2016-09-03 19:44:01 +0100

nbruin gravatar image

updated 2016-09-04 21:31:17 +0100

In order to find the order of a matrix over Z, you can look at the eigenvalues of the matrix.. If the matrix isn't diagonalizable, or if it has an eigenvalue that is not a root of unity, then its order is infinite. Otherwise, the order of the matrix is the LCM of the orders of the roots of unity.

Note that GL(3,Z) has infinitely many elements of order 6, because if A is any matrix of order 6 and B=[[1,1,0],[0,1,0],[0,0,1]] then {B^-nAB^n: n in Z} is an infinite set of matrices of the same order.

For finite groups you could use Gap's conjugacy class functionality. This is not directly exposed in Sage, so you end up talking "Gap". You might be better off asking Gap directly, but it's not too bad (and if you start out in Sage, you get the benefit that you can let Sage do the conversions for you)

sage: G=GL(3,GF(5))
sage: gapG=G._gap_()
sage: CG=gapG.ConjugacyClasses()
sage: sum(c.Size() for c in cc if c.Representative().Order() == 6)
46500

I suspect there are much better representation-theoretic methods of arriving at this number.

edit flag offensive delete link more

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-09-02 09:10:29 +0100

Seen: 1,102 times

Last updated: Sep 04 '16