Sunteți pe pagina 1din 23

Fast and Simple Algorithms

to Count The Number of


Vertex Covers in An
Interval Graph
Min-Sheng Lin
Information Processing Letters 102 (2007)
143–146

Advisor: Yue-Li Wang


Presented by Ying-Jhih Chen
Outline
Interval Graph
Number of Vertex Covers
Minimal Vertex Cover
Conclusion

Interval Graph
intersection graph
intervals on the real line
Example of
4
Interval Graph
4 9
5 3 8

1 1 3 6 5 1
1
2 2 7 10 6 12

2 5
1 6

4 3
Vertex Cover
G = (V ,E)
A vertex cover in G is a subset C of V
Every edge in E has at least one endpoint in C.
Number of Vertex Covers
Vk be the set {1, 2, . . . , k} of vertices.
The subgraph induced by Vk is denoted by Gk .
vc(k) denote the number of vertex covers in
Gk .
vc(k) = vc(k − 1) +
vc(x(k))
x(k) be the largest vertex on the left side of
vertex k and not adjacent to vertex k
vc(k-1):Vertex k ∈ C.
vc(x(k)):Vertex k C. Choice vertex
k’sneighborhood for instead.
Example
Define x(0)=0,vc(0)=0
vc(1)=vc(1-1)+vc(x(1))=vc(0)+vc(0)=1+1=2
vc(2)=vc(2-1)+vc(x(2))=vc(1)+vc(0)=2+1=3

Example of vc(3)
vc(3)=vc(2)+vc(x(3))=3+vc(1)=3+2=5
 2 2

1 3
1 3
3

2
2

1
Example of vc
vc(4)=5+2=7
vc(5)=7+2=9
vc(6)=9+7=16
Minimal Vertex Cover
A vertex cover C is called minimal if and only if
no proper subset of C is a vertex cover.
Define Mk
Mk denote the family of all minimal vertex
cover sets in Gk .
For vertices i, j , and k with i< j k, let
represent the set of all minimal vertex cover
sets in Gk including j but not including i.
MK

is a empty set.
Lemma
Example
k−1≧ i > h≧x(k)+1
Consider following graph when k=6, i=5, h=4,
x(k)=x(6)=2 4
5
1 3
2 6

2 4
6
1
3
5
Corollary
For Gk , if vertices i and h exist such that i is
not adjacent to h and k−1≧ i > h≧ x(k)+1,
then




y(k) denote the maximal value satisfying the
condition of h.
y(k)
For 1 ≦ k≦ n, y(k) = max(x(k), y(k − 1)).
|MK|
By Corollary




mvc(k)






Theorem
Example of mvc(1)

Define mvc(0)=1, y(0)=-1


mvc(1)=mvc(0)+mvc(0)=1+1=2
y(1)=max(x(1),y(0))=0
i=0 to 0
mvc(1)=mvc(1)-mvc(x(0))=mvc(1)-mvc(0)=2-1=1
mvc(2)~mvc(6)
mvc(2)=2
mvc(3)=2
mvc(4)=3
mvc(5)=4
mvc(6)=4
Conclusion
An O(|V |)-time algorithm to count the
number of vertex covers
An O(|V |)-time algorithm to count the
number of minimal vertex covers

S-ar putea să vă placă și