Senior Project Board Implementation of the Solution to the Conjugacy Problem in Thompson’s Group F by Nabil Hossain Advisers: James Belk & Robert McGrail.

Slides:



Advertisements
Similar presentations
Great Theoretical Ideas in Computer Science for Some.
Advertisements

2012: J Paul GibsonT&MSP: Mathematical FoundationsMAT7003/L2-GraphsAndTrees.1 MAT 7003 : Mathematical Foundations (for Software Engineering) J Paul Gibson,
Divide and Conquer. Subject Series-Parallel Digraphs Planarity testing.
Graph-02.
Convex drawing chapter 5 Ingeborg Groeneweg. Summery What is convex drawing What is convex drawing Some definitions Some definitions Testing convexity.
13 May 2009Instructor: Tasneem Darwish1 University of Palestine Faculty of Applied Engineering and Urban Planning Software Engineering Department Introduction.
2/14/13CMPS 3120 Computational Geometry1 CMPS 3120: Computational Geometry Spring 2013 Planar Subdivisions and Point Location Carola Wenk Based on: Computational.
22C:19 Discrete Structures Trees Spring 2014 Sukumar Ghosh.
To show that the Kauffman Bracket is unchanged under each of the three Reidemeister moves. First explain the basics of knot theory. Then show you what.
Edited by Malak Abdullah Jordan University of Science and Technology Data Structures Using C++ 2E Chapter 12 Graphs.
Midwestern State University Department of Computer Science Dr. Ranette Halverson CMPS 2433 CHAPTER 4 - PART 2 GRAPHS 1.
Forest Diagrams for Thompson’s Group Jim Belk. Associative Laws Consider the following piecewise-linear homeomorphism of  :
Chapter 3 The Greedy Method 3.
Weizmann Institute Deciding equality formulas by small domain instantiations O. Shtrichman The Weizmann Institute Joint work with A.Pnueli, Y.Rodeh, M.Siegel.
Applied Discrete Mathematics Week 12: Trees
Section 2.1 Euler Cycles Vocabulary CYCLE – a sequence of consecutively linked edges (x 1,x2),(x2,x3),…,(x n-1,x n ) whose starting vertex is the ending.
Lists A list is a finite, ordered sequence of data items. Two Implementations –Arrays –Linked Lists.
Recognizing Strings in NP Marcus Schaefer, Eric Sedgwick, Daniel Štefankovič Presentation by Robert Salazar.
Tucker, Applied Combinatorics, Section 1.4, prepared by Patti Bodkin
Haplotyping via Perfect Phylogeny Conceptual Framework and Efficient (almost linear-time) Solutions Dan Gusfield U.C. Davis RECOMB 02, April 2002.
Thompson’s Group Jim Belk. Associative Laws Let  be the following piecewise-linear homeomorphism of  :
Conjugacy in Thompson’s Group Jim Belk (joint with Francesco Matucci)
Conjugacy and Dynamics in Thompson’s Groups Jim Belk (joint with Francesco Matucci)
Curve Curve: The image of a continous map from [0,1] to R 2. Polygonal curve: A curve composed of finitely many line segments. Polygonal u,v-curve: A polygonal.
LINEAR EQUATIONS IN TWO VARIABLES. System of equations or simultaneous equations – System of equations or simultaneous equations – A pair of linear.
Chapter 15 Graph Theory © 2008 Pearson Addison-Wesley.
Induction and recursion
Applied Discrete Mathematics Week 10: Equivalence Relations
Graph Algorithms Using Depth First Search Prepared by John Reif, Ph.D. Distinguished Professor of Computer Science Duke University Analysis of Algorithms.
1 Shortest Path Calculations in Graphs Prof. S. M. Lee Department of Computer Science.
Binary Decision Diagrams (BDDs)
2IL05 Data Structures Fall 2007 Lecture 13: Minimum Spanning Trees.
Foundations of Discrete Mathematics
1 CS104 : Discrete Structures Chapter V Graph Theory.
Daniel Kroening and Ofer Strichman 1 Decision Procedures An Algorithmic Point of View BDDs.
A new linear algorithm for checking a graph for 3-edge-connectivity Feng Sun Advisor: Dr. Robert W. Robinson Committee: Dr. E. Rodney Canfield Dr. Eileen.
MAT 2720 Discrete Mathematics Section 8.7 Planar Graphs
15-853Page :Algorithms in the Real World Planar Separators I & II – Definitions – Separators of Trees – Planar Separator Theorem.
Daniel Kroening and Ofer Strichman 1 Decision Procedures An Algorithmic Point of View BDDs.
An Introduction to Graph Theory
Graphs A ‘Graph’ is a diagram that shows how things are connected together. It makes no attempt to draw actual paths or routes and scale is generally inconsequential.
Graph Theory and Applications
CSCI 115 Chapter 8 Topics in Graph Theory. CSCI 115 §8.1 Graphs.
Interval Notation Interval Notation to/from Inequalities Number Line Plots open & closed endpoint conventions Unions and Intersections Bounded vs. unbounded.
DISCRETE COMPUTATIONAL STRUCTURES
CSE 421 Algorithms Richard Anderson Winter 2009 Lecture 5.
8.4 Closures of Relations Definition: The closure of a relation R with respect to property P is the relation obtained by adding the minimum number of.
Chapter 11 - Graph CSNB 143 Discrete Mathematical Structures.
S&H Planarity Test Based on PC-Trees Wen-Lian Hsu.
Great Theoretical Ideas in Computer Science for Some.
Braids Without Twists Jim Belk* and Francesco Matucci.
Chapter 20: Graphs. Objectives In this chapter, you will: – Learn about graphs – Become familiar with the basic terminology of graph theory – Discover.
Introduction to NP Instructor: Neelima Gupta 1.
Lecture 12 Algorithm Analysis Arne Kutzner Hanyang University / Seoul Korea.
1 GRAPHS – Definitions A graph G = (V, E) consists of –a set of vertices, V, and –a set of edges, E, where each edge is a pair (v,w) s.t. v,w  V Vertices.
Review: Discrete Mathematics and Its Applications
Algorithms and Networks
GRAPHS Lecture 16 CS2110 Fall 2017.
Graph theory Definitions Trees, cycles, directed graphs.
Lecture 12 Algorithm Analysis
Greedy Algorithms / Minimum Spanning Tree Yin Tat Lee
Implementation of a Solution to the
CS202 - Fundamental Structures of Computer Science II
Graph Algorithms Using Depth First Search
The Art Gallery Problem
Bart M. P. Jansen June 3rd 2016, Algorithms for Optimization Problems
Lecture 12 Algorithm Analysis
Review: Discrete Mathematics and Its Applications
Chapter 15 Graph Theory © 2008 Pearson Addison-Wesley.
Lecture 12 Algorithm Analysis
Presentation transcript:

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

