Dear Forum, Dear Marek Mitros,

On Aug 17, 2012, at 8/17/12 1:54, Marek Mitros <ma...@mitros.org> wrote:

> Hi,
> 
> I have diagonal matrix f1 with vector [1, E(5), E(5)^2, etc,... on the
> diagonal. The order of the matrix is 5. When I perform Size(Group(f1))
> it hangs for a minute or so before it gives the answer 5. Why it takes
> so long ? For human being it is obvious, that group generated by one
> element of order 5 will be of size 5 and it is abelian.

I am a bit surprised that it takes several minutes (I tried it with a 5x5 
matrix on my machine and the result came back in a few seconds), but in  any 
case there are a couple of steps happening which are due to the fact that these 
are general purpose algorithms:

- GAP expands the generators to rational matrices dimension 4n by forming 
Galois conjugates. This enables the further algorithms to only work to assume 
that entries are rational
- GAP then tests that the group is finite. This is done using the Minkowski 
kernel (the kernel when reducing the entries modulo a prime.
- GAP determines a faithful permutation representation by acting on vectors 
such that a vector space basis is included. In your situation this likely leads 
to redundancy.
- Finally a stabilizer chain is computed to determine the group order.

> Can you explain what calculation GAP does when determining size of the
> matrix group ?
> I observed that matrices over finite fields are processed quicker than
> complex matrices.
Yes. It can skip the dimension blowup and the finiteness test. If you have a 
choice, working with matrices over a finite field will in generally be much 
better than working over a field in characteristic zero, even more if this 
would be an extension.

Best,

   Alexander Hulpke




_______________________________________________
Forum mailing list
Forum@mail.gap-system.org
http://mail.gap-system.org/mailman/listinfo/forum

Reply via email to