Формула Зыкова — различия между версиями

Материал из Викиконспекты
Перейти к: навигация, поиск
м (rollbackEdits.php mass rollback)
 
(не показано 13 промежуточных версий 5 участников)
Строка 1: Строка 1:
 
{{Определение
 
{{Определение
 +
|id=def_1
 
|definition=
 
|definition=
Независимым множеством (кокликой, англ. coclique) в графе <tex>G</tex> называется непустое множество <tex>S \subset V: \forall v,u \in S\</tex> ребро <tex>(v,u) \notin E</tex>.
+
'''Независимым множеством''' (англ. ''Independent set'') в графе <tex>G = (V, E)</tex> называется непустое множество <tex>S \subset V: \forall v,u \in S</tex> ребро <tex>(v,u) \notin E</tex>.
 
}}
 
}}
 
{{Теорема
 
{{Теорема
Строка 7: Строка 8:
 
Зыкова
 
Зыкова
 
|statement=
 
|statement=
Для [[хроматического многочлена]] графа <tex>G</tex> верна формула:
+
Для [[Хроматический многочлен|хроматического многочлена]] графа <tex>G</tex> верна формула:
<tex>P(G,x)=\sum\limits_{i=1}^n pt(G,i)x^{\underline{i}}</tex>, где <tex>pt(G,i)</tex> — число способов разбить вершины <tex>G</tex> на <tex>i</tex> независимых множеств, <tex>n = |V|</tex>.
+
<tex>P(G,x)=\sum\limits_{i=1}^n pt(G,i)x^{\underline{i}}</tex>, где <tex>pt(G,i)</tex> — число способов разбить вершины <tex>G</tex> на <tex>i</tex> независимых множеств, <tex>n = |V|</tex>, а <tex> x^{\underline i} = x \cdot (x - 1) \cdot \ldots \cdot (x - i + 1)</tex> {{---}} нисходящая факториальная степень.
 
|proof=
 
|proof=
Пусть в <tex>x</tex>-раскраске графа <tex>G</tex>, используется точно <tex>i</tex> цветов.
+
В правильной раскраске вершины, имеющие одинаковый цвет, не смежны, поэтому все такие вершины могут быть объединены в одно независимое множество. Перебрав все возможные разбиения на независимые множества с последующей их всевозможной покраской <tex>x</tex> доступными цветами получим искомое число способов раскраски графа <tex>G</tex> в <tex>x</tex> цветов.
* <tex>1 \le i \le x</tex>
 
Для получения такой раскраски сначала выберем одним из <tex>pt(G,i)</tex> способов разбиение графа <tex>G</tex> на <tex>i</tex> независимых множеств, а затем одним из <tex>{x\choose i} i! = x^{\underline i}</tex> способов <tex>i</tex> упорядоченных цветов из <tex>x</tex>.
 
  
* <tex>i > x</tex>
+
Теперь проделаем это более формально. Подсчитаем число раскрасок графа <tex>G</tex>, в которых используется точно <tex>i</tex> цветов, для этого его нужно разбить на <tex>i</tex> независимых множеств и вершины в каждом таком классе покрасить в один из <tex>i</tex> цветов, отличный от всех других множеств, так как мы не делаем никаких предположений о связи между классами.  
Число <tex>x</tex>-раскрасок графа <tex>G</tex>, в которых используется точно <tex>i</tex> цветов равно <tex>0</tex>, так же как и <tex>x^{\underline i}</tex>.
 
  
Суммирование по <tex>i</tex> от <tex>1</tex> до <tex>n</tex> даёт полное число способов.
+
Рассмотрим случай, где <tex>1 \leqslant i \leqslant x</tex>. Чтобы получить такую раскраску зафиксируем какое-нибудь разбиение множества вершин графа <tex>G</tex> на <tex>i</tex> независимых множеств, затем берем один из классов в разбиении и
 +
раскрашиваем его в один из <tex>x</tex> цветов, потом берем следующий класс и окрашиваем его вершины в одинаковый цвет любой из <tex>x - 1</tex> оставшихся красок и т.д. Всего таких способов разбиения существует <tex>pt(G,i)</tex>.
 +
Следовательно, перебрав все возможные разбиения на <tex>i</tex> независимых множеств, получим, что число интересующих нас раскрасок графа <tex>G</tex> равно <tex>pt(G,i) \cdot x \cdot (x - 1) \cdot \ldots \cdot (x - i + 1) = pt(G,i) \cdot x^{\underline i}</tex>.
 +
 
 +
Заметим теперь, что при <tex>i > x</tex> число <tex>x</tex>-раскрасок, в которых используется точно <tex>i</tex> цветов, равно <tex>0</tex> и при этом <tex>x^{\underline i}</tex> тоже равно <tex>0</tex>.
 +
 
 +
Суммирование по <tex>i</tex> от <tex>1</tex> до <tex>n</tex> даст полное число способов.
 
}}
 
}}
== Литература ==
+
'''Примечание''': в такой формулировке задача о поиске хроматического многочлена сводится к отысканию количества способов разбить граф на независимые множества, что в свою очередь также [[Примеры_NP-полных_языков#NP-полнота поиска максимального независимого множества | не разрешимо за полиномиальное время]].
# ''Асанов М. О., Баранский В. А., Расин В. В.'' Дискретная математика: Графы, матроиды, алгоритмы. Ижевск: НИЦ «РХД», 2001. С. 140—141. '''ISBN 5-93972-076-5'''
+
 
 +
==См. также==
 +
*[[Формула Уитни]]
 +
 
 +
==Источники информации==
 +
* ''Асанов М. О., Баранский В. А., Расин В. В.'' Дискретная математика: Графы, матроиды, алгоритмы. {{---}} Ижевск: НИЦ «РХД», 2001. С. 140-141. {{---}} '''ISBN 5-93972-076-5'''
  
 
[[Категория: Алгоритмы и структуры данных]]
 
[[Категория: Алгоритмы и структуры данных]]
 
[[Категория: Раскраски графов]]
 
[[Категория: Раскраски графов]]

Текущая версия на 19:41, 4 сентября 2022

Определение:
Независимым множеством (англ. Independent set) в графе [math]G = (V, E)[/math] называется непустое множество [math]S \subset V: \forall v,u \in S[/math] ребро [math](v,u) \notin E[/math].
Теорема (Зыкова):
Для хроматического многочлена графа [math]G[/math] верна формула: [math]P(G,x)=\sum\limits_{i=1}^n pt(G,i)x^{\underline{i}}[/math], где [math]pt(G,i)[/math] — число способов разбить вершины [math]G[/math] на [math]i[/math] независимых множеств, [math]n = |V|[/math], а [math] x^{\underline i} = x \cdot (x - 1) \cdot \ldots \cdot (x - i + 1)[/math] — нисходящая факториальная степень.
Доказательство:
[math]\triangleright[/math]

В правильной раскраске вершины, имеющие одинаковый цвет, не смежны, поэтому все такие вершины могут быть объединены в одно независимое множество. Перебрав все возможные разбиения на независимые множества с последующей их всевозможной покраской [math]x[/math] доступными цветами получим искомое число способов раскраски графа [math]G[/math] в [math]x[/math] цветов.

Теперь проделаем это более формально. Подсчитаем число раскрасок графа [math]G[/math], в которых используется точно [math]i[/math] цветов, для этого его нужно разбить на [math]i[/math] независимых множеств и вершины в каждом таком классе покрасить в один из [math]i[/math] цветов, отличный от всех других множеств, так как мы не делаем никаких предположений о связи между классами.

Рассмотрим случай, где [math]1 \leqslant i \leqslant x[/math]. Чтобы получить такую раскраску зафиксируем какое-нибудь разбиение множества вершин графа [math]G[/math] на [math]i[/math] независимых множеств, затем берем один из классов в разбиении и раскрашиваем его в один из [math]x[/math] цветов, потом берем следующий класс и окрашиваем его вершины в одинаковый цвет любой из [math]x - 1[/math] оставшихся красок и т.д. Всего таких способов разбиения существует [math]pt(G,i)[/math]. Следовательно, перебрав все возможные разбиения на [math]i[/math] независимых множеств, получим, что число интересующих нас раскрасок графа [math]G[/math] равно [math]pt(G,i) \cdot x \cdot (x - 1) \cdot \ldots \cdot (x - i + 1) = pt(G,i) \cdot x^{\underline i}[/math].

Заметим теперь, что при [math]i \gt x[/math] число [math]x[/math]-раскрасок, в которых используется точно [math]i[/math] цветов, равно [math]0[/math] и при этом [math]x^{\underline i}[/math] тоже равно [math]0[/math].

Суммирование по [math]i[/math] от [math]1[/math] до [math]n[/math] даст полное число способов.
[math]\triangleleft[/math]

Примечание: в такой формулировке задача о поиске хроматического многочлена сводится к отысканию количества способов разбить граф на независимые множества, что в свою очередь также не разрешимо за полиномиальное время.

См. также

Источники информации

  • Асанов М. О., Баранский В. А., Расин В. В. Дискретная математика: Графы, матроиды, алгоритмы. — Ижевск: НИЦ «РХД», 2001. С. 140-141. — ISBN 5-93972-076-5