• 検索結果がありません。

Ryuhei Uehara

N/A
N/A
Protected

Academic year: 2021

シェア "Ryuhei Uehara"

Copied!
19
0
0

読み込み中.... (全文を見る)

全文

(1)

1/19

I618 Advanced Computer Science II (Part II)

Ryuhei Uehara

[email protected]

http://www.jaist.ac.jp/~uehara

12/21 11:00-12:30 1/ 7 15:10-16:40 1/ 9 9:20-10:50 1/11 11:00-12:30 1/16 9:20-10:50

I will give you some report problems on January.

(2)

Algorithms on Interval/Chordal Graphs

„

Basic problems

‰

graph isomorphism;

„

graph isomorphism is GI-complete for chordal graphs [Done!]

„

graph isomorphism is linear time solvable for interval graphs [Postponed after recognition]

‰

graph recognition;

„

chordal graphs can be recognized in linear time

‰

LexBFS & MCS

„

interval graphs can be recognized in linear time

‰

canonical tree representation

‰

multi-sweep LexBFSs

‰

modular decomposition

(3)

3/19

Recognition of a Chordal Graph

„

LexBFS and MCS are a kind of “search” algorithms.

‰

Both algorithms find reverse of a PEO as follows;

1.

put any vertex as v

n

;

2.

for each i=n-1, n-2, …, 1

1.

find the next vertex and put it as v

i

2 3

6 7

4 5

[Point] How can we find the next vertex?

1

[MCS] the next vertex v

i

has the most numbered neighbors, which is determined by

v

i

:= max |N(v

i

) ∩ {v

i+1

,v

i+2

,…,v

n

}|, which is the reason why we call it

“maximum cardinality” search.

(Ties are broken in any way.)

(4)

Recognition of a Chordal Graph

„

Lexicographically Breadth First Search;

X<Y if and only if

1.

i x

i

<y

i

, and x

j

=y

j

for all j<i, or

2.

if x

i

=y

i

for all i in [1..min{n,m}], X<Y if n<m or Y<X if n>m (Otherwise, we have X=Y.)

E.g., ε < 0101 < 01010 < 01011 < 01100 < 1

‰

We can apply the lex. ordering over ordered sets;

„

(1,2,3)<(1,2,3,4)<(1,2,5)<(1,3,4)

„

(3,2,1)<(4,3,1)<(4,3,2,1)<(5,2,1)

[Definition 8] Lexicographical ordering of two strings

X=x

1

x

2

…x

n

and Y=y

1

y

2

…y

m

are defined as follows

(usual ordering in dictionary):

(5)

5/19

Recognition of a Chordal Graph

„

LexBFS and MCS are a kind of “search” algorithms.

‰

Both algorithms find reverse of a PEO as follows;

1.

put any vertex as v

n

;

2.

for each i=n-1, n-2, …, 1

1.

find the next vertex and put it as v

i

[Point] How can we find the next vertex?

[LexBFS] the next vertex v

i

is determined by the reverse of the lexicographically ordering of the neighbor sets

N(v) ∩ {v

n

,v

n-1

,…,v

i+1

},

where neighbor sets are ordered in reverse of PEO.

(Ties are broken in any way.)

2 3

6 7

4 5 1

2

3 6

7 4

5 1

This is a natural ordering if we compute the reverse

of a PEO, which appears some papers…

(6)

Recognition of a Chordal Graph

[LexBFS] the next vertex v

i

is determined by the reverse of the lexicographically ordering of the neighbor sets

N(v) ∩ {v

n

,v

n-1

,…,v

i+1

},

where neighbor sets are ordered in reverse of PEO.

(Ties are broken in any way.)

7

5

10 9

8

6

(10) (10)

(10) (10,9)

(9) (9,8)

(8)

4

3 2

1 (6)

(4) (7)

(5)

(7)

7/19

Recognition of a Chordal Graph

„

LexBFS and MCS are a kind of “search” algorithms.

[Natural explanation]

[LexBFS] the next vertex v

i

