Algorithmic Problems for Curves on Surfaces Daniel Štefankovič University of Rochester.

Slides:



Advertisements
Similar presentations
Shortest Vector In A Lattice is NP-Hard to approximate
Advertisements

Lecture 24 MAS 714 Hartmut Klauck
Introduction to Kernel Lower Bounds Daniel Lokshtanov.
ENS 207 engineering graphics
Theory of Computing Lecture 16 MAS 714 Hartmut Klauck.
Abstract Order Type Extension and New Results on the Rectilinear Crossing Number Oswin Aichholzer Institute for Softwaretechnology Graz University of Technology.
Computational Topology for Computer Graphics Klein bottle.
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.
The number of edge-disjoint transitive triples in a tournament.
CS447/ Realistic Rendering -- Solids Modeling -- Introduction to 2D and 3D Computer Graphics.
Complexity 15-1 Complexity Andrei Bulatov Hierarchy Theorem.
Decidability of String Graphs Marcus Schaefer Daniel Stefankovic v v.
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.
FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY Read sections 7.1 – 7.3 of the book for next time.
Computing Dehn Twists and Geometric Intersection Numbers in Polynomial Time Marcus Schaefer, Eric Sedgwick DePaul University (Chicago) Daniel Štefankovič.
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.
Fat Curves and Representation of Planar Figures L.M. Mestetskii Department of Information Technologies, Tver’ State University, Tver, Russia Computers.
Chapter 11: Limitations of Algorithmic Power
Recognizing String Graphs in NP Marcus Schaefer Eric Sedgwick Daniel Štefankovič.
February 20, 2015CS21 Lecture 191 CS21 Decidability and Tractability Lecture 19 February 20, 2015.
Introduction Outline The Problem Domain Network Design Spanning Trees Steiner Trees Triangulation Technique Spanners Spanners Application Simple Greedy.
Contributed Talk at the International Workshop on VISUALIZATION and MATHEMATICS 2002 Thomas Lewiner, Hélio Lopes, Geovan Tavares Math&Media Laboratory,
The Art Gallery Problem
The Art Gallery Problem
Dana Moshkovitz, MIT Joint work with Subhash Khot, NYU.
Chapter 5 Linear Inequalities and Linear Programming Section R Review.
CSE53111 Computational Geometry TOPICS q Preliminaries q Point in a Polygon q Polygon Construction q Convex Hulls Further Reading.
Geometric Representations of Graphs A survey of recent results and problems Jan Kratochvíl, Prague.
C&O 355 Lecture 2 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A.
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.
UNC Chapel Hill M. C. Lin Point Location Reading: Chapter 6 of the Textbook Driving Applications –Knowing Where You Are in GIS Related Applications –Triangulation.
Theory of Computing Lecture 15 MAS 714 Hartmut Klauck.
February 18, 2015CS21 Lecture 181 CS21 Decidability and Tractability Lecture 18 February 18, 2015.
Theory of Computing Lecture 17 MAS 714 Hartmut Klauck.
On the union of cylinders in 3-space Esther Ezra Duke University.
PREPARED BY: SAMERA BINTI SAMSUDDIN SAH SEM /2012 (NOV 2011)
Finding Characteristic Substrings from Compressed Texts Shunsuke Inenaga Kyushu University, Japan Hideo Bannai Kyushu University, Japan.
Cs3102: Theory of Computation Class 24: NP-Completeness Spring 2010 University of Virginia David Evans.
1 The number of crossings of curves on surfaces Moira Chas from Stony Brook University King Abdul- Aziz University Spring 2012.
Complexity Non-determinism. NP complete problems. Does P=NP? Origami. Homework: continue on postings.
Computer Graphics Some slides courtesy of Pierre Alliez and Craig Gotsman Texture mapping and parameterization.
1 Dr. Scott Schaefer Intersecting Simple Surfaces.
Odd Crossing Number is NOT Crossing Number Michael Pelsmajer IIT (Chicago) Marcus Schaefer DePaul University (Chicago) Daniel Štefankovič University of.
Greedy Optimal Homotopy and Homology Generators Jeff Erickson and Kim Whittlesey University of Illinois, Urbana-Champaign To appear at SODA 2005
1/29/15CMPS 3130/6130 Computational Geometry1 CMPS 3130/6130 Computational Geometry Spring 2015 Triangulations and Guarding Art Galleries Carola Wenk.
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.
Computability NP complete problems. Space complexity. Homework: [Post proposal]. Find PSPACE- Complete problems. Work on presentations.
Descriptive Geometry. Introduction  What is Descriptive Geometry? →It is the study of points, lines, and planes in space to determine their locations.
Homework 8 Solutions Problem 1. Draw a diagram showing the various classes of languages that we have discussed and alluded to in terms of which class.
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.
CSCI 4325 / 6339 Theory of Computation Zhixiang Chen.
1 Schnyder’s Method. 2 Motivation Given a planar graph, we want to embed it in a grid We want the grid to be relatively small And we want an efficient.
Honors Track: Competitive Programming & Problem Solving Seminar Topics Kevin Verbeek.
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.
Intersecting Simple Surfaces
The Art Gallery Problem
Bart Jansen Polynomial Kernels for Hard Problems on Disk Graphs
Chapter 5 Linear Inequalities and Linear Programming
Chapter Nine: Advanced Topics in Regular Languages
Kinetic Collision Detection for Convex Fat Objects
Instructor: Aaron Roth
A Portrait of a Group on a Surface with Boundary
Presentation transcript:

Algorithmic Problems for Curves on Surfaces Daniel Štefankovič University of Rochester

● Simple curves on surfaces * representing surfaces, simple curves in surfaces * algorithmic questions, history ● TOOL: (Quadratic) word equations ● Regular structures in drawings (?) ● Using word equations (Dehn twist, geometric intersection numbers,...) ● What I would like... 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

Simple curves on surfaces closed curve  homeomorphic image of circle S 1 simple closed curve =  is injective (no self-intersections) (free) homotopy equivalent simple closed curves

How to represent simple curves in surfaces (up to homotopy)? Ideally the representation is “unique” (each curve has a unique representation) (properly embedded arc)

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! (compressed)

Combinatorial description of a (homotopy type of) a simple curve in a surface 3. weighted train track

Combinatorial description of a (homotopy type of) a simple curve in a surface 4. Dehn-Thurston coordinates ● number of intersections ● “twisting number” for each “circle” unique (important for surfaces without boundary)

● Simple curves on surfaces * representing surfaces, simple curves in surfaces * algorithmic questions, history ● TOOL: (Quadratic) word equations ● Regular structures in drawings (?) ● Using word equations (Dehn twist, geometric intersection numbers,...) ● What I would like... 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 – will show 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

● Simple curves on surfaces * representing surfaces, simple curves in surfaces * algorithmic questions, history ● TOOL: (Quadratic) word equations ● Regular structures in drawings (?) ● Using word equations (Dehn twist, geometric intersection numbers,...) ● What I would like... outline

Word equations xabx =yxy x,y – variables a,b - constants

xabx =yxy x,y – variables a,b - constants a solution: x=ab y=ab 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) In NP ???

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) In NP ??? exponential upper bound on the length of a minimal solution MISSING: OPEN:

● Simple curves on surfaces * representing surfaces, simple curves in surfaces * algorithmic questions, history ● TOOL: (Quadratic) word equations ● Regular structures in drawings (?) ● Using word equations (Dehn twist, geometric intersection numbers,...) ● What I would like... outline

Shortcut number  (g,k) k curves on surface of genus g intersecting another curve   (the curves do not intersect)

Shortcut number  (g,k) k curves on surface of genus g intersecting another curve  

Shortcut number  (g,k) k curves on surface of genus g intersecting another curve   

Shortcut number  (g,k) k curves on surface of genus g intersecting another curve  smallest n such that  n intersections  reduced drawing

Shortcut number  (g,1) 

Shortcut number  (1,2) 

Conjecture:  g,k)  C k Experimentally: ,2)  7 ,3)  31 (?) Known [Schaefer, Š ‘2000]:  (0,k)  2 k

Directed shortcut number  d (g,k) k curves on surface of genus g intersecting another curve    BAD

Directed shortcut number  d (g,k)  d (0,2) = 20 upper bound must depend on g,k finite? Experimentally:

Directed shortcut number  d (g,k) finite? quadratic word equation  drawing problem bound on  d ( ,  )  upper bound on word eq. x=yz z=wB x=Aw y=AB x y z w A B A B interesting?

Spirals spiral of depth 1 (spanning arcs, 3 intersections)     interesting for word equations

Unfortunately: Example with no spirals [Schaefer, Sedgwick, Š ’07]

Spirals and folds spiral of depth 1 (spanning arcs, 3 intersections)   fold of width 3 Pach-Tóth’01: In the plane (with puncures) either a large spiral or a large fold must exist.

Unfortunately: Example with no spirals, no folds [Schaefer, Sedgwick, Š ’07]

Embedding on torus

● Simple curves on surfaces * representing surfaces, simple curves in surfaces * algorithmic questions, history ● TOOL: (Quadratic) word equations ● Regular structures in drawings (?) ● Using word equations (Dehn twist, geometric intersection numbers,...) ● What I would like... outline

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

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

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

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

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 X 5 = bbbabb Plandowski, Rytter ’98 – polynomial time algorithm Diekert, Robson ’98 – linear time for quadratic eqns OUTPUT OF: CAN DO (in poly-time): ● count the number of occurrences of a symbol ● check equaltity of strings given by two SLP’s (Miyazaki, Shinohara, Takeda’02 – O(n 4 )) ● get SLP for f(w) where f is a substitution  * and w is given by SLP

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)

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( , 

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 (only for surfaces with  S  0)

● Simple curves on surfaces * representing surfaces, simple curves in surfaces * algorithmic questions, history ● TOOL: (Quadratic) word equations ● Regular structures in drawings (?) ● Using word equations (Dehn twist, geometric intersection numbers,...) ● What I would like... 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 4. 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

PROBLEM #5: Realizing geometric intersection #? our algorithm is very indirect can compress drawing realizing geometric intersection #? can find the drawing?