We study the following problem: Given
a planar graph G and a
planar drawing (embedding) of a subgraph of G, can such a drawing be
extended to a planar drawing of the entire graph G? This problem fits
the paradigm of extending a partial solution to a complete one, which
has been studied before in many different settings. Unlike many cases,
in which the presence of a partial solution in the input makes hard an
otherwise easy problem, we show that the planarity question remains
polynomial-time solvable. Our algorithm is based on several
combinatorial lemmata which show that the planarity of partially
embedded graphs meets the ``oncas'' behaviour -- obvious
necessary
conditions for planarity are also sufficient. These conditions are
expressed in terms of the interplay between (a) rotation schemes and
containment relationships between cycles and (b) the decomposition of a
graph into its connected, biconnected, and triconnected components.
This
implies that no dynamic programming is needed for a decision algorithm
and that the elements of the decomposition can be processed
independently.
Further, by equipping the components of the decomposition with suitable
data structures and by carefully splitting the problem into
simpler
subproblems, we improve our algorithm to reach linear-time complexity.
Finally, we consider several generalizations of the problem, e.g.
minimizing the number of edges of the partial embedding that need to
be
rerouted to extend it, and argue that they are NP-hard. Also, we show
how our algorithm can be applied to solve related Graph Drawing
problems.
Joint work with Patrizio Angelini, Giuseppe Di Battista, Vìt
Jelìnek,
Jan Kratochvìl, Maurizio Patrignani, and Ignaz Rutter