Рёберное ядро

Материал из Викиконспекты
Версия от 01:56, 12 января 2016; 188.162.65.19 (обсуждение) (Реберное ядро в двудольном графе)
Перейти к: навигация, поиск
Определение:
Рёберное ядро (англ. core) [math]C_1(G)[/math] графа [math]G[/math] — это подграф графа [math]G[/math], порожденный объединением таких независимых множеств [math]Y \subset E(G)[/math], что [math]|Y| = \alpha_{0}(G)[/math], где [math]\alpha_{0}(G)[/math] — число вершинного покрытия.


Определение:
Множество ребер (вершин) называется независимым (англ. independent), если никакие его два элемента не смежны.


Определение:
Вершинным покрытием (англ. vertex cover) графа [math]G[/math] называется такое множество [math]V[/math] его вершин, что у любого ребра в [math]G[/math] хотя бы одна из вершин лежит в [math]V[/math].


Определение:
числом вершинного покрытия (англ. point-covering number) называется число вершин в наименьшем вершинном покрытии графа [math]G[/math].

Критерий существования реберного ядра

Определение:
Наименьшее вершинное покрытие M графа G с множеством вершим V называется внешним (англ. external vertex cover), если для любого подмножества [math]M' \subseteq M[/math] выполняется неравнство [math]|M'| \leqslant |U(M')|[/math], где [math]U(M') = \{v \mid \:v \in V(G) \setminus M, \: vu \in E(G), \: u \in M'\}[/math].
Теорема:
для произвольного графа [math]G[/math] следующие утверждения эквивалентны:

(1) [math]G[/math] имеет не пустое рёберное ядро.
(2) [math]G[/math] имеет внешнее наименьшее вершинное покрытие.

(3) каждое наименьшее вершинное покрытие для [math]G[/math] является внешним.
Доказательство:
[math]\triangleright[/math]

Обозначим минимальное вершинное покрытие [math]G[/math] как [math]M[/math]. Пусть [math]U = V(G) \setminus M[/math].
Докажем [math](1) \Rightarrow (3)[/math]. Предположим, что в [math]G[/math] существует наименьшее вершинное покрытие [math]M[/math], которое не является внешним. Это значит что [math]\exists M' : \: M' = \{u_1, \dots, u_r \}, [/math] где [math]r \leqslant \alpha_0(G)[/math], такое что [math]|M'| \gt |U(M')|.[/math] Пусть [math]U(M') = \{u_1, \dots, u_t\}, \: t \lt r[/math]. Так же, пусть [math]X[/math] — максимальное независимое множество ребер в [math]G[/math]. Поскольку никакие две вершины [math]U[/math] не смежны, каждое ребро из [math]X[/math] соединено, по крайней мере, с одной вершиной из [math]M[/math]. Если какое-нибудь ребро из [math]X[/math] соединено более чем с одной ввершиной из [math]M[/math], то [math]|X| \lt \alpha_0(G)[/math] и [math]C_1(G) = \varnothing [/math]. Так что будем считать, что каждое ребро из [math]X[/math] смежно ровно с одной вершиной из [math]M[/math]. Из этого сдедует, что [math]|X| \leqslant t - r + \alpha_0(g) \lt \alpha_0(G)[/math]. И снова [math]C_1(G) = \varnothing[/math].
Следствие [math](3) \Rightarrow (2)[/math] — очевидно.
Докажем [math](2) \Rightarrow (1)[/math]. Пусть [math]M = \{v_1, \dots, v_s\}[/math] — наименьшее внешнее вершинное покрытие. Пусть [math]Y_i = \{u \mid u \in U, uv_i \in E(G) \}[/math]. Тогда для любого [math]k: \:\: 1 \leqslant k \leqslant s[/math], объединение любых [math]k[/math] различных множеств [math]Y_i[/math] содержит, по меньшей мере [math]k[/math] вершин.

Следовательно, по теореме Холла (о системах различных представителей), существует множество [math]s[/math] различных вершин [math]\{y_1, \dots, y_s\}, \: y_j \in Y_j[/math]. Следовательно существует набор независимых ребер [math]y_1v_1, \dots, y_sv_s[/math]. А значит [math]C_1(G)[/math] не может быть пустым.
[math]\triangleleft[/math]
рис. 1. a) граф [math]H[/math], б) реберное ядро графа [math]H[/math]

В качестве примера рассмотрим граф [math]H[/math] изображенный на рис. 1 а). Этот граф имеет два наименьших вершинных покрытия: [math]M_1 = \{B, E, F\}[/math] и [math]M_2 = \{B, E, G\}[/math]. Пусть [math]M_1' = M_1[/math] то [math]U(M_1') = \{A, C, D, G\}[/math]. Пусть [math]M_1'' = \{E, F\}[/math]. Тогда [math]U(M_1'') =\{C, D, G\}[/math]. Отсюда [math]|M_1'| \leqslant |U(M_1')|[/math] и [math]|M_1''| \leqslant |U(M_1'')|[/math]. И это верно для любого подмножества [math]M_1[/math]. Значит, [math]M_1[/math] — внешнее покрытие. Значит и [math]M_2[/math] — внешнее покрытие.

Реберное ядро в двудольном графе

Здесь и далее будем рассматривать двудольный граф [math]G[/math], в котором обозначим [math]S[/math] — множество вершин левой доли, [math]T[/math] — множество вершин правой доли.

Определение:
[math]G[/math]полунесводимый граф, если [math]G[/math] имеет ровно одно вершинное покрытие [math]M[/math], такое что или [math]M \cap S[/math] или [math]M \cap T[/math] — пусто


Определение:
[math]G[/math]несводимый граф, если он имеет ровно два наименьших вершинных покрытия [math]M_1[/math] и [math]M_2[/math], таких что либо [math]M_1 \cap S \cup M_2 \cap T = \varnothing [/math], либо [math]M_2 \cap S \cup M_1 \cap T = \varnothing[/math]


Определение:
[math]G[/math]сводимый граф если он не является ни полунесводимым, ни сводимым.
Теорема:
Если оба конца ребра [math]w \in E(G)[/math] покрыто некоторым минимальным вершинным покрытием, то [math]w \notin C_1(G)[/math].

Следствие 1 если [math]G[/math] имеет минимальное вершинное покрытие, которое не является независимым, то [math]G \neq C_1(G)[/math].
Следствие 2 если [math]G[/math] — сводимый связный двудольный граф, то [math]G \neq C_1(G)[/math].

Теорема:
если [math]G[/math] имеет непустое реберное ядро, то [math]C_1(G) \supset G[/math], [math]C_1(C_1(G)) = C_1(G)[/math], а компоненты [math]C_1(G)[/math] являются несводимыми или полунесводимыми двудольными подграфами [math]G[/math]
Теорема:
[math]G[/math] и его реберное ядро [math]C_1(G)[/math] совпадают тогда и только тогда, когда [math]G[/math] является двудольным и не является сводимым.