Conjugacy: In a group G, the elements g 1, g 2 ϵ G are conjugate if there exists hϵG such that g 1 = hg 2 h -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 Group Conjugacy

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 : x o & x 1 Thompson’s Group F

Tree diagram: Convert breakpoints into trees Tree & Strand Diagrams Domain Codomain x0x0

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 Codomain x0x0

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 Diagrams for Generators of F

Concatenation (composition of elements) Closing (produces the Annular Strand Diagram) Strand Diagram Manipulations

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 Annular Strand Diagrams (ASD) a split a merge ASD for x 1 A free loop

Reductions A reduction of an ASD simplifies the directed graph using one of the three moves shown below. An ASD is reduced if it is subject to no further reductions These moves ensure that each ASD reduces to a unique normal form

Red and blue subject to type II move Green subject to type I move Example of Reducing an ASD 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 reduced ASDs 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. A 1 and A 2 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 reduced ASDs 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 A and B can be encoded into two planar graphs P A and P B respectively such that A and B are isotopic if and only if P A and P B 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 ) Method: close() Annular – vertices (LinkedList ) – cuttingPath (LinkedList ): a sequence of edges in the cutting path – stackReduceSplits (Stack ): stores split vertices to identify reductions – Methods: reduce(), getComponents(), encodeToPlanarGraph()

Easy to see: algorithm is linear up to ASD creation

stackReduceSplits initially stores all splits at concatenations (exposed to reduction II ) while (!stackReduceSplits.isEmpty()): Vertex v = stackReduceSplits.pop() if reduction I possible at v : reduction I ( v ) else if reduction II possible at v : reduction II ( v ) Perform all reduction III (check for adjacent free loops in cuttingPath) – NOTE: reduction I or II can add vertices to stackReduceSplits reduce()

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 : e 1 = e 4  For reduction II : e 1 = e 4 or e 2 = e 5 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 stackReduceSplits during each reduction I or II

Therefore algorithm is linear up to Reduce

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)

Linear up to CC Labeling

Encoding to Planar Graph Recall: isotopy of ASDs was reduced to isomorphism of planar graphs – Any two connected, reduced ASDs A and B can be encoded into two planar graphs P A and P B respectively such that A and B are isotopic if and only if P A and P B are isomorphic.

Encoding to Planar Graph Recall: isotopy of ASDs was reduced to isomorphism of planar graphs – Any two connected, reduced ASDs A and B can be encoded into two planar graphs P A and P B respectively such that A and B are isotopic if and only if P A and P B 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 A and B can be encoded into two planar graphs P A and P B respectively such that A and B are isotopic if and only if P A and P B 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, in k ) uniquely identifies the edge class of e k

Encoding to Planar Graph Recall: isotopy of ASDs was reduced to isomorphism of planar graphs – Any two connected, reduced ASDs A and B can be encoded into two planar graphs P A and P B respectively such that A and B are isotopic if and only if P A and P B 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, in k ) uniquely identifies the edge class of e k

Linear up to Encoding to Planar Graph

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

Implementation

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(n 2 ) 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 6 th annular ACM symposium on Theory of Computing, 1974, pp [3] Nabil Hossain, Algorithm for the Conjugacy Problem in Thompson’s Group F, 2013, Online; accessed 5 May, 2013http://

Question Time !!

The Comprehensive Data Structure

Evaluation

Verification 6/10/2016Nabil Hossain37