Computing Dehn Twists and Geometric Intersection Numbers in Polynomial Time Marcus Schaefer, Eric Sedgwick DePaul University (Chicago) Daniel Štefankovič.

Slides:



Advertisements
Similar presentations
Algorithms Algorithm: what is it ?. Algorithms Algorithm: what is it ? Some representative problems : - Interval Scheduling.
Advertisements

Lecture 24 MAS 714 Hartmut Klauck
An Application of Lie theory to Computer Graphics Applied Topology 25 th July Będlewo Shizuo KAJI Yamaguchi University JST/CREST.
The CORS method Selecting the roots of a system of polynomial equations with combinatorial optimization H. Bekker E.P. Braad B. Goldengorin University.
Chapter 2 Functions and Graphs
Algorithmic Problems for Curves on Surfaces Daniel Štefankovič University of Rochester.
Computing the Fréchet Distance Between Folded Polygons
Xianfeng Gu, Yaling Wang, Tony Chan, Paul Thompson, Shing-Tung Yau
Knots and Links - Introduction and Complexity Results Krishnaram Kenthapadi 11/27/2002.
Uncertainty Representation. Gaussian Distribution variance Standard deviation.
CS447/ Realistic Rendering -- Solids Modeling -- Introduction to 2D and 3D Computer Graphics.
A Bezier Based Approach to Unstructured Moving Meshes ALADDIN and Sangria Gary Miller David Cardoze Todd Phillips Noel Walkington Mark Olah Miklos Bergou.
Complexity 15-1 Complexity Andrei Bulatov Hierarchy Theorem.
Computational Geometry The art of finding algorithms for solving geometrical problems Literature: –M. De Berg et al: Computational Geometry, Springer,
An Algorithm for Polytope Decomposition and Exact Computation of Multiple Integrals.
2003 by Jim X. Chen: Introduction to Modeling Jim X. Chen George Mason University.
Recognizing Strings in NP Marcus Schaefer, Eric Sedgwick, Daniel Štefankovič Presentation by Robert Salazar.
NP-Complete Problems Reading Material: Chapter 10 Sections 1, 2, 3, and 4 only.
6/20/2015List Decoding Of RS Codes 1 Barak Pinhas ECC Seminar Tel-Aviv University.
Many slides and illustrations from J. Ponce
Fat Curves and Representation of Planar Figures L.M. Mestetskii Department of Information Technologies, Tver’ State University, Tver, Russia Computers.
Recognizing String Graphs in NP Marcus Schaefer Eric Sedgwick Daniel Štefankovič.
Inverse Kinematics Jacobian Matrix Trajectory Planning
Systems of Linear Equations Vocabulary. This is a System of Linear Equations.
The Art Gallery Problem
Modeling and representation 1 – comparative review and polygon mesh models 2.1 Introduction 2.2 Polygonal representation of three-dimensional objects 2.3.
Barnett/Ziegler/Byleen Finite Mathematics 11e1 Chapter 2 Review Important Terms, Symbols, Concepts 2.1. Functions Point-by-point plotting may be used to.
CSE53111 Computational Geometry TOPICS q Preliminaries q Point in a Polygon q Polygon Construction q Convex Hulls Further Reading.
Preview of Calculus.
Introduction à la vision artificielle III Jean Ponce
Geometric Representations of Graphs A survey of recent results and problems Jan Kratochvíl, Prague.
Computing Optimal Graphs on Surfaces Jeff Erickson University of Illinois at Urbana-Champaign Jeff Erickson University of Illinois at Urbana-Champaign.
C O M P U T E R G R A P H I C S Stuff Jian Chen January 15, 2010 Transformations 1/10 Describing Shape By Andries van Dam.
On the union of cylinders in 3-space Esther Ezra Duke University.
Computer Vision, Robert Pless Lecture 11 our goal is to understand the process of multi-camera vision. Last time, we studies the “Essential” and “Fundamental”
How to reform a terrain into a pyramid Takeshi Tokuyama (Tohoku U) Joint work with Jinhee Chun (Tohoku U) Naoki Katoh (Kyoto U) Danny Chen (U. Notre Dame)
Section 4-1: Introduction to Linear Systems. To understand and solve linear systems.
TECH Computer Science NP-Complete Problems Problems  Abstract Problems  Decision Problem, Optimal value, Optimal solution  Encodings  //Data Structure.
1 The number of crossings of curves on surfaces Moira Chas from Stony Brook University King Abdul- Aziz University Spring 2012.
Section 2-8 First Applications of Groebner Bases by Pablo Spivakovsky-Gonzalez We started this chapter with 4 problems: 1.Ideal Description Problem: Does.
Week 10Complexity of Algorithms1 Hard Computational Problems Some computational problems are hard Despite a numerous attempts we do not know any efficient.
Scientific Computing General Least Squares. Polynomial Least Squares Polynomial Least Squares: We assume that the class of functions is the class of all.
THE LAPLACE TRANSFORM LEARNING GOALS Definition
Greedy Optimal Homotopy and Homology Generators Jeff Erickson and Kim Whittlesey University of Illinois, Urbana-Champaign To appear at SODA 2005
Approximate Inference: Decomposition Methods with Applications to Computer Vision Kyomin Jung ( KAIST ) Joint work with Pushmeet Kohli (Microsoft Research)
linear  2.3 Newton’s Method ( Newton-Raphson Method ) 1/12 Chapter 2 Solutions of Equations in One Variable – Newton’s Method Idea: Linearize a nonlinear.
CSE 589 Part V One of the symptoms of an approaching nervous breakdown is the belief that one’s work is terribly important. Bertrand Russell.
Strings Basic data type in computational biology A string is an ordered succession of characters or symbols from a finite set called an alphabet Sequence.
3D Object Representations 2011, Fall. Introduction What is CG?  Imaging : Representing 2D images  Modeling : Representing 3D objects  Rendering : Constructing.
Graphing Linear Equations 4.2 Objective 1 – Graph a linear equation using a table or a list of values Objective 2 – Graph horizontal or vertical lines.
CS654: Digital Image Analysis Lecture 11: Image Transforms.
Instructor: Mircea Nicolescu Lecture 9
TU/e Algorithms (2IL15) – Lecture 12 1 Linear Programming.
Common Intersection of Half-Planes in R 2 2 PROBLEM (Common Intersection of half- planes in R 2 ) Given n half-planes H 1, H 2,..., H n in R 2 compute.
Approximation Algorithms based on linear programming.
The NP class. NP-completeness Lecture2. The NP-class The NP class is a class that contains all the problems that can be decided by a Non-Deterministic.
TU/e Algorithms (2IL15) – Lecture 12 1 Linear Programming.
 How do I solve a system of Linear equations using the graphing method?
Opportunities in Map-Making Alan Saalfeld. April 20-22, 2007Computational and Conformal Geometry2 Cartographers can make maps that: Preserve all angles.
Chapter 2 Functions and Graphs
Chapter 6 Conic Sections
Movable lines class activity.
Constructing Objects in Computer Graphics By Andries van Dam©
Probabilistic Models for Linear Regression
Constrained Bipartite Vertex Cover: The Easy Kernel is Essentially Tight Bart M. P. Jansen June 4th, WORKER 2015, Nordfjordeid, Norway.
Points of intersection of linear graphs an quadratic graphs
Comparing and Contrasting Functions
Process Class Org. Property Class Computation Class Well Log
Chapter 8 Systems of Equations
Solving Linear Systems by Graphing
Presentation transcript:

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) eTeT

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