Computing Dehn Twists and Geometric Intersection Numbers in Polynomial Time Marcus Schaefer, Eric Sedgwick DePaul University (Chicago) Daniel Štefankovič University of Rochester
What is a curve? Some history of algorithmic problems. Representing surfaces. Representing simple curves in surfaces. Transforming between various representations. TOOL: Word equations. What is a Dehn twist and why is it interesting? Computing Dehn twists. Open questions. outline
Curves on surfaces different? same? closed curve homeomorphic image of circle S 1 simple closed curve = is injective (no self-intersections)
Curves on surfaces different? same? homotopy equivalent
Curves on surfaces different? same? homotopy equivalent
Curves on surfaces different? same? homotopy equivalent
Curves on surfaces different? same? homotopy equivalent
Curves on surfaces not homotopy equivalent
Curves on surfaces curves continuous objects homotopy classes of curves combinatorial objects 1) how to represent them? 2) what/how to compute?
Geometric intersection number minimum number of intersections achievable by continuous deformations.
Geometric intersection number minimum number of intersections achievable by continuous deformations. i( , )=2
EXAMPLE: Geometric intersection numbers are well understood on the torus (3,5) (2,-1) det = -13
What is a curve? Some history of algorithmic problems. Representing surfaces. Representing simple curves in surfaces. Transforming between various representations. TOOL: Word equations. What is a Dehn twist and why is it interesting? Computing Dehn twists. Open questions. outline
Algorithmic problems - History Contractibility (Dehn 1912) can shrink curve to point? Transformability (Dehn 1912) are two curves homotopy equivalent? Schipper ’92; Dey ’94; Schipper, Dey ’95 Dey-Guha ’99 (linear-time algorithm) Simple representative (Poincaré 1895) can avoid self-intersections? Reinhart ’62; Ziechang ’65; Chillingworth ’69 Birman, Series ’84
Geometric intersection number minimal number of intersections of two curves Reinhart ’62; Cohen,Lustig ’87; Lustig ’87; Hamidi-Tehrani ’97 Computing Dehn-twists “wrap” curve along curve Penner ’84; Hamidi-Tehrani, Chen ’96; Hamidi-Tehrani ’01 polynomial only in explicit representations polynomial in compressed representations, but only for fixed set of curves Algorithmic problems - History
Algorithmic problems – our results Geometric intersection number minimal number of intersections of two curves Reinhart ’62; Cohen,Lustig ’87; Lustig ’87; Hamidi-Tehrani ’97, Schaefer-Sedgewick-Š ’08 Computing Dehn-twists “wrap” curve along curve Penner ’84; Hamidi-Tehrani, Chen ’96; Hamidi-Tehrani ’01, Schaefer-Sedgewick-Š ’08 polynomial in explicit compressed representations polynomial in compressed representations, for fixed set of curves any pair of curves
What is a curve? Some history of algorithmic problems. Representing surfaces. Representing simple curves in surfaces. Transforming between various representations. TOOL: Word equations. What is a Dehn twist and why is it interesting? Computing Dehn twists. Open questions. outline
How to represent surfaces?
Combinatorial description of a surface 1. (pseudo) triangulation bunch of triangles + description of how to glue them a b c
Combinatorial description of a surface 2. pair-of-pants decomposition bunch of pair-of-pants + description of how to glue them (cannnot be used to represent: ball with 2 holes, torus)
Combinatorial description of a surface 3. polygonal schema 2n-gon + pairing of the edges = a a b b
What is a curve? Some history of algorithmic problems. Representing surfaces. Representing simple curves in surfaces. Transforming between various representations. TOOL: Word equations. What is a Dehn twist and why is it interesting? Computing Dehn twists. Open questions. outline
How to represent simple curves in surfaces (up to homotopy)? Ideally the representation is “unique” (each curve has a unique representation)
Combinatorial description of a (homotopy type of) a simple curve in a surface 1.intersection sequence with a triangulation a b c
Combinatorial description of a (homotopy type of) a simple curve in a surface 1.intersection sequence with a triangulation a b c bc -1 bc -1 ba -1 almost unique if triangulation points on S
Combinatorial description of a (homotopy type of) a simple curve in a surface 2. normal coordinates (w.r.t. a triangulation) a)=1 b)=3 c)=2 (Kneser ’29) unique if triangulation points on S
Combinatorial description of a (homotopy type of) a simple curve in a surface 2. normal coordinates (w.r.t. a triangulation) a)=100 b)=300 c)=200 ? ? a very concise representation!
Recap: 1) how to represent them? 2) what/how to compute? 1.intersection sequence with a triangulation 2. normal coordinates (w.r.t. a triangulation) bc -1 bc -1 ba -1 a)=1 b)=3 c)=2 geometric intersection number
What is a curve? Some history of algorithmic problems. Representing surfaces. Representing simple curves in surfaces. Transforming between various representations. TOOL: Word equations. What is a Dehn twist and why is it interesting? Computing Dehn twists. Open questions. outline
STEP1: Moving between the representations 1.intersection sequence with a triangulation 2. normal coordinates (w.r.t. a triangulation) bc -1 bc -1 ba -1 a)=1 b)=3 c)=2 Can we move between these two representations efficiently? a)= b)= c)=2 101
STEP1: Moving between the representations 1.intersection sequence with a triangulation 2. normal coordinates (w.r.t. a triangulation) bc -1 bc -1 ba -1 a)=1 b)=3 c)=2 Can we move between these two representations efficiently? a)= b)= c)=2 101 YES
compressed = straight line program (SLP) X 0 a X 1 b X 2 X 1 X 1 X 3 X 0 X 2 X 4 X 2 X 1 X 5 X 4 X 3 Theorem (SSS’08): normal coordinates compressed intersection sequence in time O( log (e)) compressed intersection sequence normal coordinates in time O(|T|.SLP-length(S)) X 5 = bbbabb
What is a curve? Some history of algorithmic problems. Representing surfaces. Representing simple curves in surfaces. Transforming between various representations. TOOL: Word equations. What is a Dehn twist and why is it interesting? Computing Dehn twists. Open questions. outline
Main tool: Word equations xabx =yxy x,y – variables a,b - constants
xabx =yxy x,y – variables a,b - constants a solution: x=ab y=ab Main tool: Word equations
Word equations with given lengths x,y – variables a,b - constants xayxb = axbxy additional constraints: |x|=4, |y|=1
Word equations with given lengths x,y – variables a,b - constants xayxb = axbxy additional constraints: |x|=4, |y|=1 a solution: x=aaaa y=b
Word equations word equations word equations with given lengths
Word equations word equations - NP-hard word equations with given lengths Plandowski, Rytter ’98 – polynomial time algorithm Diekert, Robson ’98 – linear time for quadratic eqns decidability – Makanin 1977 PSPACE – Plandowski 1999 (quadratic = each variable occurs 2 times)
Simulating curve using quadratic word equations X y z u v u=xy... v=u |u|=|v|= (u)... Diekert-Robson number of components w z |x|=(|z|+|u|-|w|)/2
Moving between the representations 1.intersection sequence with a triangulation 2. normal coordinates (w.r.t. a triangulation) bc -1 bc -1 ba -1 a)=1 b)=3 c)=2 Theorem: normal coordinates compressed intersection sequence in time O( log (e)) “Proof”: X y z u v u=xy... av=ua |u|=|v|=| T| (u)
What is a curve? Some history of algorithmic problems. Representing surfaces. Representing simple curves in surfaces. Transforming between various representations. TOOL: Word equations. What is a Dehn twist and why is it interesting? Computing Dehn twists. Open questions. outline
Dehn twist of along
D()D()
D()D()
Geometric intersection numbers n¢ i( , )i( , ) -i( , ) i( ,D n ( )) n¢ i( , )i( , )+i( , ) i( ,D n ( ))/i( , ) ! i( ,
What is a curve? Some history of algorithmic problems. Representing surfaces. Representing simple curves in surfaces. Transforming between various representations. TOOL: Word equations. What is a Dehn twist and why is it interesting? Computing Dehn twists. Open questions. outline
Computing Dehn-Twists (outline) 1. normal coordinates ! word equations with given lengths 2. solution = compressed intersection sequence with triangulation 3. sequences ! (non-reduced) word for Dehn-twist (substitution in SLPs) 4. Reduce the word ! normal coordinates
What is a curve? Some history of algorithmic problems. Representing surfaces. Representing simple curves in surfaces. Transforming between various representations. TOOL: Word equations. What is a Dehn twist and why is it interesting? Computing Dehn twists. Open questions. outline
PROBLEM #1: Minimal weight representative 2. normal coordinates (w.r.t. a triangulation) a)=1 b)=3 c)=2 unique if triangulation points on S
PROBLEM #1: Minimal weight representative INPUT: triangulation + gluing normal coordinates of edge weights OUTPUT: ’ minimizing ’(e) eTeT
PROBLEM #2: Moving between representations 3. Dehn-Thurston coordinates (Dehn ’38, W.Thurston ’76) unique representation for closed surfaces! PROBLEM normal coordinates Dehn-Thurston coordinates in polynomial time? linear time?
PROBLEM #3: Word equations PROBLEM: are word equations in NP? are quadratic word equations in NP? NP-hard decidability – Makanin 1977 PSPACE – Plandowski 1999
PROBLEM #4: Computing Dehn-Twists faster? 1. normal coordinates ! word equations with given lengths 2. solution = compressed intersection sequence with triangulation 3. sequences ! (non-reduced) word for Dehn-twist (substitution in SLPs) 4. Reduce the word ! normal coordinates O(n 3 ) randomized, O(n 9 ) deterministic