is determined by the reverse of the lexicographically ordering of the neighbor sets

N(v) ∩ {v

n

,v

n-1

,…,v

i+1

},

where neighbor sets are ordered in reverse of PEO.

vn

vn-1

vn-2

vn

vn-1 vn

<

< < <

Once we divide a set into two subsets by neighborhood, the relationship

never be broken.

Implementation is easy by a priority queue.

(8)

Recognition of a Chordal Graph

„

LexBFS and MCS are a kind of “search” algorithms.

[Theorem 12] Let G=(V,E) be any graph. Then we can

determine if G is chordal or not in O(|V|+|E|) time and space.

To prove Theorem 12, we need two lemmas;

[Lemma 2] Let G be any chordal graph. Then

1.

output of LexBFS is a PEO of G, and

2.

output of MCS is a PEO of G.

[Lemma 3] Let v

1

, v

2

, …, v

n

be any ordering over V.

Then we can determine if it is a PEO or not in linear time.

(Proof of Lemma 3) Omitted; check the papers!

(9)

9/19

For a chordal graph

Recognition of a Chordal Graph

„

LexBFS and MCS are a kind of “search” algorithms.

We only show a part of proofs briefly…

[Lemma 2] Let G be any chordal graph. Then

1.

output of LexBFS is a PEO of G.

[Note before proof] Not necessarily all vertex orderings of a chordal graph are PEO.

[Example 2]

3

1 2

,

is a PEO, but 1 2 3 is not a PEO.

(10)

Recognition of a Chordal Graph

„

LexBFS and MCS are a kind of “search” algorithms.

We only show a part of proofs briefly…

[Lemma 2] Let G be any chordal graph. Then

1.

output of LexBFS is a PEO of G.

[Proof (Sketch)] To derive contradictions, assume that LexBFS outputs a vertex ordering v

1

, v

2

, …, v

n

which is not a PEO for a chordal graph G.

Then there is a non-simplicial vertex v

i

in G[{v

i

,v

i+1

,…,v

n

}].

Thus N(v

i

) ∩ {v

i+1

,…,v

n

} contains two non-adjacent vertices v

j

and v

k

. We take the maximum v

i

and maximum pair in N(v

i

).

vi vi+1

vj

vk

vn

(11)

11/19

Recognition of a Chordal Graph

„

LexBFS and MCS are a kind of “search” algorithms.

[Lemma 2] For any chordal graph G, an output of LexBFS is a PEO of G.

[Proof (Sketch)]

Thus, from v

j

and v

k

, we repeat to find precedessors until we meet the (first) common vertex v

l

.

vi vi+1

vj

vk

vn

In LexBFS, except v

n

, each v is added into the ordering by a “precedessor” u; v is added because v is in N(u).

… …

vl

Then, we have a cycle (v

i

,v

j

,…,v

l

,…,v

k

,v

i

) of length at least 4

with {v

j

,v

k

} E. ∉

(12)

Recognition of a Chordal Graph

„

LexBFS and MCS are a kind of “search” algorithms.

[Lemma 2] For any chordal graph G, an output of LexBFS is a PEO of G.

[Proof (Sketch)]

vi vi+1

vj

vk

… … …

vl

vn

We have a cycle (v

i

,v

j

,…,v

l

,…,v

k

,v

i

) with {v

j

,v

k

} E. ∉

Since G is chordal, v

i

has to have a neighbor v

l’

between v

j

and v

k

. Then, with careful analysis of LexBFS and

maximality of taking the vertices, we have to have {v

i

,v

l

} ∊ E,

and we conclude v

j

<v

i

or v

k

<v

i

, which is a contradiction.

(13)

13/19

Algorithms on Interval Graphs

‰

Graph recognitions of interval graphs

„

based on canonical tree representation

‰

which construct the tree representation

‰

using the tree, we can solve graph isomorphism in linear time.

„

based on multi-sweep LexBFSs

‰

which try to embed given graph into a specific interval representation

‰

tie breaking rule of LexBFS is very important

„

based on modular decomposition

