370 likes | 386 Views
Senior Project Board Implementation of the Solution to the Conjugacy Problem in Thompson’s Group F by Nabil Hossain. Advisers: James Belk & Robert McGrail Division of Science, Mathematics & Computing Bard College. Group Conjugacy.
E N D
Senior Project Board Implementation of the Solution to the Conjugacy Problem in Thompson’s Group FbyNabil Hossain Advisers: James Belk & Robert McGrail Division of Science, Mathematics & Computing Bard College
Group Conjugacy • Conjugacy: In a group G, the elements g1,g2ϵGare conjugate if there exists hϵGsuch that g1=hg2h-1 • Word:Given a group G with a generating set S, a word in S is an arbitrary product of the generators in S and their inverses. • A word represents an element of G • Conjugacy Problem: Find an algorithm to determine whether two words in a group represent conjugate elements
Thompson’s Group F • Infinite group of piecewise linear homeomorphisms of [0,1] • Pieces have finitely many breakpoints satisfying the conditions: • Every slope is a power of 2 • Every breakpoint has dyadic rational coordinates • rational numbers with denominators that are powers of 2 • Generators : xo & x1
Tree & Strand Diagrams • Tree diagram: Convert breakpoints into trees Domain x0 Codomain
Tree & Strand Diagrams • Tree diagram: Convert breakpoints into trees • Strand Diagram: • Glue domain and codomain trees at leaves • Edge directions: “Domain” vertices “Codomain” vertices Domain x0 Codomain
Strand Diagrams for Generators of F • Given a strand diagram S, we generate S -1 by: • reversing the edge directions in S, and then • flipping the resultant strand diagram vertically
Strand Diagram Manipulations • Concatenation (composition of elements) • Closing (produces the Annular Strand Diagram)
ASD for x1 Annular Strand Diagrams (ASD) • Finite digraphs embedded in the annulus such that • Every vertex is a split or a merge • Every directed cycle winds counterclockwise around the central hole • Can have free loops: directed cycles without any vertices a split a merge A free loop
Reductions • A reductionof an ASD simplifies the directed graph using one of the three moves shown below. • An ASD is reducedif it is subject to no further reductions • These moves ensure that each ASD reduces to a unique normal form
Example of Reducing an ASD • Redand blue subject to type II move • Green subject to type I move Key Points: – Reducing can change the number of components in an ASD – Components are concentric
Isotopy of ASDs & Conjugacy Theorem • Two ASDs are isotopic if one can be obtained from the other by some continuous motion in the annulus. Isotopic ASDs are considered equal • Conjugacy Theorem (Belk and Matucci): Let a and b be words representing elements of Thompson’s group F. Let A and B be the corresponding strand diagrams, and let A′ and B′ be the reducedASDs obtained by closing A and B and then reducing. Then a and b represent conjugate elements of F if and only if A′ and B′ are isotopic. A1 and A2 are isotopic
The Cutting Path • Path from inside hole of the annulus to the outside that crosses at least one edge in the ASD • Required to keep track of order of components when reducing an ASD • Every ASD produced by closing a strand diagram has a cutting path Allowed NOT Allowed
Example of Updating the Cutting Path • Rules to update the cutting path during reduction moves: • Example:
Solution to the Conjugacy Problem in F • Recall Conjugacy Theorem • Let a and b be words representing elements of Thompson’s group F. Let A and B be the corresponding strand diagrams, and let A′ and B′ be the reducedASDs obtained by closing A and B and then reducing. Then a and b represent conjugate elements if and only if A′ and B′ are isotopic. • Theorem: Any two connected, reduced ASDs Aand B can be encoded into two planar graphs PAand PB respectively such that A and B are isotopic if and only if PAand PB are isomorphic. • Hence isotopy detection reduced to isomorphism of planar graphs
Algorithm for the Conjugacy Problem in F Let n= |w1|+|w2|
The Data Structure • Edge • class (Tuple of integers): stores input-output type of the edge (i.e. left, right) • Methods: combineEdge(), makeFreeLoop() • Vertex • 4 Edges: Left Parent, Right Parent, Left Child, Right Child • type: an element in the set {source, sink, merge, split} • uniquely identifies the valid Edge objects associated with the vertex • Graph – stores planar graphs encoded from reduced ASD • Strand • source,sink: for fast concatenation, closing • vertices (LinkedList<Vertex>) • Method: close() • Annular • vertices (LinkedList<Vertex>) • cuttingPath(LinkedList<Edge>): a sequence of edges in the cutting path • stackReduceSplits (Stack<Vertex>): stores split vertices to identify reductions • Methods: reduce(), getComponents(), encodeToPlanarGraph()
reduce() stackReduceSplits initially stores all splits at concatenations (exposed to reduction II) while (!stackReduceSplits.isEmpty()): Vertex v = stackReduceSplits.pop() if reduction I possible at v: reductionI (v) else if reduction II possible at v: reductionII (v) Perform all reduction III (check for adjacent free loops in cuttingPath) • NOTE: reduction I or II can add vertices to stackReduceSplits
Analysis of reduce() • Updating the cutting path takes O(1) per reduction • Checking for free loops (+ creating) takes O(1) per reduction • For reduction I : e1 = e4 • For reduction II : e1 = e4 or e2 = e5 • Total number of reductions is O(n) – each reduction I or II removes two vertices • Total check for reductions is O(n) – constant number of splits put into stackReduceSplitsduring each reduction I or II
Connected Component Labeling • Breadth first search along vertices connected to edges in cutting path in concentric order
Connected Component Labeling • Breadth first search along vertices connected to edges in cutting path in concentric order • Analysis:Sum of vertices and edges in all the connected components is bounded by the sum of the vertices and edges in the reduced ASD • Hence CC Labeling is O(n)
Encoding to Planar Graph • Recall: isotopy of ASDs was reduced to isomorphism of planar graphs • Any two connected, reduced ASDs Aand B can be encoded into two planar graphs PAand PB respectively such that A and B are isotopic if and only if PAand PB are isomorphic.
Encoding to Planar Graph • Recall: isotopy of ASDs was reduced to isomorphism of planar graphs • Any two connected, reduced ASDs Aand B can be encoded into two planar graphs PAand PB respectively such that A and B are isotopic if and only if PAand PB are isomorphic. • The encoding function uniquely encodes each edge class • There is a free loop class • There are 9 classes between merges and splits
Encoding to Planar Graph • Recall: isotopy of ASDs was reduced to isomorphism of planar graphs • Any two connected, reduced ASDs Aand B can be encoded into two planar graphs PAand PB respectively such that A and B are isotopic if and only if PAand PB are isomorphic. • The encoding function uniquely encodes each edge class • There is a free loop class • There are 9 classes between merges and splits The number of edges (u, ink) uniquely identifies the edge class of ek
Encoding to Planar Graph • Recall: isotopy of ASDs was reduced to isomorphism of planar graphs • Any two connected, reduced ASDs Aand B can be encoded into two planar graphs PAand PB respectively such that A and B are isotopic if and only if PAand PB are isomorphic. • The encoding function uniquely encodes each edge class • There is a free loop class • There are 9 classes between merges and splits. • Analysis: Given a CC with |v| vertices and |e| edges, its encoded planar graphs has O(|v|) vertices and O(|e|) edges • Hence encoding to planar graph is O(n) The number of edges (u, ink) uniquely identifies the edge class of ek
Isomorphism Check • Uses O(|V|) algorithm proposed by Hopcroft and Wong (1974) for the isomorphism problem in planar graphs • Their algorithm accepts multigraphs • For each pair of corresponding planar graphs, check whether the graphs are isomorphic. • If all such pairs are isomorphic, then the corresponding elements are conjugate
Isomorphism Check • Uses O(|V|) algorithm proposed by Hopcroft and Wong (1974) for the isomorphism problem in planar graphs • Their algorithm accepts multigraphs • For each pair of corresponding planar graphs, check whether the graphs are isomorphic. • If all such pairs are isomorphic, then the corresponding elements are conjugate • This isomorphism checker is mainly theoretical and has not been implemented yet
Conclusion • Contributions: • a theoretical O(n) algorithm for conjugacy problem in Thompson’s Group F using directed graphs called annular strand diagrams • a data structure for storing and manipulating ASDs • O(n2) implementations • Our software can be extended to solve the conjugacy problems in the two other Thompson’s Groups: • Group V • Group T
References [1] James Belk and Francesco Matucci, Conjugacy and Dynamics in Thompson’s Groups, preprint (2013). [2] John Hopcroft and Jin-Kue Wong, Linear Time Algorithm for Isomorphism of Planar Graphs,Proceedings of the 6th annular ACM symposium on Theory of Computing, 1974, pp.172-184 [3] Nabil Hossain, Algorithm for the Conjugacy Problem in Thompson’s Group F, 2013, http://www.asclab.org/asc/nhossain/conjugacyF. Online; accessed 5 May, 2013
Verification Nabil Hossain