Counting From SAPs to groups Histograms Exact Results To do S ET TRANSITIONS ACCORDING TO COUNTS Make a new Markov chain • Let | x | be MSB of word x and c ( ℓ ) the # words with MSB ℓ . • Start at x = 0 n • Create new word y by flipping a bit uniformly at random � � 1 , c ( | x | ) • Accept y with probability = min else keep x c ( | y | ) Easy to check limiting distribution is uniform across size. Could fix our sampling long words issue.. . Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do C OUNTS UNKNOWN • Generally we do not know the counts — that is whole problem! Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do C OUNTS UNKNOWN • Generally we do not know the counts — that is whole problem! • but we do know c ( n ) 1 / n → µ • so approximate c ( n ) ∝ λ n where λ ≈ µ . Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do C OUNTS UNKNOWN • Generally we do not know the counts — that is whole problem! • but we do know c ( n ) 1 / n → µ • so approximate c ( n ) ∝ λ n where λ ≈ µ . • Then transition probability is then � 1 , λ | x |−| y | � Pr ( x → y ) = min which is the transition probability in Murray’s talk Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do W ORKS WELL . . . BUT THERE CAN BE ISSUES So if we approximate c ( n ) ∝ λ n where λ ≈ µ , then • Need to choose λ carefully: • If λ > µ , difficult to grow large objects • If λ < µ , too easy to grow large objects — escape to ∞ . Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do W ORKS WELL . . . BUT THERE CAN BE ISSUES So if we approximate c ( n ) ∝ λ n where λ ≈ µ , then • Need to choose λ carefully: • If λ > µ , difficult to grow large objects • If λ < µ , too easy to grow large objects — escape to ∞ . • Even if we can set λ = µ , then there can be problems — eg if c ( n ) ≪ µ n then still difficult to grow large objects — the deficiency of [E, JvR & R] algorithm we’d like to fix. Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do T OWARDS A FIX Idea 1: • Improve single parameter approximation • Replace c ( n ) ≈ λ n with c ( n ) ≈ g ( n ) • Initially set g ( n ) = λ n • As algorithm runs, improve g ( n ) Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do T OWARDS A FIX Idea 1: • Improve single parameter approximation • Replace c ( n ) ≈ λ n with c ( n ) ≈ g ( n ) • Initially set g ( n ) = λ n • As algorithm runs, improve g ( n ) — how? Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do T OWARDS A FIX Idea 1: • Improve single parameter approximation • Replace c ( n ) ≈ λ n with c ( n ) ≈ g ( n ) • Initially set g ( n ) = λ n • As algorithm runs, improve g ( n ) — how? Observation: � 1 , g ( | x | ) � • Transition probability from x → y is = min g ( | y | ) • if g ( n ) too big, then too few samples at size n • if g ( n ) too small, then too many samples at size n Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do T OWARDS A FIX Idea 1: • Improve single parameter approximation • Replace c ( n ) ≈ λ n with c ( n ) ≈ g ( n ) • Initially set g ( n ) = λ n • As algorithm runs, improve g ( n ) — how? Observation: � 1 , g ( | x | ) � • Transition probability from x → y is = min g ( | y | ) • if g ( n ) too big, then too few samples at size n • if g ( n ) too small, then too many samples at size n Idea 2: • use histogram to tune g ( n ) ≈ c ( n ) — rather than setting g ( n ) ≈ c ( n ) to flatten histogram Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do T OWARDS A FIX Idea 1: • Improve single parameter approximation • Replace c ( n ) ≈ λ n with c ( n ) ≈ g ( n ) • Initially set g ( n ) = λ n • As algorithm runs, improve g ( n ) — how? Observation: � 1 , g ( | x | ) � • Transition probability from x → y is = min g ( | y | ) • if g ( n ) too big, then too few samples at size n • if g ( n ) too small, then too many samples at size n Idea 2: • use histogram to tune g ( n ) ≈ c ( n ) — rather than setting g ( n ) ≈ c ( n ) to flatten histogram • increase g ( n ) each time we sample an object of size n Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do T OWARDS A FIX Idea 1: • Improve single parameter approximation • Replace c ( n ) ≈ λ n with c ( n ) ≈ g ( n ) • Initially set g ( n ) = λ n • As algorithm runs, improve g ( n ) — how? Observation: � 1 , g ( | x | ) � • Transition probability from x → y is = min g ( | y | ) • if g ( n ) too big, then too few samples at size n • if g ( n ) too small, then too many samples at size n Idea 2: • use histogram to tune g ( n ) ≈ c ( n ) — rather than setting g ( n ) ≈ c ( n ) to flatten histogram • increase g ( n ) each time we sample an object of size n — Wang-Landau algorithm [Wang & Landau 2001] Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do W ANG L ANDAU ALGORITHM • Start at x = 0 n , g ( n ) = λ n and F = 2 • Create new word y by flipping a bit uniformly at random � � 1 , g ( | x | ) • Accept y with probability = min , else keep x g ( | y | ) • Increase g ( n ) �→ g ( n ) × F Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do W ANG L ANDAU ALGORITHM • Start at x = 0 n , g ( n ) = λ n and F = 2 • Create new word y by flipping a bit uniformly at random � � 1 , g ( | x | ) • Accept y with probability = min , else keep x g ( | y | ) • Increase g ( n ) �→ g ( n ) × F • Repeat until histogram is “flat” then √ • reduce F �→ F • reset histogram Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do W ANG L ANDAU ALGORITHM • Start at x = 0 n , g ( n ) = λ n and F = 2 • Create new word y by flipping a bit uniformly at random � � 1 , g ( | x | ) • Accept y with probability = min , else keep x g ( | y | ) • Increase g ( n ) �→ g ( n ) × F • Repeat until histogram is “flat” then √ • reduce F �→ F • reset histogram Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do A VOID HISTOGRAM CHECKING Similar idea but F decreases at each time step Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do A VOID HISTOGRAM CHECKING Similar idea but F decreases at each time step • Start at x = 0 n , g ( n ) = λ n and choose ξ ∈ ( 1 / 2 , 1 ) • Create new word y by flipping a bit uniformly at random � 1 , g ( | x | ) � • Accept y with probability = min , else keep x g ( | y | ) • Increase g ( n ) �→ g ( n ) × F Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do A VOID HISTOGRAM CHECKING Similar idea but F decreases at each time step • Start at x = 0 n , g ( n ) = λ n and choose ξ ∈ ( 1 / 2 , 1 ) • Create new word y by flipping a bit uniformly at random � 1 , g ( | x | ) � • Accept y with probability = min , else keep x g ( | y | ) • Increase g ( n ) �→ g ( n ) × F where now F = exp ( t − ξ ) Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do A VOID HISTOGRAM CHECKING Similar idea but F decreases at each time step • Start at x = 0 n , g ( n ) = λ n and choose ξ ∈ ( 1 / 2 , 1 ) • Create new word y by flipping a bit uniformly at random � 1 , g ( | x | ) � • Accept y with probability = min , else keep x g ( | y | ) • Increase g ( n ) �→ g ( n ) × F where now F = exp ( t − ξ ) • No flat-histogram check — flattens itself Stochastic approximation Monte Carlo [Liang, Liu & Carroll 2007] Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do A VOID HISTOGRAM CHECKING Similar idea but F decreases at each time step • Start at x = 0 n , g ( n ) = λ n and choose ξ ∈ ( 1 / 2 , 1 ) • Create new word y by flipping a bit uniformly at random � 1 , g ( | x | ) � • Accept y with probability = min , else keep x g ( | y | ) • Increase g ( n ) �→ g ( n ) × F where now F = exp ( t − ξ ) • No flat-histogram check — flattens itself Stochastic approximation Monte Carlo [Liang, Liu & Carroll 2007] Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do H OW GOOD IS IT FOR COGROWTH ? Try on an easy example • Sample reduced trivial words in Z 2 = � a , b | ab = ba � • Basic moves are conjugate + append relation to end Let it run for half an hour. . . Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do H OW GOOD IS IT FOR COGROWTH ? Try on an easy example • Sample reduced trivial words in Z 2 = � a , b | ab = ba � • Basic moves are conjugate + append relation to end Let it run for half an hour. . . 14 . 022 log( histogram ) 14 . 02 14 . 018 14 . 016 0 250 500 Histogram is flat Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do H OW GOOD IS IT FOR COGROWTH ? Try on an easy example • Sample reduced trivial words in Z 2 = � a , b | ab = ba � • Basic moves are conjugate + append relation to end Let it run for half an hour. . . 600 log g ( n ) g ( n ) · n 0 . 5 3 n n log 3 400 0 . 25 200 0 0 0 250 500 0 250 500 Consistent with g ( n ) ∼ 3 n · n − 1 � Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do H OW GOOD IS IT FOR COGROWTH ? Try on an easy example • Sample reduced trivial words in Z 2 = � a , b | ab = ba � • Basic moves are conjugate + append relation to end Let it run for half an hour. . . 600 log g ( n ) g ( n ) · n 0 . 5 3 n n log 3 400 0 . 25 200 0 0 0 250 500 0 250 500 Consistent with g ( n ) ∼ 3 n · n − 1 � Need more test cases.. . Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do C OGROWTH SERIES • Very few exact solutions • For Z 2 a sneaky construction shows � 2 � 2 n c 2 n = n • Nice results by [Kouksov 1998] � a , b | a 2 , b 3 � � a , b | a 3 , b 3 � � a , b , c | a 2 , b 2 , c 2 � Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do C OGROWTH SERIES • Very few exact solutions • For Z 2 a sneaky construction shows � 2 � 2 n c 2 n = n • Nice results by [Kouksov 1998] � a , b | a 2 , b 3 � � a , b | a 3 , b 3 � � a , b , c | a 2 , b 2 , c 2 � • So we went back and resolved Z 2 by another method • Realised we could solve Baumslag-Solitar groups BS ( N , M ) = � a , b | a N b = ba M � Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do C OUNTING LOOPS IN BS ( 1 , 1 ) THE HARDER WAY • Cut Z 2 into cosets: b k � a � • Horizontal steps move within coset • Vertical steps move between them. Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do C OUNTING LOOPS IN BS ( 1 , 1 ) Count all walks ending in � a � : � � z | w | q k G ( z ; q ) = k w ≡ a k Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do C OUNTING LOOPS IN BS ( 1 , 1 ) Count all walks ending in � a � : � � z | w | q k G ( z ; q ) = k w ≡ a k Use a standard factorisation for Catalan objects (eg Dyck paths, binary trees) • Cut walk into pieces at each visit to � a � Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do S CHEMATIC FACTORISATION q ) G ( z , q ) + 2 z 2 G ( z ; q ) L ( z ; q ) G ( z ; q ) = 1 + z ( q + ¯ Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do S CHEMATIC FACTORISATION q ) G ( z , q ) + 2 z 2 G ( z ; q ) L ( z ; q ) G ( z ; q ) = 1 + z ( q + ¯ q ) L ( z ; q ) + z 2 L ( z ; q ) L ( z ; q ) L ( z ; q ) = 1 + z ( q + ¯ • Solve for G ( z ; q ) — algebraic function • Take constant term wrt q — D-finite function Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do N OW DO BS ( 2 , 2 ) The Cayley graph is not so simple Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do N OW DO BS ( 2 , 2 ) The Cayley graph is not so simple • It is not flat Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do N OW DO BS ( 2 , 2 ) The Cayley graph is not so simple • It is not flat • Parity of x -ordinate decides if vertical step moves to a different sheet Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do N OW DO BS ( 2 , 2 ) The Cayley graph is not so simple • It is not flat • Parity of x -ordinate decides if vertical step moves to a different sheet Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do N OW DO BS ( 2 , 2 ) The Cayley graph is not so simple • It is not flat • Parity of x -ordinate decides if vertical step moves to a different sheet Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do N OW DO BS ( 2 , 2 ) The Cayley graph is not so simple • It is not flat • Parity of x -ordinate decides if vertical step moves to a different sheet • Looked at from the side, cosets form a tree Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do N OW DO BS ( 2 , 2 ) The Cayley graph is not so simple • It is not flat • Parity of x -ordinate decides if vertical step moves to a different sheet • Looked at from the side, cosets form a tree Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do N OW DO BS ( 2 , 2 ) The Cayley graph is not so simple • It is not flat • Parity of x -ordinate decides if vertical step moves to a different sheet • Looked at from the side, cosets form a tree Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do N OW DO BS ( 2 , 2 ) The Cayley graph is not so simple • It is not flat • Parity of x -ordinate decides if vertical step moves to a different sheet • Looked at from the side, cosets form a tree • Factor as before, but more care to decide if b , ¯ b moves to or from root. Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do S CHEMATIC FACTORISATION q ) G ( z , q ) + 2 z 2 G ( z ; q ) [ E ◦ L ( z ; q )] G ( z ; q ) = 1 + z ( q + ¯ Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do S CHEMATIC FACTORISATION q ) G ( z , q ) + 2 z 2 G ( z ; q ) [ E ◦ L ( z ; q )] G ( z ; q ) = 1 + z ( q + ¯ q ) L ( z ; q ) + z 2 L ( z ; q ) [ E ◦ L ( z ; q )] + z 2 [ O ◦ L ( z ; q )] [ E ◦ L ( z ; q )] L ( z ; q ) = 1 + z ( q + ¯ Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do S CHEMATIC FACTORISATION q ) G ( z , q ) + 2 z 2 G ( z ; q ) [ E ◦ L ( z ; q )] G ( z ; q ) = 1 + z ( q + ¯ q ) L ( z ; q ) + z 2 L ( z ; q ) [ E ◦ L ( z ; q )] + z 2 [ O ◦ L ( z ; q )] [ E ◦ L ( z ; q )] L ( z ; q ) = 1 + z ( q + ¯ • Solve for G ( z ; q ) — algebraic function • Take constant term wrt q — D-finite function Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do M ORE GENERALLY D-finite solution for BS ( N , N ) = � a , b | a N b = ba N � • Similar factorisation gives G ( z , q ) algebraic degree N + 1 • Take constant term wrt q gives D-finite solution Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do M ORE GENERALLY D-finite solution for BS ( N , N ) = � a , b | a N b = ba N � • Similar factorisation gives G ( z , q ) algebraic degree N + 1 • Take constant term wrt q gives D-finite solution • Growth rate of trivial words are algebraic numbers • The DE satisfied by the CT gets worse with N • BS ( 1 , 1 ) — Write as elliptic integrals • BS ( 2 , 2 ) — 6 th order ODE, coeffs degree ≤ 47 • BS ( 3 , 3 ) — 8 th order ODE, coeffs degree ≤ 105 • BS ( 10 , 10 ) — 22 nd order ODE — 6 megabyte text file! • A big thanks to [Manuel Kauers] for help with this. Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do M ORE GENERALLY STILL — MESSIER A similar factorisation gives Functional equations for BS ( N , M ) = � a , b | a N b = ba M � q ) L + z 2 L · [Φ N , M ◦ L + Φ M , N ◦ K ] − z 2 [Φ M , N ◦ K ] · [Φ N , N ◦ L ] , L = 1 + z ( q + ¯ q ) K + z 2 K · [Φ M , N ◦ K + Φ N , M ◦ L ] − z 2 [Φ N , M ◦ L ] · [Φ M , M ◦ K ] , K = 1 + z ( q + ¯ q ) G + z 2 G · [Φ N , M ◦ L + Φ M , N ◦ K ] , G = 1 + z ( q + ¯ where c n , k q k = � � c n , j · d q j · e Φ d , e ◦ k j [E, JvR, R & Wong 2014] • Unable to solve closed form — even for BS ( 1 , 2 ) . • Series generation hard since deg q [ z n ] G ( z ; q ) grows exponentially with n . Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do E XTENSION TO BRAIDS • We [E, Rogers & R] have extended this to B 3 = � a , b | aba = bab � = � c , d | c 3 = d 2 � • Again, solution is constant term of algebraic function. • Extends to � c , d | c n = d m � • But unfortunately doesn’t appear to work for B n with n ≥ 4 Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do E XTENSION TO BRAIDS • We [E, Rogers & R] have extended this to B 3 = � a , b | aba = bab � = � c , d | c 3 = d 2 � • Again, solution is constant term of algebraic function. • Extends to � c , d | c n = d m � • But unfortunately doesn’t appear to work for B n with n ≥ 4 • Now some results.. . Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do V ERY SHORT RUNS USING SAMC • Start with Kuksov’s exact results Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do V ERY SHORT RUNS USING SAMC • Start with Kuksov’s exact results � a , b | a 2 , b 3 � 600 exact log g ( n ) 400 200 0 0 250 500 Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do V ERY SHORT RUNS USING SAMC • Start with Kuksov’s exact results � a , b | a 3 , b 3 � 600 exact log g ( n ) 400 200 0 0 250 500 Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do V ERY SHORT RUNS USING SAMC • Start with Kuksov’s exact results � a , b | a 2 , b 2 , c 2 � 750 exact log g ( n ) 500 250 0 0 250 500 In all cases relative error was 0 . 1 ∼ 1 % Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do V ERY SHORT RUNS USING SAMC • Braid 3 and friends Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do V ERY SHORT RUNS USING SAMC • Braid 3 and friends � a , b | aba = bab � 600 exact log g ( n ) 400 200 0 250 500 Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do V ERY SHORT RUNS USING SAMC • Braid 3 and friends � a , b | a 2 = b 3 � 600 exact log g ( n ) 400 200 0 250 500 Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do V ERY SHORT RUNS USING SAMC • Braid 3 and friends � a , b | a 3 = b 3 � 600 exact log g ( n ) 400 200 0 250 500 Again, relative error was 0 . 1 ∼ 1 % Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do S LIGHTLY LONGER RUNS USING SAMC • Baumslag Solitar groups with exact cogrowth Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do S LIGHTLY LONGER RUNS USING SAMC • Baumslag Solitar groups with exact cogrowth � a , b | ab = ba � 600 exact log g ( n ) 400 200 0 250 500 Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do S LIGHTLY LONGER RUNS USING SAMC • Baumslag Solitar groups with exact cogrowth � a , b | aab = baa � 500 exact log g ( n ) 250 0 250 500 Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do S LIGHTLY LONGER RUNS USING SAMC • Baumslag Solitar groups with exact cogrowth � a , b | a 3 b = ba 3 � exact 400 log g ( n ) 200 0 250 500 Again, relative error was 0 . 1 ∼ 1 % Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do L ONGER RUNS USING SAMC • Baumslag Solitar groups, no exact solutions Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do L ONGER RUNS USING SAMC • Baumslag Solitar groups, no exact solutions � a , b | a 2 b = ba 3 � log g ( n ) 400 approx exact 200 0 250 500 Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do L ONGER RUNS USING SAMC • Baumslag Solitar groups, no exact solutions � a , b | ab = ba 2 � 600 log g ( n ) approx exact 400 200 0 250 500 Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do L ONGER RUNS USING SAMC • Baumslag Solitar groups, no exact solutions � a , b | ab = ba 2 � 600 log g ( n ) approx exact 400 200 0 250 500 BS23 well behaved, but BS12 and BS13 much slower to converge Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do L ONGER RUNS USING SAMC • Baumslag Solitar groups, no exact solutions � a , b | ab = ba 2 � 600 log g ( n ) approx exact 400 200 0 250 500 BS23 well behaved, but BS12 and BS13 much slower to converge — why? Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do W HAT CAN WE SEE IN F? ab − 1 , a − 1 ba ab − 1 , a − 2 ba 2 � • Now look at F = � a , b | � � � , � Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do W HAT CAN WE SEE IN F? ab − 1 , a − 1 ba ab − 1 , a − 2 ba 2 � • Now look at F = � a , b | � � � , � 200 log g ( n ) exact 100 0 100 200 Thanks to [Elvey Price & Guttmann] for exact data Rechnitzer
Counting From SAPs to groups Histograms Exact Results To do N OW WE HAVE APPROXIMATE ENUMERATION DATA What is the scaling of c ( n ) ? Rechnitzer
Recommend
More recommend