Title: Computational Geometry Seminar Lecture 1
1Computational Geometry Seminar Lecture 1
2Graph
- Definition A Simple Undirected Graph G consists
of - A finite set of vertices V(G).
- A set E(G) of sets of 2 vertices, called edges.
- Note From now on we will call this type of
graphs by the general name Graph.
3Degree
- Definition In a graph G, the vertices u, v are
adjacent iff the edge uv belongs to E(G). - The number of adjacent vertices to a vertex u is
called the degree of u, denoted d(u).
4Subgraph
- Definition A graph H is a subgraph G (written H
G) iff V(H) V(G) and E(H) E(G). - We say that a graph H is the subgraph of G
induced by a set of vertices U V(G) if
V(H) U and E(H) is the set of all the edges
of G connecting vertices of U.
5Paths and Cycles
- Definition A sequence of k distinct vertices, in
which every consecutive vertices are adjacent, is
called a path of length k-1. - Definition A path of length k-1 with the
addition of an edge from the last vertex to the
first vertex of the path is called a cycle of
length k.
6Connectivity
- Definition A maximal set of vertices, for which
there exists a path from every vertex in the set
to another, is called a connected component. - A graph composed of only one connected component
is called connected.
7Graphs in the plane
- Can represent graphs in the plane by assigning
distinct points to vertices and drawing
continuous non-self-intersecting curves (Jordan
arcs) between adjacent vertices.
8Graphs in the plane
- But sometimes we want the drawing to be simple or
satisfy other requirements, such as straight
line segments as arcs or avoiding crossing arcs.
- Can we always achieve that?
9Planar Graphs
- Definition A graph that can be represented in
the plane so that no two arcs meet at a point
other than their endpoints is called a Planar
graph. - Such representation of a planar graph is called a
Plane graph or Planar embedding of the graph.
10Nonplanar Graphs
K5 and K3,3 are not planar
K5
K3,3
11K3,3 is not planar
u1
v3
v2
u2
u3
v1
12Subdivision
- A subdivision of a graph is obtained by repeating
the operation of removing an edge and introducing
a new vertex connected to the endpoints of the
edge removed.
13Kuratowskis Theorem
- The theorem states that a graph is not planar iff
it has a subgraph which is a subdivision of K5 or
K3,3.
14Straight Line Embedding
- Deleting any edge from K5 will result in a planar
graph. Moreover this graph can be embedded in the
plane by using straight line segments.
- Does every planar graph have a straight line
embedding???
15Faces
- Definition A plane graph divides (with its arcs)
the plane into connected regions called faces. - Exactly one of these faces is unbounded and is
called the exterior face. - We denote the number of faces of a plane graph G
by f(G).
Exterior Face
16Dual Graph
- Definition For a plane graph G we construct G,
the dual of G as follows. A vertex is placed in
each face of G. These are the vertices of G. For
each edge e of G we draw an edge e, called the
dual edge of e, which crosses e (and no other
edge of G) and joins the vertices corresponding
to the faces, whose boundary consists of e.
17Eulers Formula
- For a connected plane graph G
v 5 e 7 f 4
18Eulers Formula (Proof)
- Proof By induction on f.
- If f(G) 1 then G has no cycles (a tree), thus
e(G) v(G) 1.
- Assume for f(G) 2 that the theorem is correct
for connected plane graphs with fewer than f(G)
faces.
19Eulers Formula (Proof)
- Delete an edge e that belongs to a cycle in G.
For the resulting connected plane graph G-e we
get f(G-e) f(G) 1. Therefore, using
the induction hypothesis on G-e we obtain - v(G) (e(G) 1) (f(G) 1) 2. ?
20Eulers Formula
- Note When dealing with disconnected graphs we
can add edges between connected components
without adding more faces, eventually creating a
connected graph. Thus, the formula becomes (C is
the number of connected components)
21Bridges
- Definition An edge which is a boundary to only
one face is called a bridge. - Same bridges as in graph theory (edges not
contained in cycles).
22Sides
- Definition For a face f of G, the number of
sides of f is the number of edges belonging to
the boundary of f, where bridges are counted
twice. Denoted s(f).
23Sides
- Every non-bridge is in a boundary of exactly two
faces. Therefore
24Eulers Formula
- Note According to Eulers formula the number of
faces is independent of the embedding we choose
for the graph. However, the number of sides of
the faces is not.
25Triangulation
- Definition A face f for which s(f) 3 is
called a triangle. If all faces of G are
triangles, G is called a Triangulation.
Triangle
Triangulation
26Triangulation
- Every graph can be extended to a triangulation by
the addition of new edges between existing
vertices.
- A triangulation is maximal in the sense that no
more edges can be added without violating its
planarity.
27Eulers Formula
- Corollary 1 For a plane graph G with at least 3
vertices - e(G) 3v(G) 6
- f(G) 2v(G) 4
- The equalities hold iff G is a triangulation.
28Corollary 1
- Proof Sufficient to prove for connected plane
graphs since otherwise number of edges and faces
only decreases. - For every face f of G, s(f) 3.
- Thus
- By Eulers formula we obtain
- v(G) e(G) e(G) 2
- v(G) f(G) f(G) 2 ?
29Chromatic Number
- Definition The chromatic number ?(G) of a graph
G is the minimum number of colors required to
color the vertices of G so that no adjacent
vertices are of the same color.
30The Four-Color Theorem
- According to the four-color-theorem of Appel and
Haken the chromatic number of a planar graph is
at most 4. - This bound cannot be
- improved.
- Proof is quite complicated. Well prove a weaker
statement deduced from Corollary 1.
31Corollary 2
- Corollary 2 If G is a planar graph, then ?(G)
5. - Proof By induction on v(G).
- If v(G) 5, we can assign every vertex a
different color. - Assume that for v(G) 6 we proved the statement
for graphs of size smaller than v(G).
32Corollary 2 (Proof)
- From Corollary 1 G must have a vertex u with
d(u) 5. -
- Otherwise for every vertex u, d(u) 6. Thus
In contradiction to corollary 1.
33Corollary 2 (Proof)
- If d(u) 4 then color the rest of the graph G-u
with 5 colors using the induction, and then color
u with a color different from its neighbors.
34Corollary 2 (Proof)
- If u has 5 neighbors wi (1 i 5)
- Since G is planar it does not contain K5 as a
subgraph. Thus, assume WLOG that w1 and w2 are
not adjacent.
Merge
Let G be the graph obtained from G-u by merging
w1 and w2 to w, which is adjacent to neighbors
of w1 or w2.
35Corollary 2 (Proof)
- G is a planar graph, hence we apply the
induction to obtain a 5-coloring of G. If we
use the same coloring on G-u, where w1 and w2 are
assigned the color of w, the neighbors of u are
colored in at most 4 colors. Therefore, we can
assign a color for u different from its
neighbors. ?
36Straight Line Drawing
- We will now prove that every planar graph has and
embedding with straight line segments, called the
straight-line embedding.
37Straight Line Drawing
- Let us start off with the following lemma
- Lemma 1 Let G be a plane graph whose exterior
face is bounded by a cycle u1, , uk. Then
exists up (p ? 1, k) not adjacent to any uj other
than up-1 and up1.
u2
u3
u4
u5
38Lemma 1 (Proof)
- Proof If no two non-consecutive vertices in the
exterior boundary are adjacent, then the lemma is
trivial. Otherwise - Pick two non-consecutive adjacent vertices ui, uj
(j gt i1) for which j-i is minimal.
u2
i 1 j 3
u3
u4
u5
39Lemma 1 (Proof)
- ui1 cannot be adjacent to u1, , ui-1, , uj1 ,
, uk by planarity.
u2
i 1 j 3
u3
crossing
u4
u5
- ui1 cannot be adjacent to any ui, , uj other
than ui and ui2 because of minimality of j-i. ?
40Canonical Construction of Triangulations
- Let G be a triangulation with an exterior face
uvw and a labelling u1 u, u2 v, u3, , un w
of the vertices of G. Denote by Gk the subgraph
of G induced by u1, , uk and by Ck the exterior
boundary of Gk.
41Canonical Construction of Triangulations
- There exists a labelling such that for every 4
k n
- Gk-1 is internally triangulated.
- The edge uv is in Ck-1.
- uk is in the exterior face of Gk-1 the neighbors
of uk in V(Gk-1) are consecutive on
Ck-1.
- This kind of labelling is called a canonical
labelling.
42Canonical Construction of Triangulations (Proof)
- Proof We define un, un-1, , u3 by reverse
induction. - For un w
w
u
v
43Canonical Construction of Triangulations (Proof)
- For 4 k n Assume we defined un, , uk
correctly. Applying Lemma 1 to Gk-1, the subgraph
induced by the remaining vertices, we know that
there is a vertex on Ck-1, other than u and v,
that is only adjacent to its preceding and
subsequent vertices on Ck-1. Let uk-1 be that
vertex. Proof of I.-III. is the same as with
un. ?
44Canonical Labelling (Example)
w
u
v
45Canonical Labelling (Example)
w u7
u2v
u u1
46Canonical Labelling (Example)
u6
u2v
u u1
47Canonical Labelling (Example)
u5
u2v
u u1
48Canonical Labelling (Example)
u4
u2v
u u1
49Canonical Labelling (Example)
u3
u2v
u u1
50Straight Line Drawing
- Corollary 3 Every planar graph has a straight
line embedding in the plane. - Proof It is sufficient to show that the
statement is true for any maximal planar graph,
i.e. a graph that can be represented as a
triangulation.
51Corollary 3 (Proof)
- Let G be a triangulation with the canonical
labelling u1 u, u2 v, u3, , un w as
described earlier. We will determine the
positions p(uk) (x(uk), y(uk)) of the vertices
by induction on k.
52Corollary 3 (Proof)
- Set p(u1) (0,0) , p(u2) (2,0) , p(u3) (1,1).
- For k 4 assume that p(u1), , p(uk-1) have
already been defined s.t., by connecting the
images of adjacent vertices with segments, we
obtain a straight line embedding of Gk-1, whose
exterior face is bounded by the segments
corresponding to the edges of Ck-1.
53Corollary 3 (Proof)
- Let v1 u, v2, , vm v denote the vertices of
Ck-1 listed in the order they appear on the
cycle. - Suppose further that
- (1) x(v1) lt x(v2) lt lt x(vm)
- y(vi) gt 0 for 1 lt i lt m
54Corollary 3 (Proof)
- By condition III. of the canonical labelling, uk
is connected to a series of consecutive vertices
of Ck-1, vq, , vr (1 q lt r m). Choose x(uk)
s.t. x(vq) lt x(uk) lt x(vr). Now choose
y(uk) gt 0 large enough. The new position p(uk)
meets all the requirements (including the
assumption (1)). ?
55Straight Line Drawing (Example)
The starting graph
56Straight Line Drawing (Example)
Making the triangulation
57Straight Line Drawing (Example)
w u6
u3
u5
u4
v u2
u u1
Canonical labelling
58Straight Line Drawing (Example)
Left
u3
w u6
u4
u5
v u2
u u1
x
2
0
1
Setting p(u1) p(u2) p(u3)
59Straight Line Drawing (Example)
Left
u3
w u6
u4
u5
v2
v u2
v3
u u1
v1
x
2
0
1
60Straight Line Drawing (Example)
Left
u3
w u6
u4
u5
v2
v3
v u2
v4
u u1
v1
x
2
0
1
61Straight Line Drawing (Example)
Left
u3
w u6
u4
u5
v2
v3
v4
v u2
v5
u u1
v1
x
2
0
1
62Straight Line Drawing (Example)
Delete added edges
63Straight Line Drawing (Example)
64Straight Line Drawing
- Note By using this method we can also establish
the existence of straight line embedding of other
representations. For example, straight line
embeddings of the following representation, found
by Rosenstiehl and Tarjan.
65Straight Line Drawing
- Corollary 4 The vertices and edges of any planar
graph can be represented by horizontal and
vertical segments, respectively, s.t. - I. Segments dont have interior points in
common. - II. Horizontal segments connected by a vertical
segment represent adjacent vertices.
66Corollary 4 (Proof)
- Proof As earlier it is sufficient to establish
the statement for triangulations. - Let G be a triangulation with the canonical
labelling u1 u, u2 v, u3, , un w. To every
uk we will assign a segment s(uk) whose endpoints
are (xk, k) and (x'k, k).
67Corollary 4 (Proof)
- Set x10, x'12, x22, x'24, x31, x'33.
- For k 4 assume that s(u1), , s(uk-1) have
already been defined s.t., the subgraph Gk-1 has
a representation satisfying conditions I. and II.
68Corollary 4 (Proof)
- We define the upper envelope of s(u1), , s(uk-1)
as the set of points for which no other point is
directly above them. Denote this by UEk-1.
69Corollary 4 (Proof)
- Let v1 u, v2, , vm v denote the vertices of
Ck-1 listed in the order they appear on the
cycle. - Suppose further that UEk-1 consists of portions
of s(v1), , s(vm), in this order
(from left to right).
s(v2)
s(v3)
s(v4)
s(v1)
70Corollary 4 (Proof)
- By condition III. of the canonical labelling, uk
is connected to a series of consecutive vertices
of Ck-1, vq, , vr (1 q lt r m). Choose xk to
be some point of s(vq) which belongs to UEk-1 and
choose x'k to be some point which belongs to
UEk-1. The resulting representation of Gk meets
the requirements. ?
71Straight Line Drawing (Example)
w u6
u3
u5
u4
v u2
u u1
Canonical labelling
72Straight Line Drawing (Example)
Left
u3
w u6
u4
u5
v u2
u u1
x
4
0
2
Setting s(u1) s(u2) s(u3)
73Straight Line Drawing (Example)
Left
u3
w u6
u4
u5
s(v2)
s(v3)
v u2
u u1
s(v1)
x
4
0
2
74Straight Line Drawing (Example)
Left
u3
w u6
u4
u5
s(v2)
s(v3)
s(v4)
v u2
u u1
s(v1)
x
4
0
2
75Straight Line Drawing (Example)
Left
u3
w u6
u4
u5
s(v2)
s(v3)
s(v4)
s(v5)
v u2
u u1
s(v1)
x
4
0
2
76Straight Line Drawing (Example)
Delete added edges
77Straight Line Drawing (Example)
783D Implementations
- So far weve seen embeddings of graphs in 2D (on
the plane). - We will now see how to embed planar graphs in 3D.
- We will also get to know new shapes which allow
use to draw graphs which are not planar.
79The Sphere
- Every planar graph can be embedded on the sphere.
- Likewise, every embedding on the sphere can be
transformed to an embedding on the plane.
80The Sphere
- To transform an embedding on the sphere to an
embedding on the plane - We choose a face and puncture a hole in it. Then
stretch the face using the hole until we get a
flat surface. That face will be the exterior face.
- This procedure is reversible.
81Handle
- Definition A handle is a tube joining two holes
cut in a surface.
82Genus
- Definition The genus of a surface obtained by
adding handles to a sphere is the number of
spheres added.
83Genus
Genus 1 Torus
Genus 0 Sphere
Genus 2 Double-Torus
Genus 3 Pretzel
84Graphs
- The genus of a graph is the minimum ? such that
the graph can be embedded on a surface of genus
?. - As stated planar graphs can be embedded on the
sphere. Therefore, they are of genus 0.
85Graphs
- K5 and K3,3 are of genus 1.