Факторизация графов — различия между версиями
Строка 20: | Строка 20: | ||
}} | }} | ||
== 2-факторизация == | == 2-факторизация == | ||
− | {{ | + | {{Утверждение |
|statement = | |statement = | ||
Если граф <tex>2</tex>-факторизуем, то каждый его фактор должен быть объединением непересекающихся (по вершинам) [[Основные определения теории графов|циклов]]. | Если граф <tex>2</tex>-факторизуем, то каждый его фактор должен быть объединением непересекающихся (по вершинам) [[Основные определения теории графов|циклов]]. | ||
Строка 33: | Строка 33: | ||
Граф <tex>K_{2n+1}</tex> можно представить в виде суммы <tex>n</tex> гамильтоновых циклов. | Граф <tex>K_{2n+1}</tex> можно представить в виде суммы <tex>n</tex> гамильтоновых циклов. | ||
|proof = | |proof = | ||
− | [[Файл: Факторизация K7.png|thumb|360px|right|<tex>2</tex>-факторизация графа <tex>K_7</tex>. Рёбра, отмеченные пунктиром, не пересекают другие рёбра при правильной [[Укладка графа на плоскости|укладке графа]].]]Для того чтобы в графе <tex>K_{2n+1}</tex> построить <tex>n</tex> гамильтоновых циклов, непересекающихся по рёбрам, перенумеруем сначала его вершины <tex>v_1, v_2, \dots, v_{2n+1}</tex>. На множестве вершин <tex>v_1, v_2, \dots, v_{2n}</tex> зададим <tex>n</tex> непересекающихся простых цепей <tex>P_i=v_i v_{i-1} v_{i+1} v_{i-2} \dots v_{i+n-1}v_{i-n}</tex> следующим образом: <tex>j</tex>-ой вершине цепи <tex>P_i</tex> является вершина <tex>v_k</tex>, где <tex>k=i+(-1)^{j+1} | + | [[Файл: Факторизация K7.png|thumb|360px|right|<tex>2</tex>-факторизация графа <tex>K_7</tex>. Рёбра, отмеченные пунктиром, не пересекают другие рёбра при правильной [[Укладка графа на плоскости|укладке графа]].]]Для того чтобы в графе <tex>K_{2n+1}</tex> построить <tex>n</tex> гамильтоновых циклов, непересекающихся по рёбрам, перенумеруем сначала его вершины <tex>v_1, v_2, \dots, v_{2n+1}</tex>. На множестве вершин <tex>v_1, v_2, \dots, v_{2n}</tex> зададим <tex>n</tex> непересекающихся простых цепей <tex>P_i=v_i v_{i-1} v_{i+1} v_{i-2} \dots v_{i+n-1}v_{i-n}</tex> следующим образом: <tex>j</tex>-ой вершине цепи <tex>P_i</tex> является вершина <tex>v_k</tex>, где <tex>k=i+(-1)^{j+1}\dfrac{j}{2}</tex>, все индексы приводятся к числам <tex>1, 2, \dots, 2n </tex> по модулю <tex>2n</tex>. Гамильтонов цикл <tex>Z_i</tex> можно получить, соединив вершину <tex>v_{2n+1}</tex> с концевыми вершинами цепи <tex>P_i</tex>. |
}} | }} | ||
− | == | + | == Замечания == |
− | *Факторизация графов используется как один из способов построения покрывающих наборов, используемых при создании тестов для программ с большим количеством параметров. | + | * Факторизация графов используется как один из способов построения покрывающих наборов, используемых при создании тестов для программ с большим количеством параметров. |
− | *<tex>1</tex>-факторизация <tex>k</tex>-регулярного графа является рёберной <tex>k</tex>-раскраской графа. | + | * <tex>1</tex>-факторизация <tex>k</tex>-регулярного графа является рёберной [[Раскраска графа|<tex>k</tex>-раскраской графа]]. |
== См. также == | == См. также == | ||
* [[Гамильтоновы графы]] | * [[Гамильтоновы графы]] | ||
Строка 45: | Строка 45: | ||
== Источники информации == | == Источники информации == | ||
* Харари Фрэнк '''Теория графов''' Пер. с англ. и предисл. В. П. Козырева. Под ред. Г.П.Гаврилова. Изд. 2-е. — М.: Едиториал УРСС, 2003. — 296 с. — ISBN 5-354-00301-6 | * Харари Фрэнк '''Теория графов''' Пер. с англ. и предисл. В. П. Козырева. Под ред. Г.П.Гаврилова. Изд. 2-е. — М.: Едиториал УРСС, 2003. — 296 с. — ISBN 5-354-00301-6 | ||
+ | * [http://en.wikipedia.org/wiki/Graph_factorization Wikipedia — Graph factorization] | ||
[[Категория: Алгоритмы и структуры данных]] | [[Категория: Алгоритмы и структуры данных]] | ||
[[Категория: Основные определения теории графов]] | [[Категория: Основные определения теории графов]] |
Версия 21:09, 12 декабря 2015
Определение: |
Фактором (англ. factor) графа называется остовный подграф графа , имеющий хотя бы одно ребро. |
Определение: |
Граф | — сумма факторов , если графы не имеют попарно общих рёбер, а является их объединением. Такое разложение называется факторизацией (англ. factorization) графа .
Определение: |
регулярный остовный подграф степени . Если граф представляет собой сумму -факторов, то их объединение называется -факторизацией, а сам граф назыается -факторизуемым. | -фактор —
1-факторизация
Теорема: |
Полный граф -факторизуем. |
Доказательство: |
Нам нужно только указать разбиение множества рёбер графа на -фактора. Для этого обозначим вершины графа через и определим множества рёбер , , где каждый из индексов и является одним из чисел ; здесь сумма и разность берутся по модулю . Легко видеть, что набор даёт необходимое разбиение множества , а сумма подграфов , порождённых множествами , является -факторизацией графа . |
2-факторизация
Утверждение: |
Если граф циклов. -факторизуем, то каждый его фактор должен быть объединением непересекающихся (по вершинам) |
Начнём обход | -фактора с какой-то вершины. Пойдём по одному из её рёбер и попадаем в смежную ей вершину. Далее идём по рёбрам, по которым мы ещё не ходили. Мы входим в вершину по одному ребру и выходим по другому, так как степень каждой вершины равна , пока не вернёмся в первую вершину. Это цикл, так как в каждой вершине мы были только один раз. Если есть вершины, которые мы не посетили, то снова начинаем обход с любой из таких вершин. В вершины прежних циклов попасть нельзя, так как мы уже проходили по рёбрам этих вершин. Значит, циклы не пересекаются по вершинам.
Заметим, что если гамильтоновым циклом.
-фактор связен, то он являетсяТеорема: |
Граф можно представить в виде суммы гамильтоновых циклов. |
Доказательство: |
Для того чтобы в графе построить гамильтоновых циклов, непересекающихся по рёбрам, перенумеруем сначала его вершины . На множестве вершин зададим непересекающихся простых цепей следующим образом: -ой вершине цепи является вершина , где , все индексы приводятся к числам по модулю . Гамильтонов цикл можно получить, соединив вершину с концевыми вершинами цепи . |
Замечания
- Факторизация графов используется как один из способов построения покрывающих наборов, используемых при создании тестов для программ с большим количеством параметров.
- . -раскраской графа -факторизация -регулярного графа является рёберной
См. также
Источники информации
- Харари Фрэнк Теория графов Пер. с англ. и предисл. В. П. Козырева. Под ред. Г.П.Гаврилова. Изд. 2-е. — М.: Едиториал УРСС, 2003. — 296 с. — ISBN 5-354-00301-6
- Wikipedia — Graph factorization