Crossing Lemma

Computational Geometry
Seminar
Lecture 7
The “Crossing Lemma” and
applications
Ori Orenbach
1
Crossing Lemma - Part I
What did we see till now ?
Every planar graph with |V|=n vertices has at
most 3n-6 edges (Euler’s formula)
So, a graph with more than 3n-6 edges must
have at least one crossing
For Example K5:
Ok, but how many crossings are there ? Can we
minimize the crossings efficiently ?
2
Crossing Lemma - Part I
Why is that important ?
In real life crossings are very common.
“The brick factory problem” (Turan)
Minimizing crossings is important
in many fields, for example VLSI
chip area:
3
Crossing Lemma - Part I
What will we see today?
Crossing number definitions
First lower bound on the crossing number
Improved constant on the lower bound using the
probability method (The crossing lemma)
Tightness of the lower bound
Improving the lower bound using pre-assumptions
on the graph (bisection width)
4
Crossing Lemma - Part I
Definitions
Consider a simple graph G=(V,E) with n vertices
and m edges (m>3n-6)
We want to embed G into the plane (just as we did for
planar graphs)
Only now we know that we would have at least one
crossing.
The crossing number of G: cr(G) is the smallest
number of crossings among all drawings of G.
Crossing of more than two edges in one point is
not allowed
5
Crossing Lemma - Part I
Definitions
In such a minimal drawing the following three
situations are ruled out:
No edge can cross itself
Edges with a common end vertex cannot cross
No two edges cross twice
6
Crossing Lemma - Part I
Immediate lower bound
Suppose that G is drawn in the plane with cr(G)
crossings.
Consider the following graph H:
The vertices of H are those of G together with all
crossing points
The edges are all pieces of the original edges as
we go along from crossing point to crossing
point
G
7
Crossing Lemma - Part I
H
Immediate lower bound
Obviously H is a planar graph (and simple)
|EH|= m+2cr(G) because every new vertex has a
degree of 4.
|VH|= n+ cr(G)
And from Euler we get: m+2cr(G) ≤ 3(n+cr(G))-6
Cr(G) ≥ m-3n+6
8
Crossing Lemma - Part I
(*)
Example
Consider K6. we have that:
Cr(K6)≥15-18+6=3
Indeed, we have a drawing with just 3 crossings:
9
Crossing Lemma - Part I
Can we know cr(G) for every
graph?
The problem is believed to be NP complete
So, we cannot calculate the crossing number of
a graph G efficiently, but can we bound it
efficiently?
The bound proven before is good enough when
m is linear in n, but not when m is larger
compared to n
For example if m≥4n then m-3n+6≥n+6
How can we improve the bound?
10
Crossing Lemma - Part I
Theorem (Ajtai et al, Leighton,
Chavatal, Newborn and others)
Let K(n,m) denote the minimum number of crossing
pairs of edges in a graph with n vertices and m
edges,
If m≥4n then
3
1
m
K(n,m) 
 2
100 n
Known as the “Crossing lemma”
K(n,m) is the same as cr(G)
11
Crossing Lemma - Part I
(1)
The Crossing Lemma Proof
We will prove by induction on n that:
cr (G ) 
3 n
 ( 4 )  (m /( n2 ))3
64
m  4n
(2)
If n≤8 then G cannot have 4n edges, so it must be
the case that n≥9 (notice that if n=9 then G=K9)
Then, if (2) is proven, then (1) will follow immediately
12
Crossing Lemma - Part I
The Crossing Lemma Proof
The induction base case:
For n=9 we get
and (2) follows from (1)
3 9
*( 4 ) *(36 /( 92 ))3  6
64
We can see that (2) follows from (*) for every n≥10
and 4n≤m≤5n
(Notice that the right side of (2) cannot exceed m-3n)
Hence, We can assume that G is a graph with n≥10
vertices and m>5n edges and that (2) is valid for all
graphs with fewer than n vertices.
13
Crossing Lemma - Part I
The Crossing Lemma Proof
Denote by (G-x) the graph obtained from G by removing a
vertex x and all connected edges)
We notice that

