Рёберное ядро — различия между версиями
Vsklamm (обсуждение | вклад) м (→Реберное ядро в двудольном графе) |
м (rollbackEdits.php mass rollback) |
||
(не показана 21 промежуточная версия 3 участников) | |||
Строка 8: | Строка 8: | ||
Множество [[Основные определения теории графов#def_graph_edge_1|ребер]] (вершин) называется '''независимым''' (англ. ''independent''), если никакие его два элемента не смежны. | Множество [[Основные определения теории графов#def_graph_edge_1|ребер]] (вершин) называется '''независимым''' (англ. ''independent''), если никакие его два элемента не смежны. | ||
}} | }} | ||
− | {{Определение| | + | {{Определение |
− | definition= | + | |id=def_3 |
+ | |definition= | ||
'''Вершинным покрытием''' (англ. ''vertex cover'') графа <tex>G</tex> называется такое множество <tex>V</tex> его вершин, что у любого ребра в <tex>G</tex> хотя бы одна из вершин лежит в <tex>V</tex>. | '''Вершинным покрытием''' (англ. ''vertex cover'') графа <tex>G</tex> называется такое множество <tex>V</tex> его вершин, что у любого ребра в <tex>G</tex> хотя бы одна из вершин лежит в <tex>V</tex>. | ||
}} | }} | ||
Строка 19: | Строка 20: | ||
{{Определение| | {{Определение| | ||
definition= | definition= | ||
− | Наименьшее вершинное покрытие M графа G с множеством вершин V называется '''внешним''' (англ. ''external vertex cover''), если для любого подмножества <tex>M' \subseteq M</tex> выполняется неравенство <tex>|M'| \leqslant |U(M')|</tex>, где <tex>U(M') = \{v \mid \:v \in V(G) \setminus M, \: vu \in E(G), \: u \in M'\}</tex>. | + | Наименьшее вершинное покрытие <tex>M</tex> графа <tex>G</tex> с множеством вершин <tex>V</tex> называется '''внешним''' (англ. ''external vertex cover''), если для любого подмножества <tex>M' \subseteq M</tex> выполняется неравенство <tex>|M'| \leqslant |U(M')|</tex>, где <tex>U(M') = \{v \mid \:v \in V(G) \setminus M, \: vu \in E(G), \: u \in M'\}</tex>. |
}} | }} | ||
{{Теорема| | {{Теорема| | ||
statement= | statement= | ||
− | + | Для произвольного графа <tex>G</tex> следующие утверждения эквивалентны: | |
(1) <tex>G</tex> имеет не пустое рёберное ядро. <br> | (1) <tex>G</tex> имеет не пустое рёберное ядро. <br> | ||
(2) <tex>G</tex> имеет внешнее наименьшее вершинное покрытие. | (2) <tex>G</tex> имеет внешнее наименьшее вершинное покрытие. | ||
Строка 35: | Строка 36: | ||
Докажем <tex>(2) \Rightarrow (1)</tex>. | Докажем <tex>(2) \Rightarrow (1)</tex>. | ||
Пусть <tex>M = \{v_1, \dots, v_s\}</tex> {{---}} наименьшее внешнее вершинное покрытие. Пусть <tex>Y_i = \{u \mid u \in U, uv_i \in E(G) \}</tex>. Тогда для любого <tex>k: \:\: 1 \leqslant k \leqslant s</tex>, объединение любых <tex>k</tex> различных множеств <tex>Y_i</tex> содержит, по меньшей мере <tex>k</tex> вершин. | Пусть <tex>M = \{v_1, \dots, v_s\}</tex> {{---}} наименьшее внешнее вершинное покрытие. Пусть <tex>Y_i = \{u \mid u \in U, uv_i \in E(G) \}</tex>. Тогда для любого <tex>k: \:\: 1 \leqslant k \leqslant s</tex>, объединение любых <tex>k</tex> различных множеств <tex>Y_i</tex> содержит, по меньшей мере <tex>k</tex> вершин. | ||
− | Следовательно, по теореме Холла | + | Следовательно, по [[Теорема Холла|теореме о свадьбах (Холла)]], существует множество <tex>s</tex> различных вершин <tex>\{y_1, \dots, y_s\}, \: y_j \in Y_j</tex>. Следовательно существует набор независимых ребер <tex>y_1v_1, \dots, y_sv_s</tex>. А значит <tex>C_1(G)</tex> не может быть пустым. |
}} | }} | ||
[[Файл:EdgeCore.png|thumb|500px|рис. 1. a) граф <tex>H</tex>, б) реберное ядро графа <tex>H</tex> ]] | [[Файл:EdgeCore.png|thumb|500px|рис. 1. a) граф <tex>H</tex>, б) реберное ядро графа <tex>H</tex> ]] | ||
Строка 54: | Строка 55: | ||
{{Определение| | {{Определение| | ||
definition= | definition= | ||
− | <tex>G</tex> {{---}} '''сводимый граф''' (англ. ''reducible graph'') если он не является ни полунесводимым, ни | + | <tex>G</tex> {{---}} '''сводимый граф''' (англ. ''reducible graph'') если он не является ни полунесводимым, ни несводимым. |
}} | }} | ||
Строка 62: | Строка 63: | ||
Если оба конца ребра <tex>w \in E(G)</tex> покрыто некоторым минимальным вершинным покрытием, то <tex>w \notin C_1(G)</tex>. | Если оба конца ребра <tex>w \in E(G)</tex> покрыто некоторым минимальным вершинным покрытием, то <tex>w \notin C_1(G)</tex>. | ||
|proof= | |proof= | ||
− | Сошлемся на теорему | + | Сошлемся на теорему 3 (Theorem 3)<ref>A. L. Dulmage and N. S. Mendelsohn, 1958, pp. 519.</ref> аналогичного результата для двудольных графов. То же самое доказательство можно перенести на произвольный граф. |
}} | }} | ||
{{ Утверждение | {{ Утверждение | ||
Строка 79: | Строка 80: | ||
id=th3| | id=th3| | ||
statement= | statement= | ||
− | + | Если <tex>G</tex> имеет непустое реберное ядро, то <tex>C_1(G) \supset G</tex>, <tex>C_1(C_1(G)) = C_1(G)</tex>, а компоненты <tex>C_1(G)</tex> являются несводимыми или полунесводимыми двудольными подграфами <tex>G</tex> | |
}} | }} | ||
{{Теорема | {{Теорема | ||
− | |id=th4 | + | |id=th4 |
− | |||
|statement= | |statement= | ||
<tex>G</tex> и его реберное ядро <tex>C_1(G)</tex> совпадают тогда и только тогда, когда <tex>G</tex> является двудольным и не является сводимым. | <tex>G</tex> и его реберное ядро <tex>C_1(G)</tex> совпадают тогда и только тогда, когда <tex>G</tex> является двудольным и не является сводимым. | ||
− | | | + | }} |
− | <tex>\ | + | |
− | <tex>\ | + | === Примеры === |
+ | [[File:Bipartite_graph_1.png|thumb|130px|Двудольный граф <tex>G_1</tex>]] | ||
+ | [[File:Bipartite_graph_2.png|thumb|130px|Двудольный граф <tex>G_2</tex>]] | ||
+ | |||
+ | Рассмотрим двудольные графы <tex>G_1</tex> и <tex>G_2</tex>, изображенные на рисунках 1 и 2. В графе <tex>G_1</tex> пусть <tex>S_1 = \{v_3, v_6\}</tex> и <tex>T_1 = \{v_1, v_2, v_4, v_5, v_7 \}</tex>. Этот граф имеет единственное наименьшее вершинное покрытие <tex>M_1 = \{v_3, v_6\}</tex> и, поскольку <tex>M_1 \cap T_1 = \varnothing</tex>, он полунесводимый; следовательно, он совпадает со своим рёберным ядром. В графе <tex>G_2</tex> пусть <tex>S_2 = \{u_1, u_4, u_5\}</tex> и <tex>T_2 = \{u_2, u_3, u_6\}</tex>. В нём два наименьших вершинных покрытия, именно <tex>M_2 = \{u_1,u_4, u_5\}</tex> и <tex>N_2 = \{u_2, u_3, u_6\}</tex>. Так как <tex>M_2 \cap T_2 = \varnothing</tex> и <tex>N_2 \cap S_2 = \varnothing</tex>, то <tex>G_2</tex> {{---}} несводимый граф и, значит, совпадает со своим рёберным ядром. | ||
+ | <br> | ||
− | + | == См. также == | |
+ | * [[NP-полнота задачи о независимом множестве]] | ||
+ | * [[Теория Рамсея]] | ||
+ | * [[Связь максимального паросочетания и минимального вершинного покрытия в двудольных графах]] | ||
==Примечания== | ==Примечания== | ||
Строка 101: | Строка 109: | ||
* [https://cms.math.ca/openaccess/cjm/v10/cjm1958v10.0517-0534.pdf A. L. Dulmage and N. S. Mendelsohn: Coverings of bipartite graphs, Canad J. Math., (1958), 517-534.] | * [https://cms.math.ca/openaccess/cjm/v10/cjm1958v10.0517-0534.pdf A. L. Dulmage and N. S. Mendelsohn: Coverings of bipartite graphs, Canad J. Math., (1958), 517-534.] | ||
+ | |||
+ | [[Категория: Алгоритмы и структуры данных]] | ||
+ | [[Категория: Основные определения теории графов]] |
Текущая версия на 19:07, 4 сентября 2022
Определение: |
Рёберное ядро (англ. core) графа , порожденный объединением таких независимых множеств , что , где — число вершинного покрытия. | графа — это подграф
Определение: |
Множество ребер (вершин) называется независимым (англ. independent), если никакие его два элемента не смежны. |
Определение: |
Вершинным покрытием (англ. vertex cover) графа | называется такое множество его вершин, что у любого ребра в хотя бы одна из вершин лежит в .
Определение: |
Числом вершинного покрытия (англ. point-covering number) называется число вершин в наименьшем вершинном покрытии графа | .
Содержание
Критерий существования реберного ядра
Определение: |
Наименьшее вершинное покрытие | графа с множеством вершин называется внешним (англ. external vertex cover), если для любого подмножества выполняется неравенство , где .
Теорема: |
Для произвольного графа следующие утверждения эквивалентны:
(1) |
Доказательство: |
Обозначим минимальное вершинное покрытие |
В качестве примера рассмотрим граф
Реберное ядро в двудольном графе
Здесь и далее будем рассматривать двудольный граф , в котором обозначим — множество вершин левой доли, — множество вершин правой доли.
Определение: |
— полунесводимый граф (англ. semi-irreducible graph), если имеет ровно одно вершинное покрытие , такое что или или — пусто |
Определение: |
— несводимый граф (англ. irreducible graph), если он имеет ровно два наименьших вершинных покрытия и , таких что либо , либо |
Определение: |
— сводимый граф (англ. reducible graph) если он не является ни полунесводимым, ни несводимым. |
Теорема: |
Если оба конца ребра покрыто некоторым минимальным вершинным покрытием, то . |
Доказательство: |
Сошлемся на теорему 3 (Theorem 3)[1] аналогичного результата для двудольных графов. То же самое доказательство можно перенести на произвольный граф. |
Утверждение (Следствие 1): |
Eсли имеет минимальное вершинное покрытие, которое не является независимым, то . |
Утверждение (Следствие 2): |
Если — сводимый связный двудольный граф, то . |
Теорема: |
Если имеет непустое реберное ядро, то , , а компоненты являются несводимыми или полунесводимыми двудольными подграфами |
Теорема: |
и его реберное ядро совпадают тогда и только тогда, когда является двудольным и не является сводимым. |
Примеры
Рассмотрим двудольные графы
См. также
- NP-полнота задачи о независимом множестве
- Теория Рамсея
- Связь максимального паросочетания и минимального вершинного покрытия в двудольных графах
Примечания
- ↑ A. L. Dulmage and N. S. Mendelsohn, 1958, pp. 519.