1 Computational Group Theory 2 Groups Given As Cayley Tables Or

1 Computational Group Theory 2 Groups Given As Cayley Tables Or

AM 106/206: Applied Algebra Prof. Salil Vadhan Lecture Notes 12 October 28, 2009 1 Computational Group Theory • Computational Questions about Groups: { Given a group G, compute jGj. { Given a group G, is G abelian? cyclic? { Given a group G and a subgroup H ≤ G, is H normal? { Given a group G and a subgroup H ≤ G and g 2 G, is g 2 H? { etc. • How can we be \given a group"? { Cayley table { \Black Box" that performs group operations { Generators and Relations { As a subgroup of a familiar group (e.g. Sn, GLn) 2 Groups given as Cayley Tables or Black Boxes • Most problems are easy to solve in time polynomial time in the size of the Cayley table (jGj2). • Can often do better with randomization. • Randomized Algorithm to Test whether G is abelian: 1. Choose random elements x; y R G. 2. Accept if xy 6= yx. • Running time O(log jGj). • Analysis: Always accepts if G abelian. If G nonabelian, then: { x2 = Z(G) with probability at least 1=2. { Given that x2 = Z(G), the probability that y2 = C(x) = fz : xz = zxg is at least 1=2. { Thus the algorithm rejects with probability at least 1=4. (Can be amplified by repeti- tion.) • Black-Box Groups 1 { Above algorithm best viewed as operating on a \black-box group": group given as a \black box" that in one time step, can multiply two group elements, invert a group element, and test whether two group elements are equal. { Also need to generate uniformly random group elements. Not usually part of the def- inition of a \black-box group" so need to give algorithms for doing this (e.g. given generators for G). 3 Groups given via Generators and Relations • Def: For a group G and a set S ⊆ G, we define the subgroup generated by S to be −1 hSi = fg1g2 ··· g` : ` ≥ 0; gi 2 S [ S g = smallest subgroup of G containing S; where S−1 = fs−1 : s 2 Sg. If G = hSi for a finite set S, we say that G is finitely generated. • Examples: { Finite groups? { Cyclic groups? { Z? { Z × Z? { Q? • To specify a group, it is not enough to specify the generators; we also need a set T of relations between them. • What are the following groups? { S = fag, T = ;. { S = fa; bg, T = fab = bag. { S = fag, T = fan = "g. { S = fa; bg, T = fan = "; b2 = "; ab = ba−1g. • Def: A group is finitely presented if it can be described by a finite set S of generators with a finite set T of relations among them. • More formal description of generators and relations. { Def: For a set S of symbols, the free group on S is the group F (S) consisting of all strings (words) over the alphabet S [ S−1 with no occurrences of any substrings of the form ss−1 or s−1s for s 2 S, and with multiplication defined by cancelling inverses in the obvious way. ∗ e.g. in F (fa; bg), (aab−1a−1bba−1)(ab−1ab) = 2 { If G = hSi, then there is a surjective homomorphism ' : F (S) ! G where '(w1w2 : : : wn) = w1 · w2 ··· wn, where the latter product is in G. The relations among S in G are pre- cisely fw = " : w 2 ker(')g.A presentation of G are sets S ⊆ G and T ⊆ F (S) such that ker(') is the smallest normal subgroup of F (S) containing T (i.e. every element of ker(') can be obtained by a finite number of multiplications by elements of T [ T −1 and conjugations by elements of G). • Unfortunately, most problems about finitely presented groups provably have no algorithms! For example: { Given finite S and T ⊆ F (S), is F (S)=hhT ii = f"g? { Given finite S, T ⊆ F (S), and w 2 F (S), is w 2 hT i? • Nevertheless, there are heuristics that work in some cases (Todd-Coxeter Algorithm). 4 Permutation Group Algorithms • If G = hSi for some given S ⊆ Sn, many problems can be solved in polynomial time, namely time poly(n; jSj), even though G can be of size as large as n!. • Schreier-Sims Algorithm: from S, constructs a strong generating set, which consists of: { A sequence T1 ⊃ T2 ⊃ · · · ⊃ Tm ⊃ Tm+1 = ; of subsets of Sn. { A base sequence (β1; : : : ; βm), with each βi 2 [n]. such that { hTii = stabG(β1) \ stabG(β2) \···\ stabG(βi−1). { hTi+1i = stabhTii(βi) is a proper subgroup of hTii. { stabG(β1) \ stabG(β2) \···\ stabG(βm) = f"g. • Given a strong generating set, can compute jGj as follows: jGj = jhT1ij = [hT1i : hT2i] · jhT2ij = [hT1i : hT2i] · [hT2i : hT3i] ··· [hTmi : hTm+1i] = jorbhT1i(β1)j · jorbhT2i(β2)j · · · jorbhTmi(βm)j • Note that m ≤ log2 jGj. • Computing orbhT i(β): 1. Let B = fβg. 2. Repeat n times: Let B B [ fσ(b): σ 2 T; b 2 Bg. 3. Output B. 3 • At same time as computing orbits, can compute a set Ri of representatives of the cosets of hTi+1i in hTii, so that for every b 2 orbhTii(βi), there is a unique ρ 2 Ri such that ρ(βi) = b. • Claim: Every element σ 2 G has a unique representation as a product ρ1ρ2 ··· ρm, where ρi 2 Ri, and this representation can be found in polynomial time. (Thus we can test membership in G by seeing if this algorithm succeeds.) • Algorithm: On input σ: { Let σ1 = σ. { Find unique ρ1 2 R1 such that ρ1(β1) = σ1(β1). −1 { Let σ2 = ρ1 σ1 2 hT2i. { Find unique ρ2 2 R2 such that ρ2(β2) = σ2(β2). −1 { Let σ3 = ρ2 σ2 2 hT3i. { . { Find unique ρm 2 Rm such that ρm(βm) = σm(βm). { Output ρ1 ··· ρm. • Example: T1 = f(135); (15)g ⊃ T2 = f(15)g ⊃ T3 = ;,(β1; β2) = (3; 1) is a strong generating set for G = hT1i. { Compute orbits orbhT1i(3), orbhT2i(1), coset representatives R1;R2, and jGj. { Decide whether (13) 2 G, (12) 2 G. 4.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    4 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us