cr (G  x)  (n  4)cr (G )
(*(
xV ( G )
Since G-x has at least m-(n-1) ≥5n-(n-1)>4(n-1) edges,
we can use the induction on G-x, so we get:
3 n 1
cr (G  x)  ( 4 ) (mx /( n 21 ))3
64
(mx is the number of edges in G-x)
We can show that
14

mx  m(n  2)
xV ( G )
Crossing Lemma - Part I
(**) (Why?)
The Crossing Lemma Proof
And now:
By (*(
cr (G ) 
1
cr (G  x) 

n  4 xV (G )
1
3 (n4 1 )

  n 1 3
n  4 64 (2 )
By (**(
(And Jensen
inequality(
15

xV ( G )
mx 3 
1
3 (n4 1 )
m(n  2) 3

  n 1 3  n(
) 
n  4 64 (2 )
n
3 n
1
n 3
 ( 4 )(m /( 2 )) 
( m3 / n 2 )
64
100
Crossing Lemma - Part I
n  9
How can we improve the
bound ?
Improve the constant
Improve the order of magnitude
Can be done only by using some assumptions on the
graph (will be shown later)
16
Crossing Lemma - Part I
Improving the constant on
the lower bound
Many proofs given
We will see a general proof using the “Probabilistic method *”,
and an example in case that m≥4n
(The probability method used to prove an existence of an
object in a collection by showing that the probability it
exists is positive)
17
Crossing Lemma - Part I
The “Crossing Lemma” –
An improved constant
G=(V,E), |V|=n, |E|=m≥cn (for any c>3)
Then we can show a lower bound on the number of
crossings in G, such that:
c  3 m3
cr (G)  3  2
c
n
18
Crossing Lemma - Part I
Crossing Lemma (using
probabilistic method)
Consider a minimal drawing of G (containing minimal
number of crossings)
Let ‘p’ be a number between 0 and 1 (p will be chosen later)
Generate a subgraph of G: H
VH = Vertices of G chosen with probability p each
EH = All the edges uv in G, that both u and v were
chosen in VH (we get that any edge remains with
probability p2)
crH = Crossings in G that all four (distinct) vertices
involved were chosen in VH (probability p4)
19
Crossing Lemma - Part I
Crossing Lemma (using
probability)
Let np, mp crp be the random variables counting the
number of vertices, edges and crossings in H
Since cr(G) ≥m-3n+6>m-3n for any graph we have that:
E(crp-mp+3np)≥0  E(crp)-E(mp)+E(3np)≥0 
p4cr(G) –p2m +3pn≥0
And we get that:
*
p 2 m  3 pn m 3n
cr (G) 
 2 3
4
p
p
p
*Note that p4cr(G) is the expected number of crossings inherited from
G, but the expected number of crossings in H is even smaller
20
Crossing Lemma - Part I
Crossing Lemma (using
probability)
m 3n
cr (G )  2  3
p
p
Now, set p= cn/m (which is at most 1 by our assumption)
And we get:
m 3n
m
3n
cr (G )  2  3  2 2 2  3 3 3 
p
p
c n /m c n /m
m3 3m3 m3 c  3
 3 2  2 3
2 2
cn cn
n
c
21
Crossing Lemma - Part I
Crossing Lemma (using
probability)
For example if m≥4n then p=m/4n≤1
1 m3
cr (G )   2
64 n
We can improve the constant by using different
assumptions on the edges.
22
Crossing Lemma - Part I
Improving the constant
Theorem (Pach and Toth): let G be a simple graph
drawn in the plane with cr(G) crossings, then
1 m3
cr (G ) 
 2
33.75 n
First we will mention the following corollary:
Corollary: The crossing number of any simple graph
with at least 3 vertices satisfies:
cr(G)≥5e(G)-25V(G)+50
23
Crossing Lemma - Part I
Improving the constant
Corollary: The crossing number of any simple graph G
with at least 3 vertices satisfies:
cr(G)≥5e(G)-25V(G)+50
Proof Idea:
A graph with e(G)≥ (k+3)(v(G)-2) must have one edge
crossing at least (k+1) other edges, for 0≤ k≤4.
By induction on e, we delete such an edge and the minimum
number of crossings is:
4
cr (G )   [e(G )  ( k  3)(v(G )  2)] 
k 0
 5e(G )  25v(G )  50
24
Crossing Lemma - Part I
Improving the constant
Proof (Theorem) : Again, we will use the probabilistic
method. We have that e≥7.5n>(4+3)(n-2)
Using the corollary:
cr(G)≥5e(G)-25V(G)+50
And we have that:
3
1
m
 2
p4cr(G)≥5p2m-25pn  cr (G ) 
33.75 n
*p=7.5n/m<=1
25
Crossing Lemma - Part I
Tightness
We want To show that the lower bound is tight (we cant
do better than m3/n2)
Consider n/t copies of Kt drawn on the plane:
…
Kt
Kt
Kt
n/t
26
Crossing Lemma - Part I
Tightness
…
Kt
27
Kt
Kt
Cr(Kt) = O(n4)
m = t2*n/t=nt
e(Kt) = O(n2)
cr = t4*n/t = t3n = m3/n2
Crossing Lemma - Part I
Improving the order of
magnitude
The key is to have some pre assumptions on the graph,
and use them to find a better bound
Bisection width and crossing number
Crossing number in graphs with monotone property
28
Crossing Lemma - Part I
Definitions
A graph property P is said to be monotone if:
1) Every subgraph of a graph G with the property also
satisfies P
2) Whenever G1 and G2 satisfies P, their disjoint union
also satisfies P.
29
Crossing Lemma - Part I
Definitions
The bisection width of a graph b(G) is defined to be:
b(G )  min |v1|,|v2 | n / 3 | E (V1 , V2 ) |
The minimum is taken over all partitions of V(G) to 2
disjoint groups each  n/3
30
Crossing Lemma - Part I
Crossing number and
bisection width
Theorem: let G be a graph with bounded degree, then:
cr (G)  n  (b(G)2 )
Proof:
Consider a drawing of G with cr(G) crossings. Like
before, we introduce a new vertex at each crossing,
so we obtain a graph with n+cr(G) crossings
31
Crossing Lemma - Part I
Crossing number and
bisection width
Proof continued:
We obtain a graph H with n+cr(G) vertices
We weight each new vertex with 0 weight and assign a
weight of 1/n for old vertices, and we get by the planar
separation theorem, that by deletion of at most:
O((n+cr(G))1/2)
vertices, H can be separated into H1 and H2 such that
each one has at least n/3 elements and we get:
b(G) ≤ O((n+cr(G))1/2)
•Note that this is a revised version on the planar separation theorem using
weights
32
Crossing Lemma - Part I
Crossing number and
monotone property
For any monotone property P, let ex(n, P) denote the
max number of edges that a graph on n vertices can
have if it satisfies P
If the property P is “G does not contain a subgraph
isomorphic to a fixed forbidden subgraph H”, we write:
ex(n, H) for ex(n, P)
33
Crossing Lemma - Part I
Crossing number and
monotone property
Theorem:
Let P be a monotone property with ex(n, P)=O(n1+a) for
some a>0 then there exists two constants c, c’>0 such
that the crossing number of any graph G with property
P, which has n vertices and e≥cnlog2n edges satisfies:
e21/ a
cr (G )  c ' 11/ a
n
34
Crossing Lemma - Part I
Crossing number and
monotone property
proof:
We will use a slightly different version of the bisection width
lower bound:
Let G be a graph of n vertices, whose degrees are d1,…,dn
Then:
b(G)  10 cr (G)  2
n
2
d
 i
i 1
Will be used without a proof
35
Crossing Lemma - Part I
Crossing number and
monotone property
Proof continued:
1 a
Let P be a monotone graph property with ex(n, P)  An
For some A,a>0
Let G be a graph with |V(G)|=n, |E(G)|=e
Suppose G satisfies P, and e≥cnlog2n
We assume by contradiction that:
e21/ a
cr (G )  c ' 11/ a
n
36
Crossing Lemma - Part I
Crossing number and
monotone property
Proof idea:
We will use a decomposition algorithm:
On every step i of the algorithm we will look at the Mi
components of the graph: Gi1, …, GiMi
On every step of the algorithm every Gij falls into 2
components, each at most (2/3)n(Gij) vertices
We will stop when the number of vertices in each component
is small enough
37
Crossing Lemma - Part I
The “Decomposition
algorithm”
k steps
38
Crossing Lemma - Part I
Crossing number and
monotone property
The algorithm:
Step 0: let G0=G, G10=G, M0=1, m0=1
On every step of the algorithm we will look at the Mi
components of the graph: Gi1, …, GiMi
Each component has at most (2/3)in vertices
We can assume (without loss of generality) that:
The first mi components of Gi have at least (2/3)i+1n vertices
and the remaining Mi-mi has fewer
39
Crossing Lemma - Part I
Crossing number and
monotone property
Proof continued:
We have that
(2 / 3)i 1 n(G )  n(G ij )  (2 / 3)i n(G )
(j=1,2,...,m i )
and we have that: mi  (3 / 2)i 1
The stopping rule:
1
e1/ a
(2 / 3)  1/ a  11/ a
2A
n
i
Else: delete for j=1,…,mi b(Gji) edges from Gij such that Gij
falls into 2 components, each at most (2/3)n(Gij) vertices
40
Crossing Lemma - Part I
Crossing number and
monotone property
Let Gi+1 denote the resulting graph on the original set.
Each component of Gi+1 has at most (2/3)i+1n vertices
Suppose the decomposition algorithm terminates in step k+1,
then if k>0:
1/ a
1
e
k 1
(2 / 3)k 


(2
/
3)
(2 A)1/ a n11/ a
41
Crossing Lemma - Part I
Crossing number and
monotone property
Proof continued:
Using that for any non-negative real number:
m

j 1
m
a j  m a j
j 1
We get:
mi

j 1
cr (G ji )  mi  cr (G ji )  (3 / 2)i 1 cr (G ) 
(3 / 2)i 1
42
mi
j 1
c ' e 21/ a
n11/ a
Crossing Lemma - Part I
Crossing number and
monotone property
Proof continued:
Denoting the degree of a vertex v in Gij by d(v, Gij)
We get:
mi
 
j 1

d 2 (v, G ji )  (3/ 2)i 1
vC ( Gi )
 (3 / 2)
vV ( G i )
i 1
i
max d (v, G )

d (v, G ) 
i
i
vV ( G )
 (3 / 2)i 1 (2 / 3)i n(2e)  3en
43
d 2 (v, G i ) 
Crossing Lemma - Part I
Crossing number and
monotone property
Proof continued:
Now we use previous theorem about b(G), and we get that the
total number of edges deleted during the procedure is:
k 1 m
k 1 mi
k 1 mi
i  0 j 1
i  0 j 1
i  0 j 1
i
i
b
(
G
)

10
cr
(
G
 j

j )  2

d 2 (v, G ij ) 
vV ( G ij )
e 21/ a k 1
 10 c ' 11/ a  (3 / 2)i  2k 3en 
n
i 0
11/ a
e 21/ a
n
e
1/ a
 250 c ' 11/ a (2 A)
 2k 3en 
1/ a
n
e
2
44
Crossing Lemma - Part I
(m=cnlog2n)
Crossing number and
monotone property
Proof continued:
And finally we get that e(Gk)≥e/2
Next we will find an upper bound on e(Gk):
The number of vertices of each connected component is:
1/ a
1
e
e 1/ a
n(G kj )  (2 / 3) k n 

n

(
)
1/ a
11/ a
(2 A)
n
2 An
j  1, 2,..., M k
45
Crossing Lemma - Part I
Crossing number and
monotone property
Proof continued:
But each Gkj has the property P, since it is monotone, so it
follows that:
1 a
e(G )  An
k
j
e
(G )  An(G ) 
2 An
k
j
k
j
And from this, the total number of edges in Gk is:
Mk
Mk
e
e
k
k
k
e(G )   e(G j )  A
n(G j ) 

2 An j 1
2
j 1
A contradiction !
And the theorem is proved
46
Crossing Lemma - Part I