Computing Conjugacy Classes of Elements in Finite Matrix

advertisement
Computing
Conjugacy Classes of
Elements in Finite Matrix
Alexander Hulpke
Department of Mathematics
Colorado State University
Fort Collins, CO, 80523, USA
http://www.hulpke.com
Monday, October 17, 11
Computer Algebra in Class
s
s
le ent
e
m
a
m
h
e
s
S
i
t
r
I am working on a project to improve the usability
e
v
Ad
of the free (GPL) system GAP for use in
undergraduate algebra courses.
Web page at http://www.math.colostate.edu/
~hulpke/CGT/education.html
-
Standard installers for Macintosh OSX and
Windows (GAP 4.4.12 and some packages)
-
Maple-like shell with Save/Load
Education-specific functionality and
documentation.
Talk to me or email me if you are interested!
Monday, October 17, 11
The Task at Hand
Given a group G, find the elements of G
Since they don’t all fit into memory: Up
to conjugacy g-1xg.
G is given by generating matrices.
Assumption: We can solve all problems
for all simple composition factors.
Corresponding Transporter problem
(element conjugacy) is similar.
This is the prototype for other problems.
Monday, October 17, 11
What already exists ?
For permutation groups, a solution exists
(CANNON, HOLT; H.)
Ingredients:
- A Stabilizer Chain for constructive
element tests, also for subgroups.
- A homomorphism G→G/R where R is
the largest solvable normal subgroup.
- Decomposition of R via its abelian chief
factors.
We need to provide equivalent tools for
matrix groups.
Monday, October 17, 11
Step1: Matrix Group Recognition
Matrix Group Recognition finds action
homs and thus obtains a composition tree
G
.
N = ker ⇤  G
with ⇥
.
&
ker ⇥  N
Image(⇥)
with ⇤
&
F = Image(⇤)
with
.
&
ker  F
Image( )
At each node, we can evaluate the
homomorphism (by acting on the objects
of the underlying decomposition) and have
generators for the kernel.
Monday, October 17, 11
Status
There are algorithm descriptions for the
decomposition steps (not necessarily of
desired complexity yet). Usable concrete
implementations exist (e.g. the recog
package in GAP.
There are recognition routines for many of
the simple groups (again not always of
desired complexity). Recognition of “small”
cases can be done as permutation groups..
Monday, October 17, 11
Step 2: Improving the Series
Conjugation action of G on nonabelian
composition factors of one type T yields a
homomorphism α:G→(Aut T)≀Sn. Image is
permutation group (or matrix group).
ϱ = α1 × ... × αm to direct product.
R=Ker ϱ is the largest solvable normal
subgroup, the solvable radical. Generators
for R from relators for G/R.
Monday, October 17, 11
Waffle
Computing a PCGS
term
Conjecture: A solvable R usually has a short
orbit on vectors or on submodules.
Submodules for R’, R’’,... give candidates.
The algorithm by SIMS for solvable group
stabilizer chains thus can be used to
determine G ⊳R=R0⊳R1 ⊳⋅⋅⋅ ⊳ ⟨1⟩ with
Ri/Ri+1 elementary abelian, as well as bases
for these vector spaces (a PCGS) and a
method for determining coefficient vectors.
Monday, October 17, 11
Step 3: Working with Subgroups
To avoid evaluating ϱ represent U≦G by:
- An induced PCGS (think: REF for matrix)
for U∩R.
- Generators ui ∈U s.t. U=〈U∩R,u1,u2,...〉
ϱ
Images
u
i as elements of G/R≦D.
Element test in U then first tests in U ϱ .
Then divide off and test in U∩R.
Analogously for any x∈G in the algorithm
also maintain its image xϱ∈G/R.
Monday, October 17, 11
Orbit/Stabilizer Algorithm
When calculating orbit/stabilizer of δ
under U (this will be a basic operation)
-
Calculate the orbit Δ of δ under
N=U∩R⊲U and the stabilizer
V≦U∩R of δ. Δ is a U-block.
Calculate the orbit and stabilizer of
Δ under U by computing in Uϱ. N
(Represent Δu by single element.)
Correct generators of StabU(Δ) to
get StabU(δ) as complement.
Monday, October 17, 11
U
StabU(Δ)
StabU(δ)
StabN(δ)
〈1〉
Step 4: Lifting
We can now proceed essentially the same
as for permutation groups:
Assume we have conjugacy classes/
centralizers in G/R=G/R0. (If this is a
permutation group, by permutation group
methods.)
Now go repeatedly from G/Ri to G/Ri+1
until we reach Rk = ⟨1⟩.
Each step reduces to orbit calculations for
an (affine) action on Ri/Ri+1.
Monday, October 17, 11
Step 5: Profit
Implemented in GAP.
The code assumes as unified interface a
PCGS for R, a representation for G/R as
permutation group, as well as generators
for G and their images in G/R. This is
provided for both matrix groups and
permutation groups.
About 40% speedup for permutation
groups – the R-orbits really help.
Monday, October 17, 11
Some Runtimes
Times in Seconds on a 2.6GHz MacPro.
Group
3^5.2^4.2.S_5
Parent
GL(10,2)
Order Dim/Deg q #Cl tSetup tClass
933,120
10 2 108
1.5
1
2^{1+8}.(A_5\times A_5).2
HN
3,686,400
760
2
56
100
126
5^{1+4}:4.S_6
Ly
9,000,000
111
5
55
155
30
5^3.L_3(5)
Ly
46,500,000
111
5
39
31
9
3:2\times L_5(2)
GL(10,2)
59,996,160
10
2
81
0.7
0.7
2^5.L_5(2)
Th
319,979,520
248
2
41
7
6
2^5.L_5(2)
Th
319,979,520
248
5
41
290
111
2^{1+12}.3.M_{22}:2
J_4
21,799,895,040
112
2 113
4
9
2^2.U_6(2).2
Fi_23
73,574,645,760
31671 -
146
1
10
2^2.U_6(2).2
Fi_23
73,574,645,760
253
3 146
334
135
2^{1+8}.O_8^+(2)
Co_1
89,181,388,800
24
2 154
3
4
2^{1+8}.O_8^+(2)
Co_1
89,181,388,800
274
2 154
24
41
2^{1+8}.O_8^+(2)
Co_1
89,181,388,800
98280
- 154
5
36
2^{11}.M_{24}
Co_1
501,397,585,920
24
2
80
3
2
2^{11}.M_{24}
J4
501,397,585,920
112
2
72
6
6
3.Suz.2
Co_1
2,690,072,985,600
98280
- 106
218
436
2^{1+22}.Co_2
B (Chop)
3.548835957E+20
1003
2 448
520
27479
Setup is often large part of runtime.
Change of representation is roughly
proportional to cost of multiplication.
Monday, October 17, 11
1.44 · 1013
U.S. public
debt (2010)
Status
Code works for some pretty large groups.
Including examples that would be
impossible to do in other ways.
Some cases in composition tree are not
yet satisfying. In particular constructive
isomorphism for simple groups.
Other problems (classes of subgroups,
normal subgroups, automorphism groups)
can be attacked using the same
framework.
Monday, October 17, 11
Download