‰

which decompose given graph into disjoint components

which are called modular

(14)

Algorithms on Interval Graphs

‰

Canonical Tree representation of an interval graph

‰

Basic idea comes from simple observation…

[Observation 2] For an interval graph G, there are several distinct compact interval representations.

intervals can be ordered in arbitrary ordering

intervals can be ordered in “forward” or “backward.”

(15)

15/19

Algorithms on Interval Graphs

‰

Canonical Tree representation of an interval graph [Definition 9] A PQ-tree consists of two kinds of nodes,

called P-nodes and Q-nodes.

‰

The children of a P-node are ordered in arbitrary way.

‰

The children of a Q-node are ordered in forward or backward.

[Theorem 13] For any interval graph G, its all affirmative compact interval representations can be represented by one PQ-tree, where each leaf corresponds to a maximal cliques in the interval graph.

([Theorem 3] Each integer point corresponds to a maximal clique on a compact interval representation…)

Q-node

P-node

(16)

Algorithms on Interval Graphs

‰

Canonical Tree representation of an interval graph [Theorem 13] For any interval graph G, its all affirmative

compact interval representations can be represented by one PQ-tree, where each leaf corresponds to a maximal cliques in the interval graph.

C1 C2 C3 C4 C5 C6

C1 C2 C3 C4 C5 C6 Q-node

P-node

Each vertex has to appear in

consecutive cliques.

(17)

17/19

Algorithms on Interval Graphs

‰

Canonical Tree representation of an interval graph

[Theorem 14] A graph G is an interval graph if and only if it has a unique PQ-tree for its maximal cliques.

C1 C2 C3 C4 C5 C6

[Theorem 15] [Booth, Lueker 1976] For an interval graph G, its PQ-tree can be constructed in linear time.

[Proof (Sketch)] They give incremental algorithm, which has many case analysis with around 20 templates.

Each vertex has to appear in consecutive

cliques.

C1 C2 C3 C4 C5 C6

(18)

Algorithms on Interval Graphs

‰

Canonical Tree representation of an interval graph [Note] Any interval graph G has a unique PQ-tree, but a

PQ-tree can represent non-isomorphic interval graphs.

C1 C2 C3 C4 C5 C6 C1 C2 C3 C4 C5 C6

C1 C2 C3 C4 C5 C6

(19)

19/19

Algorithms on Interval Graphs

‰

Canonical Tree representation of an interval graph

[Theorem 16] [Lueker, Booth 1979] (1) Any interval graph G has a unique labeled PQ-tree, and vice versa.

C1 C2 C3 C4 C5 C6

[Theorem 16] [Lueker, Booth 1979] (2) For any interval graph, its labeled PQ-tree can be constructed in linear time.

[Corollary 3] The GI problem for interval graphs can be

solved in linear time.

参照

関連したドキュメント

Considering n ≥ 3, let us assign to the squares of the chessboard T n , corre- sponding to the vertices of Q(n), the numbers of the cells they belong.. Therefore, the squares

In [RS1] the authors study crossed product C ∗ –algebras arising from certain group actions on ˜ A 2 -buildings and show that they are generated by two families of partial

The layout produced by the VDCB algorithm is more evenly distributed according to the CP model, and is more similar to the original layout according to the similarity measures

We can formulate this as an extremal result in two ways: First, for every graph G, among all bipartite graphs with a given number of edges, it is the graph consisting of disjoint

It is thus often the case that the splitting surface of a strongly irreducible Heegaard splitting of a graph manifold can’t be isotoped to be horizontal or pseudohorizontal in

Additionally, the set of limiting densities of minor-closed graph families is the closure of the set of densities of a certain family of finite graphs, the density- minimal graphs

This allows us obtain several linear time multi-sweep MNS algorithms for recognizing rigid interval graphs and unit interval graphs, generalizing a corresponding 3-sweep LBFS

Each graph in subset Small-graphs was generated by the following procedure: (i) Generate, with a uniform probability distribution, a connected (possibly non-planar) graph hav- ing