Обсуждение:Факторизация графов — различия между версиями
Cczy (обсуждение | вклад) |
|||
Строка 6: | Строка 6: | ||
|definition = Пусть задана функция <tex>f : V(G) \rightarrow \mathbb{N}</tex>, такая что <tex>\forall~v \in V(G):f(v)\leq \text{deg}(v)</tex>. Тогда остовный подграф <tex>G_f</tex> в котором степень каждой вершины <tex>v</tex> равна <tex>f(v)</tex> называется '''<tex>f</tex>-фактором'''. | |definition = Пусть задана функция <tex>f : V(G) \rightarrow \mathbb{N}</tex>, такая что <tex>\forall~v \in V(G):f(v)\leq \text{deg}(v)</tex>. Тогда остовный подграф <tex>G_f</tex> в котором степень каждой вершины <tex>v</tex> равна <tex>f(v)</tex> называется '''<tex>f</tex>-фактором'''. | ||
}} | }} | ||
+ | |||
+ | |||
+ | [[Файл:1-A-general-graph-G-with-a-3-regular-factor-2-A-general-graph-G-with-an-f-factor (1).png|700px|thumb|centre| Примеры факторов в графе: (1) {{---}} <tex>3</tex>-фактор, (2) {{---}} <tex>f</tex>-фактор (значения <tex>f(v)</tex> указаны возле вершин)]] | ||
+ | |||
== Задача о поиске произвольного <tex>f</tex>-фактора == | == Задача о поиске произвольного <tex>f</tex>-фактора == | ||
Строка 23: | Строка 27: | ||
Пусть граф <tex>G</tex> имеет <tex>f</tex>-фактор <tex>G_f</tex>. Построим паросочетание <tex>M</tex> для графа <tex>G^*</tex> следующим образом: | Пусть граф <tex>G</tex> имеет <tex>f</tex>-фактор <tex>G_f</tex>. Построим паросочетание <tex>M</tex> для графа <tex>G^*</tex> следующим образом: | ||
# Для каждого ребра <tex>(u,w)\in G_f</tex> добавим в <tex>M</tex> соответствующее ему ребро из <tex>G^*</tex> . Теперь для каждой вершины <tex>v \in V(g)</tex> <tex>f(v)</tex> вершин из множества <tex>S(v)</tex> покрыты <tex>M</tex> . | # Для каждого ребра <tex>(u,w)\in G_f</tex> добавим в <tex>M</tex> соответствующее ему ребро из <tex>G^*</tex> . Теперь для каждой вершины <tex>v \in V(g)</tex> <tex>f(v)</tex> вершин из множества <tex>S(v)</tex> покрыты <tex>M</tex> . | ||
− | # Для каждой вершины <tex>v \in V(g)</tex> пусть <tex>R(v)\subset S(v)</tex> - множество вершин еще не покрытых <tex>M</tex>. <tex>R(v)\cup T(v)</tex> является полным двудольным графом, причем размер каждой из долей равен <tex>deg(v)-f(v)</tex>, следовательно этот граф имеет совершенное паросочетание <tex>M_v</tex>. Добавим каждое ребро из <tex>M_v</tex> в <tex>M</tex>. | + | # Для каждой вершины <tex>v \in V(g)</tex> пусть <tex>R(v)\subset S(v)</tex> {{---}} множество вершин еще не покрытых <tex>M</tex>. <tex>R(v)\cup T(v)</tex> является полным двудольным графом, причем размер каждой из долей равен <tex>deg(v)-f(v)</tex>, следовательно этот граф имеет совершенное паросочетание <tex>M_v</tex>. Добавим каждое ребро из <tex>M_v</tex> в <tex>M</tex>. |
В результате каждая вершина в <tex>G^*</tex> покрыта <tex>M</tex>, следовательно <tex>M</tex> является совершенным паросочетанием. | В результате каждая вершина в <tex>G^*</tex> покрыта <tex>M</tex>, следовательно <tex>M</tex> является совершенным паросочетанием. | ||
Строка 31: | Строка 35: | ||
}} | }} | ||
− | Из доказательства напрямую следует, что | + | Из доказательства напрямую следует, что для нахождения <tex>f</tex>-фактора графа <tex>G</tex> достаточно найти совершенное паросочетание в графе <tex>G^*</tex>. Т.к. <tex>G^*</tex> в общем случае не является двудольным, для решения этой задачи можно воспользваться [https://ru.wikipedia.org/wiki/%D0%90%D0%BB%D0%B3%D0%BE%D1%80%D0%B8%D1%82%D0%BC_%D1%81%D0%B6%D0%B0%D1%82%D0%B8%D1%8F_%D1%86%D0%B2%D0%B5%D1%82%D0%BA%D0%BE%D0%B2 Алгоритмом Эдмондса для поиска наибольшего паросочетания]. |
Версия 20:53, 29 декабря 2019
Определение: |
регулярный остовный подграф степени . Если граф представляет собой сумму -факторов, то их объединение называется -факторизацией, а сам граф назыается -факторизуемым. | -фактор —
Определение: |
Пусть задана функция | , такая что . Тогда остовный подграф в котором степень каждой вершины равна называется -фактором.
Задача о поиске произвольного -фактора
Пусть дан граф
и функция . Построим граф следующим образом.- Для каждого ребра добавим в граф две новых вершины и , соответствующие и , и соединим их ребром. В результате каждой вершине будет соответствовать множество такое что ; Каждому ребру соответствует ребро , причем ни для каких двух ребер из концы соответствующих им ребер в не пересекаются.
- Для каждой вершины добавим в новые вершин, образующие множество . Каждую вершину из свяжем ребром с каждой вершиной из . В результате для каждой вершины Множество образует полный двудольный граф.
Теорема: |
Граф имеет -фактор тогда и только тогда, когда соответствующий графу и функции граф имеет совершенное паросочетание. |
Доказательство: |
Пусть граф имеет -фактор . Построим паросочетание для графа следующим образом:
В результате каждая вершина в покрыта , следовательно является совершенным паросочетанием.Пусть имеет совершенное паросочетание . Для каждой вершины является независимым множеством и полностью покрыто , следовательно множество покрыто ребрами, концы которых лежат в , а значит каждая вершина из покрыта ребром, второй конец которого принадлежит , причем . Поэтому если мы добавим в все ребра соответствующие ребрам из покрывающим , то есть все ребра из концы которых лежат в множествах , то степень каждой вершины будет равна , а значит будет являться -фактором. |
Из доказательства напрямую следует, что для нахождения Алгоритмом Эдмондса для поиска наибольшего паросочетания.
-фактора графа достаточно найти совершенное паросочетание в графе . Т.к. в общем случае не является двудольным, для решения этой задачи можно воспользваться