400 likes | 409 Views
This study examines the complexity of HV-Rectilinear Planarity Testing in both fixed and variable embedding settings. The results show NP-completeness in the variable embedding setting, and the existence of a polynomial-time algorithm for recognizing whether a series-parallel HV-graph admits an HV-drawing. Additionally, the study explores the class of HV-outerplanar graphs that admit HV-drawings.
E N D
On the Complexity of HV-Rectilinear Planarity Testing Perugia University Roma Tre University Walter Didimo, Giuseppe Liotta, Maurizio Patrignani
HV-graphs and HV-drawings • An HV-graph 7 7 H 6 8 V V V V 5 V H H H 8 4 3 5 V 1 2 H V V H 3 V H 6 2 1 H V 4 • An HV-drawing of it
HV-rectilinear planarity testing • A positive instance 9 V H 14 13 9 8 V V V V H H H H H V 15 12 11 8 7 10 13 6 H V V V 11 H H H V 14 H V 10 6 7 5 12 V V H H H H 2 4 5 15 H V V 4 V 2 H V 1 3 V H 3 1 An HV-graph An HV-drawing of it
HV-rectilinear planarity testing • A negative instance V V H 9 1 3 9 13 H V V 3 H H 13 1 V H 12 H H V 6 10 14 V V 15 V 14 V V V 11 H V V 4 H H H 10 4 7 11 15 H H V H V V V 2 6 V H H 7 2 5 8 12 H H 5 8 V No HV-drawing can be found An HV-graph
Rectilinear drawings • The HV-rectilinear planarity testing is a constrained case of rectilinear planarity testing • In a rectilinear orthogonal drawing each edge is a horizontal or vertical segment and edges do not cross 9 6 8 7 4 3 5 12 11 10 2 1
Rectilinear planarity testing • Fixed embedding setting • Polynomial O(n2 log n) [Tamassia, 87] • Improved to O(n3/2) [Cornelsen, Karrenbauer, 12] • Linear for maximum degree three [Rahman, Nishizeki, Naznin, 03] • Variable embedding setting • NP-complete [Garg, Tamassia, 01] • Polynomial for biconnected series-parallel graphs and 3-planar graphs [Di Battista, Liotta, Vargiu, 98] • Polynomial for series-parallel graphs of maximum degree three [Zhou, Nishizeki, 08]
Constrained rectilinear planarity • “Left”, “Right”, “Up”, “Down” labeling • Polynomial O(n2) [Vijayan, Wigderson, 85] • Improved to linear [Hoffmann, Kriegel, 88] • Polynomial when crossings admitted [Maňuch, Patterson, Poon, Thachuk, 10] • 3D version (“Up”, “Down”, “Left”, “Right”, “Front”, “Back” labels) [Di Battista, Liotta, Lubiw, Whitesides, 02] [Di Giacomo, Liotta, Patrignani, 04] [Di Battista, Kim, Liotta, Lubiw, Whitesides, 12]
HV-rectilinear planarity testing • Fixed embedding setting • Polynomial [Durocher, Felsner, Mehrabi, Mondal, 14] • Variable embedding setting • Polynomial for biconnected outerplanar graphs with vertex-degree at most three [Durocher, Felsner, Mehrabi, Mondal, 14] • NP-hard when crossings admitted [Maňuch, Patterson, Poon, Thachuk, 10]
HV-rectilinear planarity testing • Questions • What is the complexity of HV-rectilinear planarity testing in the variable embedding setting? [Maňuch, Patterson, Poon, Thachuk, 10] [Durocher, Felsner, Mehrabi, Mondal, 14] • What is the class of HV-outerplanar graphs that admit HV-drawings? [Durocher, Felsner, Mehrabi, Mondal, 14]
Our results • HV-rectilinear planarity testing is NP-complete in the variable embedding setting • even for HV-graphs with vertex-degree at most three • There exists a polynomial-time algorithm to recognize whether a series-parallel HV-graph admits an HV-drawing • extended to partial 2-trees
Our results • HV-rectilinear planarity testing is NP-complete in the variable embedding setting • even for HV-graphs with vertex-degree at most three • There exists a polynomial-time algorithm to recognize whether a series-parallel HV-graph admits an HV-drawing • extended to partial 2-trees
Spirality • Spirality is a measure of how much a path is “rolled up” • you need spirality 4to close a cycleclockwise +1 +2 -2 -1 -3 -2 +1 +2 +1 +2 +2 +1 0 -1 +1 +2 0 +1 +4 +3 +4 +3 +4 +3
[0] E [0] [1] [1] F D [0] B [1] [1] [1] G [0..2] [1] A C [0] [1] Switch-flow networks • A switch-flow networkis a graph where each edge is labeled with a capacity range [c′...c′′] of nonnegative integers • For simplicity, the capacity range [c...c] is denoted with [c]
E F D B G A C Switch-flow networks and flows • A flow is an orientation of the edges and an assignment of integer values to them so that • Each value is within the capacity range of the edge • The incoming and outgoing flows are balanced at each vertex [0] [0] [1] [1] [0] [1] [1] [1] [0..2] [1] [0] [1]
Switch-flow network problem Instance • A switch-flow network N Question • Does N admit a flow? • NP-complete ([Garg, Tamassia, 01]) even in the special case when • the network is planar • the lower bounds of the capacity ranges are either • zero (as in [0...c]), or • equal to the upper bounds (as in [c])
[0] E [0] [1] [1] F D [0] B [1] [1] [1] G [0..2] [1] A C [0] [1] 1) Start from a switch-flow network
E F D B G A C 2) Make it maximal planar • Dummy edges have all capacity range [0] [0] [0] [0] [1] [1] [0] [0] [1] [1] [1] [0..2] [1] [0] [0] [1]
E F D B G A C 3) Compute the dual graph • The dual graph is 3 regular [0] [0] [0] [1] [1] [0] [0] [1] [1] [1] [0..2] [1] [0] [0] [1]
E F D B G A C 3) Compute the dual graph • The dual graph is 3 regular • Capacity ranges are transferred to the edges of the dual [0] [0] [0] [1] [1] [0] [0] [1] [1] [1] [0..2] [1] [0] [0] [1]
4) Draw the dual orthogonally • We use [Tamassia, Tollis, 89]
5) Transform it into a rigid frame • Observe that each vertex has maximum degree 3
Tendrils represents flows • Let one unit of flow correspond to 4 right angles [1] [1] [1] F G F G F G G F G F G G F F G F Tendril T1 Tendril T1
Tendrils • Tendril Th represents h units of flow between two faces [1] [2] [h] F G F G F G Tendril T1 Tendril T2 Tendril Th
Wiggles • A wiggle Wc represents the flow between two faces with capacity range [0…c] Wiggle W2 Wiggle Wh Wiggle W1
Equivalence theorem • A flow in the original network N corresponds to an HV-drawing of the constructed instance and vice-versa
Our results • HV-rectilinear planarity testing is NP-complete in the variable embedding setting • even for HV-graphs with vertex-degree at most three • There exists a polynomial-time algorithm to recognize whether a series-parallel HV-graph admits an HV-drawing • extended to partial 2-trees
s1 s2 s s1 s2 t1 t2 t1 t2 s t t What are series-parallel graphs • A series-parallel graph is either • A single edge • The series composition of two series-parallel graphs • The parallel composition of two series-parallel graphs • We consider biconnected series-parallel graphs • One edge, called reference edge, is in parallel with the rest of the graph s t
Series-parallel graphs and SPQ∗-trees • The decomposition tree describes the series and parallel composition needed to build the graph
Alias vertices and handles • Detach a component from the graph • Provide it with suitable handles
Replacement theorem • Given a component, two HV-drawings of it with the same spirality are equivalent • You can replace one with the other and obtain an HV-drawing of the graph
Tuples • Each component can be decorated with a set of O(n) tuples • each tuple has a value of spirality admitted by the component and one realization of such spirality
Algorithm for series-parallel graphs • Traverse bottom-up the SPQ*-tree with reference edge e • For each component compute its set of tuples starting from the tuples of its children • Observe that O(n2) time is sometimes needed • If one component has zero tuples the instance does not admit an HV-drawing with e as the reference edge • Repeat with all possible reference edges
Main theorem • There exists an O(n4)-time algorithm that tests whether a biconnected series-parallel HV-graph with n vertices admits an HV-drawing • if G has vertex-degree at most 3, the time-complexity can be reduced to O(n3 log n).
Extension to partial 2-trees • A partial 2-tree is a simply connected graph such that each biconnected component is either a series-parallel graph or a single edge
Observation • Consider two blocks B1 and B2 of the tree that have two cut vertices c1 and c2 that can be joined by a path not traversing B1 and B2 • In any HV-drawing either c1 is on the external face of B1 (B1 is HV-extrovert) or c2 is on the external face of B2 (B2 is HV-extrovert) B1 c1 B2 c2
Algorithm for partial 2-trees • Recursively remove HV-extrovert leaf blocks until one of the following occurs • T becomes empty: the test is positive • two blocks that are not HV-extrovert are found: in this case the test is negative • T consists of just one block-node B marked as not HV-extrovert • in this case we check whether B admits an HV-drawing trying all its edges as reference edges
Open problems • Can the O(n4) polynomial bound for series-parallel graphs be improved? • for comparison, (unrestricted) rectilinear planarity testing of series-parallel graphs with vertex-degree at most three is linear [Zhou, Nishizeki, 08] • Find a combinatorial characterization for the HV-graphs that admit an HV-drawing • e.g. in terms of forbidden substructures