some algorithmic questions in finite group theory
play

Some Algorithmic questions in Finite Group Theory V Arvind - PowerPoint PPT Presentation

Some Algorithmic questions in Finite Group Theory V Arvind Institute of Mathematical Sciences, Chennai India email arvind@imsc.res.in June 30, 2015 Plan of Talk Permutation groups: background and some basic algorithms. Plan of Talk


  1. The Membership Testing Problem • Given as input π ∈ S n and a subgroup G = � S � ≤ S n test if π is in G . Express π in terms of the generators. • Writing π as a product of generators may be exponentially long! Example Consider the cyclic group G = � g � , where g is a permutation of order 2 O ( √ n log n ) (by choosing g to be a product of cycles of prime length for different primes).

  2. The Membership Testing Problem • Given as input π ∈ S n and a subgroup G = � S � ≤ S n test if π is in G . Express π in terms of the generators. • Writing π as a product of generators may be exponentially long! Example Consider the cyclic group G = � g � , where g is a permutation of order 2 O ( √ n log n ) (by choosing g to be a product of cycles of prime length for different primes). We need to have a more compact way of expressing π ∈ G in terms of its generators.

  3. Membership Testing Contd. Elements of G are g b where b is t = O ( √ n log n ) bits. We compute g b by repeated squaring and multiplying the appropriate powers g 2 i . Let b = � t − 1 i =0 b i 2 i .

  4. Membership Testing Contd. Elements of G are g b where b is t = O ( √ n log n ) bits. We compute g b by repeated squaring and multiplying the appropriate powers g 2 i . Let b = � t − 1 i =0 b i 2 i . The following straight-line program computes g b :

  5. Membership Testing Contd. Elements of G are g b where b is t = O ( √ n log n ) bits. We compute g b by repeated squaring and multiplying the appropriate powers g 2 i . Let b = � t − 1 i =0 b i 2 i . The following straight-line program computes g b : x 0 := g ; for i := 1 to t − 1 do x i := x 2 i − 1 ; x t := 1; for i := 1 to t − 1 do x t + i := x t + i − 1 · x b i i ;

  6. Srtaight-Line Programs Let π ∈ G = � g 1 , g 2 , . . . , g k � ≤ S n . A straight-line program for π consists of the following:

  7. Srtaight-Line Programs Let π ∈ G = � g 1 , g 2 , . . . , g k � ≤ S n . A straight-line program for π consists of the following: • The first k lines of the program has x i := g i , 1 ≤ i ≤ k as instructions, where g 1 , g 2 , . . . , g k are the generators of G .

  8. Srtaight-Line Programs Let π ∈ G = � g 1 , g 2 , . . . , g k � ≤ S n . A straight-line program for π consists of the following: • The first k lines of the program has x i := g i , 1 ≤ i ≤ k as instructions, where g 1 , g 2 , . . . , g k are the generators of G . • Each subsequent line is an instruction of the form: x i := x j x k Where j < i and k < i .

  9. Srtaight-Line Programs Let π ∈ G = � g 1 , g 2 , . . . , g k � ≤ S n . A straight-line program for π consists of the following: • The first k lines of the program has x i := g i , 1 ≤ i ≤ k as instructions, where g 1 , g 2 , . . . , g k are the generators of G . • Each subsequent line is an instruction of the form: x i := x j x k Where j < i and k < i . • Nice Fact If π ∈ � g 1 , g 2 , . . . , g k � ≤ S n then it has a straight-line program of length polynomial in n and k , and the membership testing algorithm will find in poly ( n ) time.

  10. Strong Generating Sets For G ≤ S n let G [ i ] denote its subgroup that pointwise stabilizes { 1 , 2 , . . . , i } .

  11. Strong Generating Sets For G ≤ S n let G [ i ] denote its subgroup that pointwise stabilizes { 1 , 2 , . . . , i } . • Consider the tower of stabilizers subgroups in G : { id } = G [ n − 1] < G [ n − 2] < . . . < G [1] < G [0] = G .

  12. Strong Generating Sets For G ≤ S n let G [ i ] denote its subgroup that pointwise stabilizes { 1 , 2 , . . . , i } . • Consider the tower of stabilizers subgroups in G : { id } = G [ n − 1] < G [ n − 2] < . . . < G [1] < G [0] = G . Consider the right coset representative sets T i for G [ i ] in G [ i − 1] , 1 ≤ i ≤ n − 1. Their union forms a strong generating set for G .

  13. Strong Generating Sets For G ≤ S n let G [ i ] denote its subgroup that pointwise stabilizes { 1 , 2 , . . . , i } . • Consider the tower of stabilizers subgroups in G : { id } = G [ n − 1] < G [ n − 2] < . . . < G [1] < G [0] = G . Consider the right coset representative sets T i for G [ i ] in G [ i − 1] , 1 ≤ i ≤ n − 1. Their union forms a strong generating set for G . • “Strong” because every π ∈ G can be expressed uniquely as a “short” product π = π n − 1 π n − 2 . . . π 1 , where π i ∈ T i .

  14. Back to Membership Testing • Given a strong generating set for G ≤ S n , membership testing is easy and efficient. Let π ∈ S n : π ∈ G ⇐ ⇒ π ∈ G [1] π 1 for π 1 ∈ T 1 . We can find π 1 ∈ T 1 easily and the problem reduces to checking if ππ − 1 is in G [1] . 1

  15. Back to Membership Testing • Given a strong generating set for G ≤ S n , membership testing is easy and efficient. Let π ∈ S n : π ∈ G ⇐ ⇒ π ∈ G [1] π 1 for π 1 ∈ T 1 . We can find π 1 ∈ T 1 easily and the problem reduces to checking if ππ − 1 is in G [1] . 1 • How do we find a strong generating set for G ?

  16. Finding a Strong Generating Set • Given G = � S � , finding T 1 is easy. We can compute the orbit O of 1, and for each j ∈ O keep track of a π 1 ∈ G such that 1 π 1 = j . How do we find T 2 ?

  17. Finding a Strong Generating Set • Given G = � S � , finding T 1 is easy. We can compute the orbit O of 1, and for each j ∈ O keep track of a π 1 ∈ G such that 1 π 1 = j . How do we find T 2 ? Schreier’s Lemma Let G = � A � and H ≤ G of finite index with R as the set of right coset representatives. Then H is generated by the set B = { r 1 ar − 1 ∈ H | a ∈ A , r 1 , r 2 ∈ R } . 2

  18. Finding a Strong Generating Set • Given G = � S � , finding T 1 is easy. We can compute the orbit O of 1, and for each j ∈ O keep track of a π 1 ∈ G such that 1 π 1 = j . How do we find T 2 ? Schreier’s Lemma Let G = � A � and H ≤ G of finite index with R as the set of right coset representatives. Then H is generated by the set B = { r 1 ar − 1 ∈ H | a ∈ A , r 1 , r 2 ∈ R } . 2 Proof We know G = HR .

  19. Finding a Strong Generating Set • Given G = � S � , finding T 1 is easy. We can compute the orbit O of 1, and for each j ∈ O keep track of a π 1 ∈ G such that 1 π 1 = j . How do we find T 2 ? Schreier’s Lemma Let G = � A � and H ≤ G of finite index with R as the set of right coset representatives. Then H is generated by the set B = { r 1 ar − 1 ∈ H | a ∈ A , r 1 , r 2 ∈ R } . 2 Proof We know G = HR . And we have RA ⊆ BR

  20. Finding a Strong Generating Set • Given G = � S � , finding T 1 is easy. We can compute the orbit O of 1, and for each j ∈ O keep track of a π 1 ∈ G such that 1 π 1 = j . How do we find T 2 ? Schreier’s Lemma Let G = � A � and H ≤ G of finite index with R as the set of right coset representatives. Then H is generated by the set B = { r 1 ar − 1 ∈ H | a ∈ A , r 1 , r 2 ∈ R } . 2 Proof We know G = HR . And we have RA ⊆ BR Which implies RAA ⊆ BRA ⊆ BBR .

  21. Finding a Strong Generating Set • Given G = � S � , finding T 1 is easy. We can compute the orbit O of 1, and for each j ∈ O keep track of a π 1 ∈ G such that 1 π 1 = j . How do we find T 2 ? Schreier’s Lemma Let G = � A � and H ≤ G of finite index with R as the set of right coset representatives. Then H is generated by the set B = { r 1 ar − 1 ∈ H | a ∈ A , r 1 , r 2 ∈ R } . 2 Proof We know G = HR . And we have RA ⊆ BR Which implies RAA ⊆ BRA ⊆ BBR . Repeating, we get R � A � ⊆ � B � R .

  22. Finding a Strong Generating Set • Given G = � S � , finding T 1 is easy. We can compute the orbit O of 1, and for each j ∈ O keep track of a π 1 ∈ G such that 1 π 1 = j . How do we find T 2 ? Schreier’s Lemma Let G = � A � and H ≤ G of finite index with R as the set of right coset representatives. Then H is generated by the set B = { r 1 ar − 1 ∈ H | a ∈ A , r 1 , r 2 ∈ R } . 2 Proof We know G = HR . And we have RA ⊆ BR Which implies RAA ⊆ BRA ⊆ BBR . Repeating, we get R � A � ⊆ � B � R . Hence G = � B � R .

  23. Finding a Strong Generating Set • Given G = � S � , finding T 1 is easy. We can compute the orbit O of 1, and for each j ∈ O keep track of a π 1 ∈ G such that 1 π 1 = j . How do we find T 2 ? Schreier’s Lemma Let G = � A � and H ≤ G of finite index with R as the set of right coset representatives. Then H is generated by the set B = { r 1 ar − 1 ∈ H | a ∈ A , r 1 , r 2 ∈ R } . 2 Proof We know G = HR . And we have RA ⊆ BR Which implies RAA ⊆ BRA ⊆ BBR . Repeating, we get R � A � ⊆ � B � R . Hence G = � B � R . Since � B � ≤ H it follows that � B � = H .

  24. Finding a Strong Generating Set Difficulty Applying Schreier’s lemma, the number of generators for G [1] can be n | A | . For G [2] it can grow to n 2 | A | and so on...

  25. Finding a Strong Generating Set Difficulty Applying Schreier’s lemma, the number of generators for G [1] can be n | A | . For G [2] it can grow to n 2 | A | and so on... Solution: a “reduce” step Given G = � g 1 , g 2 , . . . , g k � , we can efficiently find a generating set of size O ( n 2 ).

  26. Finding a Strong Generating Set Difficulty Applying Schreier’s lemma, the number of generators for G [1] can be n | A | . For G [2] it can grow to n 2 | A | and so on... Solution: a “reduce” step Given G = � g 1 , g 2 , . . . , g k � , we can efficiently find a generating set of size O ( n 2 ). for i = 1 to n do while there are generators x , y fixing 1 , 2 , . . . , i − 1 such that i x = i y do replace the pair x , y with the pair x , yx − 1 . end-while end-for

  27. How many generators are needed? • Exercise Given G = � S � ≤ S n as input we can efficiently compute a generating set of size at most n − 1. Hint:

  28. How many generators are needed? • Exercise Given G = � S � ≤ S n as input we can efficiently compute a generating set of size at most n − 1. Hint: For each g ∈ S , let i g ∈ [ n ] be the smallest point moved by g .

  29. How many generators are needed? • Exercise Given G = � S � ≤ S n as input we can efficiently compute a generating set of size at most n − 1. Hint: For each g ∈ S , let i g ∈ [ n ] be the smallest point moved by g . Consider the graph X S on vertex set { 1 , 2 , . . . , n } and edge set { ( i g , i g g ) | g ∈ S } .

  30. How many generators are needed? • Exercise Given G = � S � ≤ S n as input we can efficiently compute a generating set of size at most n − 1. Hint: For each g ∈ S , let i g ∈ [ n ] be the smallest point moved by g . Consider the graph X S on vertex set { 1 , 2 , . . . , n } and edge set { ( i g , i g g ) | g ∈ S } . As long as X S has cycles, we can apply a modified reduce step to shrink the size of S .

  31. How many generators are needed? • Exercise Given G = � S � ≤ S n as input we can efficiently compute a generating set of size at most n − 1. Hint: For each g ∈ S , let i g ∈ [ n ] be the smallest point moved by g . Consider the graph X S on vertex set { 1 , 2 , . . . , n } and edge set { ( i g , i g g ) | g ∈ S } . As long as X S has cycles, we can apply a modified reduce step to shrink the size of S . • McIver-Neumann Every subgroup of S n has a generating set of size at most n / 2. Proof uses CFSG. No efficient algorithm is known for it.

  32. How many generators are needed? • Exercise Given G = � S � ≤ S n as input we can efficiently compute a generating set of size at most n − 1. Hint: For each g ∈ S , let i g ∈ [ n ] be the smallest point moved by g . Consider the graph X S on vertex set { 1 , 2 , . . . , n } and edge set { ( i g , i g g ) | g ∈ S } . As long as X S has cycles, we can apply a modified reduce step to shrink the size of S . • McIver-Neumann Every subgroup of S n has a generating set of size at most n / 2. Proof uses CFSG. No efficient algorithm is known for it.

  33. Finding a Strong Generating Set Theorem (Schreier-Sims) Let G < S n be input by some generating set. In polynomial time we can compute a strong generating set ∪ T i with the following properties: 1 Every element π ∈ G can be expressed uniquely as a product π = π 1 π 2 . . . π n − 1 with π i ∈ T i ,

  34. Finding a Strong Generating Set Theorem (Schreier-Sims) Let G < S n be input by some generating set. In polynomial time we can compute a strong generating set ∪ T i with the following properties: 1 Every element π ∈ G can be expressed uniquely as a product π = π 1 π 2 . . . π n − 1 with π i ∈ T i , 2 Membership in G of a given permutation can be tested in polynomial time.

  35. Finding a Strong Generating Set Theorem (Schreier-Sims) Let G < S n be input by some generating set. In polynomial time we can compute a strong generating set ∪ T i with the following properties: 1 Every element π ∈ G can be expressed uniquely as a product π = π 1 π 2 . . . π n − 1 with π i ∈ T i , 2 Membership in G of a given permutation can be tested in polynomial time. 3 | G | can be computed in polynomial time.

  36. Finding a Strong Generating Set Theorem (Schreier-Sims) Let G < S n be input by some generating set. In polynomial time we can compute a strong generating set ∪ T i with the following properties: 1 Every element π ∈ G can be expressed uniquely as a product π = π 1 π 2 . . . π n − 1 with π i ∈ T i , 2 Membership in G of a given permutation can be tested in polynomial time. 3 | G | can be computed in polynomial time.

  37. Running Time Analysis Suppose G = � S � is the input group.

  38. Running Time Analysis Suppose G = � S � is the input group. • Initial reduce operation if | S | > n 2 . For i = 1 , 2 , . . . , n − 1 we compute i g for | S | many g . After that at most | S | n many replacements of x , y by x , yx − 1 .

  39. Running Time Analysis Suppose G = � S � is the input group. • Initial reduce operation if | S | > n 2 . For i = 1 , 2 , . . . , n − 1 we compute i g for | S | many g . After that at most | S | n many replacements of x , y by x , yx − 1 . • In Schreier’s lemma: computing orbit of i takes n 2 | S | ≤ n 4 operations, which also gives transversal R for G [ i ] in G [ i − 1] .

  40. Running Time Analysis Suppose G = � S � is the input group. • Initial reduce operation if | S | > n 2 . For i = 1 , 2 , . . . , n − 1 we compute i g for | S | many g . After that at most | S | n many replacements of x , y by x , yx − 1 . • In Schreier’s lemma: computing orbit of i takes n 2 | S | ≤ n 4 operations, which also gives transversal R for G [ i ] in G [ i − 1] . • | R | · | S | = n 3 operations for computing generating set of G [ i ] . Applying reduce operation costs | S | n ≤ n 4 operations.

  41. Running Time Analysis Suppose G = � S � is the input group. • Initial reduce operation if | S | > n 2 . For i = 1 , 2 , . . . , n − 1 we compute i g for | S | many g . After that at most | S | n many replacements of x , y by x , yx − 1 . • In Schreier’s lemma: computing orbit of i takes n 2 | S | ≤ n 4 operations, which also gives transversal R for G [ i ] in G [ i − 1] . • | R | · | S | = n 3 operations for computing generating set of G [ i ] . Applying reduce operation costs | S | n ≤ n 4 operations. Overall costs is n 4 · n plus O ( | S | n ) operations. Each operation costs O ( n ). Thus, O ( n 6 + | S | n 2 ) is the time.

  42. Orbit Counting Lemma i ∈ [ n ] is a fixpoint of g ∈ G if i g = i .

  43. Orbit Counting Lemma i ∈ [ n ] is a fixpoint of g ∈ G if i g = i . fix ( g ) = number of fixpoints of g .

  44. Orbit Counting Lemma i ∈ [ n ] is a fixpoint of g ∈ G if i g = i . fix ( g ) = number of fixpoints of g . orb ( G ) = number of orbits of G .

  45. Orbit Counting Lemma i ∈ [ n ] is a fixpoint of g ∈ G if i g = i . fix ( g ) = number of fixpoints of g . orb ( G ) = number of orbits of G . Lemma (Orbit Counting Lemma) Let G ≤ S n and orb ( G ) denote the number of orbits of G. Then 1 � orb ( G ) = fix ( g ) = E g ∈ G [ fix ( g )] . | G | g ∈ G

  46. Orbit Counting Lemma i ∈ [ n ] is a fixpoint of g ∈ G if i g = i . fix ( g ) = number of fixpoints of g . orb ( G ) = number of orbits of G . Lemma (Orbit Counting Lemma) Let G ≤ S n and orb ( G ) denote the number of orbits of G. Then 1 � orb ( G ) = fix ( g ) = E g ∈ G [ fix ( g )] . | G | g ∈ G Proof Define 0-1 matrix: M g , i = 1 iff i g = i . Equate row-wise and column-wise sums using | O ( i ) | = | G | / | G i | .

  47. Fixpoint free elements in G Theorem (Jordan’s Theorem) If G ≤ S n is transitive then the group G has fixpoint free elements.

  48. Fixpoint free elements in G Theorem (Jordan’s Theorem) If G ≤ S n is transitive then the group G has fixpoint free elements. Proof G has a single orbit and fix ( g ) = n for the identity. Since the expectation is 1 there are g such that fix ( g ) = 0.

  49. Fixpoint free elements in G Theorem (Jordan’s Theorem) If G ≤ S n is transitive then the group G has fixpoint free elements. Proof G has a single orbit and fix ( g ) = n for the identity. Since the expectation is 1 there are g such that fix ( g ) = 0. Problem: Given G = � g 1 , g 2 , . . . , g k � transitive, can we find a fixpoint free element in polynomial time?

  50. Cameron-Cohen’s Theorem Theorem (CC92) If G ≤ S n is transitive then the group G has at least | G | / n many fixpoint elements. Proof

  51. Cameron-Cohen’s Theorem Theorem (CC92) If G ≤ S n is transitive then the group G has at least | G | / n many fixpoint elements. Proof Let A denote the set of fixpoint free elements in G .

  52. Cameron-Cohen’s Theorem Theorem (CC92) If G ≤ S n is transitive then the group G has at least | G | / n many fixpoint elements. Proof Let A denote the set of fixpoint free elements in G . � � � | G | = fix ( g ) = fix ( g ) + fix ( g ) g ∈ G g ∈ G 1 g ∈ G \ G 1

  53. Cameron-Cohen’s Theorem Theorem (CC92) If G ≤ S n is transitive then the group G has at least | G | / n many fixpoint elements. Proof Let A denote the set of fixpoint free elements in G . � � � | G | = fix ( g ) = fix ( g ) + fix ( g ) g ∈ G g ∈ G 1 g ∈ G \ G 1 | G | ≥ | G | / n + | G 1 | + | G \ ( A ∪ G 1 ) | Which yields | A | ≥ | G | / n .

  54. A Randomized Algorithm Let G = � S � be a permutation group given as input by generating set S .

  55. A Randomized Algorithm Let G = � S � be a permutation group given as input by generating set S . • We first compute a strong generating set T for G .

  56. A Randomized Algorithm Let G = � S � be a permutation group given as input by generating set S . • We first compute a strong generating set T for G . • Using T we can sample π ∈ G uniformly at random, and check if π is fixpoint free.

  57. A Randomized Algorithm Let G = � S � be a permutation group given as input by generating set S . • We first compute a strong generating set T for G . • Using T we can sample π ∈ G uniformly at random, and check if π is fixpoint free. Analysis Probability that we do not find a fixpoint free element in, say, n 2 trials is bounded by (1 − 1 / n ) n 2 ≈ e − n .

  58. Deterministic Algorithm • Let move ( g ) = n − fix ( g ). Orbit counting lemma restated: 1 � E g ∈ G [ move ( g )] = move ( g ) = n − orb ( G ) . | G | g ∈ G

  59. Deterministic Algorithm • Let move ( g ) = n − fix ( g ). Orbit counting lemma restated: 1 � E g ∈ G [ move ( g )] = move ( g ) = n − orb ( G ) . | G | g ∈ G For G transitive we have E g ∈ G [ move ( g )] = n − 1.

  60. Deterministic Algorithm • Let move ( g ) = n − fix ( g ). Orbit counting lemma restated: 1 � E g ∈ G [ move ( g )] = move ( g ) = n − orb ( G ) . | G | g ∈ G For G transitive we have E g ∈ G [ move ( g )] = n − 1. Since G 1 has at least two orbits, E g ∈ G 1 [ move ( g )] ≤ n − 2 . Let G = ⊎ π ∈ R G 1 π .

  61. Deterministic Algorithm • Let move ( g ) = n − fix ( g ). Orbit counting lemma restated: 1 � E g ∈ G [ move ( g )] = move ( g ) = n − orb ( G ) . | G | g ∈ G For G transitive we have E g ∈ G [ move ( g )] = n − 1. Since G 1 has at least two orbits, E g ∈ G 1 [ move ( g )] ≤ n − 2 . Let G = ⊎ π ∈ R G 1 π . E g ∈ G [ move ( g )] = E π ∈ R E g ∈ G 1 π [ move ( g )] .

  62. Deterministic Algorithm • Let move ( g ) = n − fix ( g ). Orbit counting lemma restated: 1 � E g ∈ G [ move ( g )] = move ( g ) = n − orb ( G ) . | G | g ∈ G For G transitive we have E g ∈ G [ move ( g )] = n − 1. Since G 1 has at least two orbits, E g ∈ G 1 [ move ( g )] ≤ n − 2 . Let G = ⊎ π ∈ R G 1 π . E g ∈ G [ move ( g )] = E π ∈ R E g ∈ G 1 π [ move ( g )] . • Thus, for some coset G 1 π of G 1 in G we must have E g ∈ G 1 π [ move ( g )] > n − 1.

  63. Deterministic Algorithm Contd. • For each coset representative π ∈ R we explain how to efficiently compute E g ∈ G 1 π [ move ( g )]. Revisit the proof of the orbit counting lemma: Recall M g π, i = 1 iff i g π = i .

  64. Deterministic Algorithm Contd. • For each coset representative π ∈ R we explain how to efficiently compute E g ∈ G 1 π [ move ( g )]. Revisit the proof of the orbit counting lemma: Recall M g π, i = 1 iff i g π = i . • Number of 1’s in the i th column is |{ g ∈ G 1 | i g π = i }| .

  65. Deterministic Algorithm Contd. • For each coset representative π ∈ R we explain how to efficiently compute E g ∈ G 1 π [ move ( g )]. Revisit the proof of the orbit counting lemma: Recall M g π, i = 1 iff i g π = i . • Number of 1’s in the i th column is |{ g ∈ G 1 | i g π = i }| . • This number is zero if i and i π − 1 are in different G 1 -orbits, and is | G 1 , i | otherwise. Thus, using the Schreir-Sims algorithm we can compute all column sums efficiently, and hence also the above expectation in polynomial time.

  66. Method of Conditional Probabilities G G 1 π 1 . . . G 1 π i G 1 π k G 1 , 2 τ 1 . . . G 1 , 2 τ ℓ

  67. Method of Conditional Probabilities G G 1 π 1 . . . G 1 π i G 1 π k G 1 , 2 τ 1 . . . G 1 , 2 τ ℓ • At the d th level of the tree compute the coset G 1 ,..., d σ that maximizes E g ∈ G 1 ,..., d σ [ move ( g )].

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend