Теория Рамсея — различия между версиями

Материал из Викиконспекты
Перейти к: навигация, поиск
(Значения чисел Рамсея)
м (rollbackEdits.php mass rollback)
 
(не показано 218 промежуточных версий 11 участников)
Строка 3: Строка 3:
 
{{Определение
 
{{Определение
 
|id=def1
 
|id=def1
|definition='''Кликой''' в неориентированном графе <tex>G = (V, E)</tex> называется подмножество вершин <tex>C \subseteq V</tex>, такое что для любых двух вершин в <tex>C</tex> существует ребро, их соединяющее.}}
+
|definition='''Клика''' (англ. ''clique'') в [[Основные определения теории графов#Неориентированные графы|неориентированном графе]] <tex>G(V, E)</tex> {{---}} подмножество [[Основные определения теории графов#Неориентированные графы|вершин]] <tex>C \subseteq V</tex>, такое что для любых двух различных вершин в <tex>C</tex> существует [[Основные определения теории графов#def_edge_und|ребро]], их соединяющее. Другими словами, клика графа <tex>G(V, E)</tex> {{---}} [[Основные определения теории графов#defFullGraph|полный]] подграф графа <tex>G(V, E)</tex>. }}
 
 
 
{{Определение
 
{{Определение
 
|id=def2
 
|id=def2
|definition='''Числом Рамсея''' <tex>r(m, n)</tex>, где <tex>m, n \in \mathbb N </tex> называют наименьшее из таких чисел <tex>x \in \mathbb N</tex>, что при любой раскраске ребер полного графа на <tex>x</tex> вершинах в два цвета найдется клика на <tex>n</tex> вершинах с ребром цвета <tex>1</tex> или клика на <tex>m</tex> вершинах с ребром цвета <tex>2</tex>. }}
+
|definition='''Число Рамсея''' <tex>r(n, m)</tex> (англ. ''Ramsey's number'') {{---}} наименьшее из таких чисел <tex>x \in \mathbb N</tex>, что при любой раскраске ребер полного графа на <tex>x</tex> вершинах в два цвета найдется клика на <tex>n</tex> вершинах с ребрами цвета <tex>1</tex> или клика на <tex>m</tex> вершинах с ребрами цвета <tex>2</tex>. }}
 +
Существует и другое определение для чисел Рамсея.
 +
{{Определение
 +
|id=def15
 +
|definition='''Число Рамсея''' <tex>r(n, m)</tex> — это наименьшее из всех таких чисел <tex>x \in \mathbb N</tex>, что для любого графа <tex>G</tex> на <tex>x</tex> вершинах либо в <tex>G</tex> найдется <tex>K_n</tex>,  либо в <tex>\overline G</tex> найдется граф <tex>K_m</tex>.
 +
}}
 +
[[Файл:RamseyTheoryK5.png|200px|thumb|upright|Раскраска <tex>K_5</tex> без одноцветных треугольников]]
 +
Несложно доказать, что данные определения эквивалентны. Достаточно показать, что раскрашенному  в два цвета графу <tex>K_n</tex>, можно однозначно поставить в соответствие граф <tex>G</tex> на <tex>n</tex> вершинах. Довольно часто определение для чисел Рамсея дается через задачу "о друзьях и незнакомцах"<ref>[https://en.wikipedia.org/wiki/Theorem_on_friends_and_strangers| Theorem on friends and strangers]</ref>. Пусть на вечеринке каждые два человека могут быть либо друзьями, либо незнакомцами, в общем виде задачи требуется найти, какое минимальное количество людей нужно взять, чтобы хотя бы <tex>n</tex> человек были попарно знакомы,  или хотя бы <tex>m</tex> человек были попарно незнакомы. Если мы переформулируем данную задачу в терминах графов, то как раз получим определение числа Рамсея <tex>r(n, m)</tex>, представленное ранее.
  
===Существование. Оценки сверху===
+
===Пример===
{{Теорема|id=ter1|about=1
+
Чтобы получить лучшее представление природы чисел Рамсея, приведем пример. Докажем, что <tex>r(3,3) = 6</tex>. Представим, что ребра <tex>K_6</tex> раскрашены в два цвета: красный и синий. Возьмем вершину <tex>v</tex>. Данной вершине, как и всем другим, инцидентны <tex>5</tex> рёбер, тогда, согласно принципу Дирихле, хотя бы три из них одного цвета. Для определенности положим, что хотя бы <tex>3</tex> ребра, соединяющие вершину <tex>v</tex> с вершинами <tex>r</tex>, <tex>s</tex>, <tex>t</tex>, синие. Если хотя бы одно из ребер <tex>rs</tex>, <tex>rt</tex>, <tex>st</tex> синее, то в графе есть синий треугольник (полный граф на трёх вершинах), иначе, если они все красные, есть красный треугольник. Таким образом, <tex>r(3,3) \leqslant 6 </tex>.
|statement=<tex>r(n,m) \le r(n,m-1)+r(n-1,m)</tex>. При этом если числа <tex>r(n,m-1)</tex> и <tex>r(n-1,m)</tex> четные, то неравенство принимает вид <tex>r(n,m) \le r(n,m-1)+r(n-1,m) - 1</tex> .
+
Чтобы доказать, что <tex>r(3,3) = 6 </tex>, предъявим такую раскраску графа  <tex>K_5</tex>, где нет клики на трех вершинах ни синего, ни красного цвета. Такая раскраска представлена на рисунке справа. Понятно, что предъявлять отдельные раскраски для <tex> K_4</tex>, <tex>K_3</tex> не нужно,  так как достаточно взять  соответствующие подграфы раскрашенного <tex>K_5</tex>.
 +
 
 +
===Теорема Рамсея. Оценки сверху===
 +
{{Теорема|id=ter1|about=1, Теорема Рамсея
 +
|statement= Для любых <tex>n,m \in \mathbb N</tex> существует число <tex>r(n,m)</tex>, при этом <tex>r(n,m) \leqslant r(n,m-1)+r(n-1,m)</tex>, а также если числа <tex>r(n,m-1)</tex> и <tex>r(n-1,m)</tex> четные, то неравенство принимает вид <tex>r(n,m) \leqslant r(n,m-1)+r(n-1,m) - 1</tex> .
 
|proof=
 
|proof=
  
<tex>1)</tex> Докажем с помощью метода математической индукции по <tex>n+m</tex>.
+
# Докажем с помощью метода математической индукции по <tex>n+m</tex>. <br>'''База:''' <tex>r(n,\;1) = r(1,\;n) = 1</tex>, так как граф, состоящий из одной вершины, можно считать полным графом любого цвета. <br>'''Индукционный переход:''' Пусть <tex>n>1</tex> и <tex>m>1</tex>. Рассмотрим полный чёрно-белый граф из <tex>r(n-1,\;m)+r(n,\;m-1)</tex> вершин. Возьмём произвольную вершину <tex>v</tex> и обозначим через <tex>M</tex> и <tex>N</tex> множества вершин, инцидентных <tex>v</tex> в чёрном и белом подграфе соответственно. Так как в графе <tex>r(n-1,\;m)+r(n,\;m-1)=|M|+|N|+1 </tex>  вершин, согласно принципу Дирихле, либо <tex>|M|\geqslant r(n-1,\;m)</tex>, либо <tex>|N|\geqslant r(n,\;m-1)</tex>. Пусть <tex>|M|\geqslant r(n-1,\;m)</tex>. Тогда либо в <tex>M</tex> существует белый <tex>K_m</tex>, что доказывает теорему, либо в <tex>M</tex> есть чёрный <tex>K_{n-1}</tex>, который вместе с <tex>v</tex> образует чёрный <tex>K_n</tex>, в этом случае теорема также доказана. Случай <tex>|N|\geqslant r(n,\;m-1)</tex> рассматривается аналогично.
 
+
# Предположим, <tex>p=r(n-1,\;m)</tex> и <tex>q=r(n,\;m-1)</tex> оба чётны. Положим <tex>s=p+q-1</tex> и рассмотрим чёрно-белый граф из <tex>s</tex> вершин. Если <tex>d_i</tex> степень <tex>i</tex>-й вершины в чёрном подграфе, то, согласно [[Лемма о рукопожатиях|лемме о рукопожатиях]], <tex> \sum\limits_{i=1}^s d_i</tex> — чётно. Поскольку <tex>s</tex> нечётно, должно существовать чётное <tex>d_i</tex>. Не умаляя общности, положим, что <tex>d_1</tex> чётно. Обозначим через <tex>M</tex> и <tex>N</tex> вершины, инцидентные вершине <tex>1</tex> в чёрном и белом подграфах соответственно. Тогда <tex>|M|=d_1</tex> и <tex>|N|=s-1-d_1</tex> оба чётны. Согласно принципу Дирихле, либо <tex>|M|\geqslant p-1</tex>, либо <tex>|N|\geqslant q</tex>. Так как <tex>|M|</tex> чётно, а <tex>p-1</tex> нечётно, первое неравенство можно усилить, так что либо <tex>|M|\geqslant p</tex>, либо <tex>|N|\geqslant q</tex>. <br> Далее проводим рассуждения, аналогичные тем, что присутствуют в первом пункте теоремы. Таким образом,  <tex>r(n,m) \leqslant r(n,m-1)+r(n-1,m) - 1</tex>.
'''База:''' <tex>r(n,\;1) = r(1,\;n) = 1</tex>, так как 1-вершинный граф можно считать полным графом любого цвета.
 
 
 
'''Индукционный переход:''' Пусть <tex>n>1</tex> и <tex>m>1</tex>. Рассмотрим полный чёрно-белый граф из <tex>r(n-1,\;m)+r(n,\;m-1)</tex> вершин. Возьмём произвольную вершину <tex>v</tex> и обозначим через <tex>M</tex> и <tex>N</tex> множества инцидентные <tex>v</tex> в чёрном и белом подграфе соответственно. Так как в графе <tex>r(n-1,\;m)+r(n,\;m-1)=|M|+|N|+1 </tex>  вершин, согласно принципу Дирихле, либо <tex>|M|\geqslant r(n-1,\;m)</tex>, либо <tex>|N|\geqslant r(n,\;m-1)</tex>.
 
 
 
Пусть <tex>|M|\geqslant r(n-1,\;m)</tex>. Тогда либо в <tex>M</tex> (и следовательно во всём графе) есть белый <tex>K_m</tex>, что завершает доказательство, либо в <tex>M</tex> есть чёрный <tex>K_{n-1}</tex>, который вместе с <tex>v</tex> образует чёрный <tex>K_n</tex>. Случай <tex>|N|\geqslant r(n,\;m-1)</tex> рассматривается аналогично.
 
 
 
<tex>2)</tex>  Предположим, <tex>p=r(n-1,\;m)</tex> и <tex>q=r(n,\;m-1)</tex> оба чётны. Положим <tex>t=p+q-1</tex> и рассмотрим чёрно-белый граф из <tex>t</tex> вершин. Если <tex>d_i</tex> степень <tex>i</tex>-й вершины в чёрном подграфе, то, согласно [[Лемма о рукопожатиях|лемме о рукопожатиях]], <tex>\sum_{i=1}^t d_i</tex> — чётно. Поскольку <tex>t</tex> нечётно, должно существовать чётное <tex>d_i</tex>. Для определённости положим, что <tex>d_1</tex> чётно. Обозначим через <tex>M</tex> и <tex>N</tex> вершины инцидентные вершине 1 в чёрном и белом подграфах соответственно. Тогда <tex>|M|=d_1</tex> и <tex>|N|=t-1-d_1</tex> оба чётны. Согласно принципу Дирихле, либо <tex>|M|\geqslant p-1</tex>, либо <tex>N\geqslant q</tex>. Так как <tex>|M|</tex> чётно, а <tex>p-1</tex> нечётно, первое неравенство можно усилить, так что либо <tex>|M|\geqslant p</tex>, либо <tex>|N|\geqslant q</tex>.
 
 
 
Предположим <tex>|M|\geqslant p=r(n-1,\;m)</tex>. Тогда либо подграф, порождённый множеством <tex>M</tex>, содержит белый <tex>K_m</tex> и доказательство завершено, либо он содержит чёрный <tex>K_{n-1}</tex>, который вместе с вершиной 1 образует чёрный <tex>K_n</tex>. Случай <tex>|N|\geqslant q=r(n,\;m-1)</tex> рассматривается аналогично.
 
 
}}
 
}}
{{Утверждение|id=u1|about=1|statement=Для натуральных чисел <tex>m,n</tex> выполняется равенство <tex>r(n,m) \le C_{n+m-2}^{n-1}</tex>
+
{{Утверждение|id=u1|about=1|statement=Для натуральных чисел <tex>m,n</tex> выполняется равенство <tex>r(n,m) \leqslant C_{n+m-2}^{n-1}</tex>
 
|proof=
 
|proof=
Очевидно, <tex>C^{n-1}_{n+m-2}=1</tex> при <tex>n=1</tex> или <tex>m=1</tex>, как и соответствующие числа Рамсея. Индукцией по <tex>n</tex> и <tex>m</tex> при <tex>n,m \ge 2</tex> получаем  
+
Очевидно, <tex>C^{n-1}_{n+m-2}=1</tex> при <tex>n=1</tex> или <tex>m=1</tex>, как и соответствующие числа Рамсея. Индукцией по <tex>n</tex> и <tex>m</tex> при <tex>n,m \geqslant 2</tex> получаем  
<tex>r(n,m) \le r(n,m-1)+r(n-1,m) \le C^{n-1}_{n+m-3}+C^{n-2}_{n+m-3}=C^{n-1}_{n+m-2}</tex>  
+
<tex>r(n,m) \leqslant r(n,m-1)+r(n-1,m) \leqslant C^{n-1}_{n+m-3}+C^{n-2}_{n+m-3}=C^{n-1}_{n+m-2}</tex>  
 
}}
 
}}
  
 
===Оценки снизу===
 
===Оценки снизу===
  
{{Теорема|id=ter2|about=2
+
{{Теорема|id=ter2|about=2, Теорема Эрдеша
|statement=Для любого натурального числа <tex>k \ge 2</tex> выполняется неравенство <tex>r(k,k) \ge k^{k/2}</tex>
+
|statement=Для любого натурального числа <tex>k \geqslant 2</tex> выполняется неравенство <tex>r(k,k) \geqslant 2^{k/2}</tex>
 
|proof=
 
|proof=
Так как <tex>r(2,2)=2</tex>, достаточно рассмотреть случай <tex>k \ge 3</tex>.
+
Так как <tex>r(2,2)=2</tex>, достаточно рассмотреть случай <tex>k \geqslant 3</tex>.
Зафиксируем множество различных помеченных вершин <tex>v_i,...,v_n</tex>. Пусть <tex>g(n,k)</tex> — деля среди всех графов на вершинах <tex>v_i,...,v_n</tex> тех графов, что содержат клику на <tex>k</tex> вершинах. Всего графов на наших вершинах, очевидно <tex>2^{C^2_n}</tex> (каждое из возможных <tex>C^2_n</tex> можно провести или не провести).
+
Пусть <tex>g(n, k)</tex> доля среди помеченных графов на <tex>n</tex> вершинах тех, что содержат клику на <tex>k</tex> вершинах. Всего графов на наших вершинах, очевидно <tex>2^{C^2_n}</tex> (каждое из возможных рёбер <tex>C^2_n</tex> можно провести или не провести).
  
Посчитаем графы с кликой на <tex>k</tex> вершинах так: существует <tex>C^k_n</tex> способов выбрать <tex>k</tex> вершин для клики в нашем множестве, после чего все рёбра между ними будем считать проведенными, а остальные ребра выбираются произвольным образом. Таким образом, каждый граф с кликой на <tex>k</tex> вершинах будет посчитан причём некоторые даже более одного раза. Количестве графов с кликой оказывается не более, чем <tex>C^k_n\cdot 2^{C^2_n-C^2_k}</tex>. Следовательно,
+
Посчитаем графы с кликой на <tex>k</tex> вершинах следующим образом: существует <tex>C^k_n</tex> способов выбрать <tex>k</tex> вершин для клики в нашем множестве, после чего все рёбра между ними будем считать проведенными, а остальные ребра выбираются произвольно. Таким образом, каждый граф с кликой на <tex>k</tex> вершинах будет посчитан, причём некоторые даже более одного раза. Количестве графов с кликой оказывается не более, чем <tex>C^k_n\cdot 2^{C^2_n-C^2_k}</tex>. Следовательно,
  
<tex>g(n,k) \le \frac{C^k_n}{2^{C^2_k}}<\frac{n^k}{k!\cdot 2^{C^2_k}}</tex> '''*'''
+
<tex>g(n,k) \leqslant \dfrac{C^k_n\cdot 2^{C^2_n-C^2_k}}{2^{C^2_n}}=\dfrac{n!}{(n-k)!\cdot k! \cdot 2^{C^2_k}}=\dfrac{(n-k+1)\cdot(n-k+2)\cdot\ldots \cdot(n-1)\cdot n}{ k! \cdot 2^{C^2_k}}<\dfrac{n^k}{k!\cdot 2^{C^2_k}}</tex> <tex>(*)</tex>
  
Подставив <tex>n<2^{k/2}</tex> в неравенство '''*''' мы получаем
+
Подставив <tex>n<2^{k/2}</tex> в неравенство <tex>(*)</tex> мы получаем
  
<tex>g(n,k)<\frac{2^{k^2/2}\cdot 2^{-C^2_k}}{k!}=\frac{2^{k/2}}{k!}<\frac12</tex> при <tex>k \ge 3</tex>
+
<tex>g(n,k)<\dfrac{2^{k^2/2}\cdot 2^{-C^2_k}}{k!}=\dfrac{2^{k/2}}{k!}<\dfrac12</tex> при <tex>k \geqslant 3</tex>
  
Предположим, что <tex>r(k,k)=n<2^{k/2}</tex> и разобьём все графы на n вершинах на пары <tex>G, \overline G</tex> (граф и его дополнение) Так как <tex>g(n,k)<\frac12</tex>, то существует пара, в которой ни <tex>G</tex>, ни <tex>\overline G</tex> не содержат клики на <tex>k</tex> вершинах. Рассмотрим раскраску рёбер <tex>K_n</tex> в два цвета, в которой ребра цвета 1 образуют граф <tex>G</tex>. В такой раскраске нет клики на <tex>k</tex> вершинах ни цвета 1, ни цвета 2, противоречие. Следовательно <tex>r(k,k) \ge 2^{k/2}</tex>.
+
Предположим, что <tex>r(k,k)=n<2^{k/2}</tex> и разобьём все графы на <tex>n</tex> вершинах на пары <tex>\langle G, \overline G \rangle</tex>. Так как <tex>g(n,k)<\dfrac12</tex>, то существует пара <tex>\langle G, \overline G \rangle</tex>, в которой ни <tex>G</tex>, ни <tex>\overline G</tex> не содержат подграфа на <tex>k</tex> вершинах. Рассмотрим раскраску рёбер <tex>K_n</tex> в два цвета, в которой ребра цвета <tex>1</tex> образуют граф <tex>G</tex>. В такой раскраске нет клики на <tex>k</tex> вершинах ни цвета <tex>1</tex>, ни цвета <tex>2</tex>, получили противоречие. Значит <tex>n</tex> было выбрано неверно. Из этого следует <tex>r(k,k) \geqslant 2^{k/2}</tex>.
}}
 
{{Утверждение|id=u2
 
|about=2
 
|statement=Для любых <tex>k,m \in \mathbb N</tex> таких, что <tex>2 \le k \le m</tex>, выполняется неравенство <tex>r(k,m) \ge 2^{k/2}</tex>
 
 
}}
 
}}
 +
 +
===Свойства чисел Рамсея===
 +
Следующими свойствами удобно пользоваться при подсчете значений чисел Рамсея <tex>r(n,m)</tex> на практике.
 +
* <tex>r(n,m) = r(m,n)</tex>
 +
* <tex>r(1,m) = 1</tex>
 +
* <tex>r(2,m) = m</tex>
 +
 
===Значения чисел Рамсея===
 
===Значения чисел Рамсея===
 +
Задача нахождения точных значений чисел Рамсея чрезвычайно трудна, их известно довольно мало. Далее приведена таблица Станислава Радзишевского, в которой присутствуют  практически все известные числа Рамсея или же промежутки, в которых они находятся.
 
<center>
 
<center>
 
{| class="wikitable" align="center" style="color: blue; background-color:#ffffcc;" cellpadding="10"
 
{| class="wikitable" align="center" style="color: blue; background-color:#ffffcc;" cellpadding="10"
Строка 60: Строка 65:
 
!colspan="11"|Числа Рамсея
 
!colspan="11"|Числа Рамсея
 
|-align="center"
 
|-align="center"
! <font color="black"><tex>m,\ s</tex></font>
+
! width="6%" |<font color="black"><tex>n,\ m</tex></font>
! <tex>1 </tex>
+
! width="6%" |<font color="black"><tex>1 </tex></font>
! <tex>2 </tex>
+
! width="6%" |<font color="black"><tex>2 </tex></font>
! <tex>3 </tex>
+
! width="6%" |<font color="black"><tex>3 </tex></font>
! <tex>4 </tex>
+
! width="6%" |<font color="black"><tex>4 </tex></font>
! <tex>5 </tex>
+
! width="6%" |<font color="black"><tex>5 </tex></font>
! <tex>6 </tex>
+
! width="6%" |<font color="black"><tex>6 </tex></font>
! <tex>7 </tex>
+
! width="6%" |<font color="black"><tex>7 </tex></font>
! <tex>8 </tex>
+
! width="6%" |<font color="black"><tex>8 </tex></font>
! <tex>9 </tex>
+
! width="6%" |<font color="black"><tex>9 </tex></font>
! <tex>10</tex>
+
! width="6%" |<font color="black"><tex>10</tex></font>
 
|-align="center"
 
|-align="center"
! <tex>1 </tex>
+
! <font color="black"><tex>1 </tex></font>
 
| <tex>1 </tex>
 
| <tex>1 </tex>
 
| <tex>1 </tex>
 
| <tex>1 </tex>
Строка 84: Строка 89:
 
| <tex>1 </tex>
 
| <tex>1 </tex>
 
|-align="center"
 
|-align="center"
! <tex>2 </tex>
+
! <font color="black"><tex>2 </tex></font>
 
| <tex>1 </tex>
 
| <tex>1 </tex>
 
| <tex>2 </tex>
 
| <tex>2 </tex>
Строка 96: Строка 101:
 
| <tex>10</tex>
 
| <tex>10</tex>
 
|-align="center"
 
|-align="center"
! <tex>3</tex>
+
! <font color="black"><tex>3</tex></font>
 
| <tex>1</tex>
 
| <tex>1</tex>
 
| <tex>3</tex>
 
| <tex>3</tex>
Строка 108: Строка 113:
 
| <tex>[40, 42]</tex>
 
| <tex>[40, 42]</tex>
 
|-align="center"
 
|-align="center"
! <tex>4</tex>
+
! <font color="black"><tex>4</tex></font>
 
| <tex>1</tex>
 
| <tex>1</tex>
 
| <tex>4</tex>
 
| <tex>4</tex>
Строка 120: Строка 125:
 
| <tex>[92, 149]</tex>
 
| <tex>[92, 149]</tex>
 
|-align="center"
 
|-align="center"
! <tex>5</tex>
+
! <font color="black"><tex>5</tex></font>
 
| <tex>1</tex>
 
| <tex>1</tex>
 
| <tex>5</tex>
 
| <tex>5</tex>
Строка 132: Строка 137:
 
| <tex>[149, 442]</tex>
 
| <tex>[149, 442]</tex>
 
|-align="center"
 
|-align="center"
! <tex>6</tex>
+
! <font color="black"><tex>6</tex></font>
 
| <tex>1</tex>
 
| <tex>1</tex>
 
| <tex>6</tex>
 
| <tex>6</tex>
Строка 144: Строка 149:
 
| <tex>[204, 1171]</tex>
 
| <tex>[204, 1171]</tex>
 
|-align="center"
 
|-align="center"
! <tex>7</tex>
+
! <font color="black"><tex>7</tex></font>
 
| <tex>1</tex>
 
| <tex>1</tex>
 
| <tex>7</tex>
 
| <tex>7</tex>
Строка 156: Строка 161:
 
| <tex>[292, 2826]</tex>
 
| <tex>[292, 2826]</tex>
 
|-align="center"
 
|-align="center"
! <tex>8</tex>
+
! <font color="black"><tex>8</tex></font>
 
| <tex>1</tex>
 
| <tex>1</tex>
 
| <tex>8</tex>
 
| <tex>8</tex>
Строка 168: Строка 173:
 
| <tex>[343, 6090]</tex>
 
| <tex>[343, 6090]</tex>
 
|-align="center"
 
|-align="center"
! <tex>9</tex>
+
! <font color="black"><tex>9</tex></font>
 
| <tex>1</tex>
 
| <tex>1</tex>
 
| <tex>9</tex>
 
| <tex>9</tex>
Строка 180: Строка 185:
 
| <tex>[580, 12677]</tex>
 
| <tex>[580, 12677]</tex>
 
|-align="center"
 
|-align="center"
! <tex>10</tex>
+
! <font color="black"><tex>10</tex></font>
 
| <tex>1</tex>
 
| <tex>1</tex>
 
| <tex>10</tex>
 
| <tex>10</tex>
Строка 193: Строка 198:
 
|}
 
|}
 
</center>
 
</center>
 
===Графы Рамсея===
 
{{Определение|id=def3
 
|definition='''Графом Рамсея''' <tex>R(n,m)</tex> назовем такой граф на <tex>r(n,m)-1</tex> вершинах, не содержащий ни клики на <tex>n</tex> вершинах ни независимого множества на <tex>m</tex> вершинах(то есть, граф на ребрах цвета 1 из раскраски в два цвета ребер графа <tex>K_{r(m,n)-1}</tex>, не содержащей ни клики на <tex>n</tex> вершинах с рёбрами цвета 1 ни клики на <tex>m</tex> вершинах с рёбрами цвета 2).
 
}}
 
Граф <tex>R(3,3)</tex> — это цикл на пяти вершинах. Экстремальный граф <tex>R(3,4)</tex> — это цикл на 8 вершинах с проведёнными четырьмя главными диагоналями. Графы <tex>R(3,5)</tex> и <tex>R(4,4)</tex> имеют интересную числовую природу.
 
 
Так, если ассоциировать 13 вершин графа <tex>R(3,5)</tex> с элементами поля вычетов по модулю 13, то рёбра будут соединять вычеты разность которых — кубический вычет по модулю 13 (то есть, 1, 5, 8 или 12).
 
 
Если считать 17 вершин графа <tex>R(4,4)</tex> элементами поля вычетов по модулю 17, то рёбра будут соединять вычеты, разность которых — квадратичный вычет по модулю 17 (то есть, 1, 2, 4, 8, 9, 13, 15 или 16).
 
 
Существует гипотеза что любой граф <tex>R(k,k)</tex> изоморфен своему дополнению(или что в раскраске полного графа на <tex>r(k,k)-1</tex> вершинах в два цвета граф с рёбрами цвета 1 обязательно изоморфен графу с рёбрами цвета 2). Однако, это не белее чем красивое предположение, в обоснование которого можно положите лишь немногие известные примеры.
 
  
 
===Числа Рамсея для раскрасок в несколько цветов===
 
===Числа Рамсея для раскрасок в несколько цветов===
 +
Теперь обобщим числа Рамсея на произвольное количество цветов.
 
{{Определение
 
{{Определение
 
|id=def4  
 
|id=def4  
 
|definition=
 
|definition=
Пусть <tex>k,n_1,...,n_k \in \mathbb N</tex>. Число Рамсея <tex>r(k;n_1,...,n_k)</tex> — это наименьшее из всех таких чисел <tex>x \in \mathbb N</tex>, что при любой раскраске рёбер полного графа на <tex>x</tex> вершинах в <tex>k</tex> цветов для некоторого <tex>i \in [1..k]</tex> обязательно найдётся клика на <tex>n_i</tex> вершинах с рёбрами цвета <tex>i</tex>.
+
'''Число Рамсея''' <tex>r(n_1,\ldots,n_k)</tex> — это наименьшее из всех таких чисел <tex>x \in \mathbb N</tex>, что при любой раскраске рёбер полного графа на <tex>x</tex> вершинах в <tex>k</tex> цветов для некоторого <tex>i \in [1 \ldots k]</tex> обязательно найдётся клика на <tex>n_i</tex> вершинах с рёбрами цвета <tex>i</tex>. <tex>k,n_1,\ldots,n_k \in \mathbb N</tex>
 
}}
 
}}
  
{{Утверждение
 
|id=u3|about=3
 
|statement=
 
Отметим, что <tex>r(2;n,m)</tex> — это определённое ранее число Рамсея <tex>r(n,m)</tex>
 
}}
 
Обобщение оказывается настолько естественным что по сути не добавляет нам ничего нового:  полностью аналогично [[#ter1|теореме 1]] и [[#u1| утверждению 1]] можно доказать следующие факты.
 
 
{{Теорема
 
{{Теорема
|id=ter3|about=3  
+
|id=ter3|about=3,Теорема Рамсея для нескольких цветов
|statement=Пусть <tex>k,n_1,...,n_k \ge 2</tex> {{---}} натуральные числа. Тогда выполняются следующие утверждения:
+
|statement=<tex>\forall k, n_1, \ldots n_k \in \mathbb N </tex> существует число Рамсея <tex>r(n_1,\ldots,n_k)</tex>, при этом <tex>r(n_1,\ldots,n_k)\leqslant r(n_1,\ldots, n_{k-2}, r(n_{k-1},\;n_k)).</tex>
<tex>1) r(k;n_1,...,n_k) \le r(k;n_1-1,n_2,...,n_k)+r(k;n_1,n_2-1,...,n_k)++r(k;n_1,n_2,...,n_k-1)-k+2</tex>
 
<tex dpi="150">2)r(k;n_1,...,n_k) \le \frac{(n_1+n_2+...+n_k)!}{n_1!\cdot n_2!\cdot ...\cdot n_k!}</tex>
 
 
|proof=
 
|proof=
1) Доказательстве полностью аналогично пункту 1 доказательства [[#ter1|теоремы 1]]
+
Возьмем граф из <tex>r(n_1,\ldots, n_{k-2}, r(n_{k-1}, n_k))</tex> вершин и окрасим его рёбра в <tex>k</tex> цветов. Пока что будем считать цвета <tex>k-1</tex> и <tex>k</tex> одним цветом. Тогда граф будет <tex>(k-1)</tex>-цветным. Согласно определению числа Рамсея <tex>r(n_1,\ldots,n_{k-2},r(n_{k-1},n_k))</tex>, такой граф либо содержит <tex>K_{n_i}</tex> для некоторого цвета <tex>i</tex>, такого что <tex>1\leqslant i\leqslant k-2</tex>, либо <tex>K_{r(n_{k-1},n_k)}</tex>, окрашенный общим цветом <tex>k-1</tex> и <tex>k</tex>. В первом случае доказательство завершено. Во втором случае вернём прежние цвета и заметим, что, по определению числа Рамсея, полный <tex>r(n_{k-1},n_k)</tex> — вершинный граф содержит либо <tex>K_{n_{k-1}}</tex> цвета <tex>k-1</tex>, либо <tex>K_{n_k}</tex> цвета <tex>k</tex>. Таким образом любое число Рамсея для раскраски в <tex>k</tex> цветов ограничено некоторым числом Рамсея для меньшего количества цветов, следовательно, <tex>r(n_1,\ldots,n_k)</tex> существует для любых <tex> k, n_1, \ldots n_k, \in \mathbb N </tex>, и теорема доказана.
 
 
2) Доказательство аналогично [[#u1|утверждению 1]]. Нужно лишь убедиться в очевидном неравенстве для случая, когда хотя бы одно из чисел <tex>n_1,...,n_k</tex> равно 1 (левая часть в этом случае равна 1, а правая, очевидно не меньше 1) и заметить, что полиномиальные коэффициенты из очевидных комбинаторных соображений удовлетворяют соотношению:
 
 
 
<tex dpi="150">\frac{(n_1+n_2+...+n_k)!}{n_1!\cdot n_2!\cdot ...\cdot n_k!}=\sum\limits_{i = 1}^k\frac{(n_1+...+(n_i-1)+...+n_k)!}{n_1!\cdot ...\cdot (n_i-1)!\cdot ...\cdot n_k!}</tex>
 
 
 
Следовательно, 2 неравенство из данной [[#ter3|теоремы]] выводится из неравенства 1 по индукции.
 
 
}}
 
}}
  
Строка 238: Строка 218:
 
|id=def5
 
|id=def5
 
|definition=
 
|definition=
Пусть <tex>m,k,n_1,...,n_k \in \mathbb N</tex>, причём <tex>n_1,...,n_k \ge m</tex>. Число Рамсея <tex>r_m(k; n_1,...,n_k)</tex> —  наименьшее из всех таких чисел <tex>x \in \mathbb N</tex>, что при любой раскраске <tex>m</tex>-элементных подмножеств <tex>x</tex>-элементного множества <tex>M</tex> в <tex>k</tex> цветов для некоторого <tex>i \in [1..k]</tex> обязательно найдётся такое множество <tex>W_i</tex>, что <tex>|W_i|=n_i</tex> и все <tex>m</tex>-элементные подмножества множества <tex>W_i</tex> имеют цвет <tex>i</tex>.
+
Пусть <tex>m,k,n_1,\ldots ,n_k \in \mathbb N</tex>, причём <tex>n_1,\ldots ,n_k \geqslant m</tex>. '''Число Рамсея''' <tex>r_m(n_1,\ldots ,n_k)</tex> —  наименьшее из всех таких чисел <tex>x \in \mathbb N</tex>, что при любой раскраске <tex>m</tex>-элементных подмножеств <tex>x</tex>-элементного множества <tex>M</tex> в <tex>k</tex> цветов для некоторого <tex>i \in [1\ldots k]</tex> обязательно найдётся такое множество <tex>W_i</tex>, что <tex>|W_i|=n_i</tex> и все <tex>m</tex>-элементные подмножества множества <tex>W_i</tex> имеют цвет <tex>i</tex>. Число <tex>m</tex> называют '''размерностью''' числа Рамсея <tex>r_m(n_1,\ldots ,n_k)</tex>.
}}
 
{{Определение
 
|id=def6
 
|definition=
 
Число <tex>m</tex> называется размерностью числа Рамсея <tex>r_m(k;n_1,...,n_k)</tex>.
 
}}
 
{{Утверждение
 
|id=u4|about=4
 
|statement=
 
1) Нетрудно понять что числа Рамсея размерности 2 — это определённые выше числа Рамсея для клик<br>2) При количестве цветов, равном 2, этот параметр мы будем опускать и писать <tex>r_m(n_1,n_2)</tex> вместо <tex>r_m(2;n_1,n_2)</tex>.
 
}}
 
{{Определение
 
|id=def7|definition=
 
Для каждою множества <tex>M</tex> через <tex>M^k</tex> мы будем обозначать множество всех <tex>k</tex>-элементных подмножеств <tex>M</tex>.
 
 
}}
 
}}
 +
Заметим, что числа Рамсея размерности <tex>2</tex> — это определённые ранее числа Рамсея для клик.
 +
 
{{Теорема
 
{{Теорема
|id=ter4|about=4|statement=Пусть <tex>m,k,n_1,...,n_k</tex> {{---}} натуральные числа, причем <tex>k \ge 2</tex>, а <tex>n_1,...,n_k \ge m</tex>. Тогда число Рамсея <tex>r_m(k;n_1,...n_k)</tex> существует(то есть, конечно)
+
|id=ter4|about=4, Теорема Рамсея для чисел больших размерностей
 +
|statement=Пусть <tex>m,k,n_1,\ldots,n_k</tex> {{---}} натуральные числа, причем <tex>k \geqslant 2</tex>, а <tex>n_1,\ldots ,n_k \geqslant m</tex>. Тогда существует число Рамсея <tex>r_m(n_1,\ldots n_k)</tex>.
 
|proof=
 
|proof=
1)Мы будем доказывать теорему по индукции. Начнем со случая <tex>k=2</tex>. Приступая к доказательству для числа <tex>r_m(n_1,n_2)</tex> мы будем считать доказанным утверждение теоремы для чисел Рамсея всех меньших размерностей и чисел Рамсея размерности <tex>m</tex> с меньшей суммой <tex>n_1+n_2</tex>. В качестве базы будем использовать случай чисел Рамсея размерности 2 разобранный выше. Итак, мы докажем, что
+
# Мы будем доказывать теорему по индукции. Начнем со случая <tex>k=2</tex>. Приступая к доказательству для числа <tex>r_m(n_1,n_2)</tex> мы будем считать доказанным утверждение теоремы для чисел Рамсея всех меньших размерностей и чисел Рамсея размерности <tex>m</tex> с меньшей суммой <tex>n_1+n_2</tex>. В качестве базы будем использовать случай чисел Рамсея размерности <tex>2</tex> разобранный выше. Итак, мы докажем, что <tex>r_m(n_1,n_2)-1 \leqslant p=r_{m-1}(r_m(n_1-1,n_2),r_m(n_1,n_2-1))</tex>. <br> Для каждого множества <tex>M</tex> через <tex>M^k</tex> обозначим множество всех <tex>k</tex>-элементных подмножеств <tex>M</tex>. <br> Рассмотрим <tex>(p+1)</tex>-элементное множество <tex>M</tex> и выделим в нём элемент <tex>a</tex>. Пусть <tex>M_0=M \setminus \{ a \}</tex>. Пусть <tex>\rho:M^m\rightarrow \{1, 2 \} </tex> — произвольная раскраска в два цвета. Рассмотрим раскраску <tex>\rho': M_0^{m-1} \rightarrow \{1, 2\} </tex> , определённую следующим образом: для каждого множества <tex>B \in M_0^{m-1}</tex> пусть <tex>\rho'(B) = \rho(B \cup \{ a \})</tex>. <br> Так как <tex>|M_0|=p</tex>, либо существует <tex>r_m(n_1 — 1,n_2)</tex>-элементное подмножество <tex>M_1 \subset M_0</tex>, <tex>\rho'(B)=1</tex> на всех <tex>B \in M_1^{m-1}</tex>, либо существует <tex>r_m(n_1,n_2-1)</tex>-элементное подмножество <tex>M_2 \subset M_0</tex>, <tex>\rho'(B)=2</tex> на всех <tex>B \in M_2^{m-1}</tex>. Случаи аналогичны, рассмотрим первый случай и множество <tex>M_1</tex>. <br> По индукционному предположен из <tex>|M_1|=r_m(n_1-1,n_2)</tex> следует, что либо существует <tex>n_1-1</tex>-элементное подмножество <tex>N_1 \subset M_1</tex>, <tex>\rho(A)=1</tex> на всех <tex>A \in N^m_1</tex>, либо существует <tex>n_2</tex>-элементное подмножество <tex>N_2 \subset M_1</tex>, <tex>\rho(A)=2</tex> на всех <tex>A \in N_2^m</tex>. Во втором случае искомое подмножество найдено (это <tex>N_2</tex>), рассмотрим первый случай и множество <tex>N=N_1 \cup \{a\}</tex>. Пусть <tex>A \in N^m</tex>. Если <tex>A \not\ni a</tex>, то <tex>A \in N_1^m</tex> и следовательно <tex>\rho(A)=1</tex>. Если же <tex>A \ni a</tex>, то множество <tex>A \setminus \{a\} \in N_1^{m-1} \subset M_1^{m-1}</tex> и поэтому <tex>\rho(A)=\rho'(A \setminus \{a \})=1</tex>. Учитывая, что <tex>|N|=n_1</tex>, мы нашли искомое подмножество и в этом случае.
 
+
# При <tex>k>2</tex> будем вести индукцию по <tex>k</tex> с доказанной выше базой <tex>k=2</tex>. При <tex>k>2</tex> мы докажем неравенство <tex>r_m(n_1,\ldots ,n_k) \leqslant q=r_m(r_m(n_1,\ldots ,n_{k-1}),n_k)</tex>. <br> Для этого мы рассмотрим множество <tex>M</tex> на <tex>q</tex> вершинах и произвольную раскраску <tex>\rho:M^m \rightarrow [1 \ldots k]</tex> в <tex>k</tex>цветов. Рассмотрим раскраску <tex>\rho':M^m \rightarrow \{0,k\}</tex>, в которой цвета <tex>1,\ldots,k-1</tex> раскраски <tex>\rho</tex> склеены в цвет <tex>0</tex>. Тогда существует либо такое подмножество <tex>M_0 \subset M</tex>, что <tex>|M_0|=r_m(n_1,\ldots ,n_{k-1})</tex> и <tex>\rho'(A)=0</tex> на всех <tex>A \in M_0^m</tex>, либо существует такое <tex>n_k</tex>-элементное подмножество <tex>M_k \subset M</tex>, что <tex>\rho(A)=\rho'(A)=k</tex> на всех <tex>A \in M^m_k</tex>. Во втором случае <tex>M_k</tex> — искомое подмножество, а в первом случае заметим, что на любом подмножестве <tex>A \in M_0^m</tex> из <tex>\rho'(A)=0</tex> следует <tex>\rho(A) \in [1 \ldots k-1]</tex>. Исходя из размера множества <tex>M_0</tex> по индукционному предположению получаем, что найдется искомое подмножество множества <tex>M</tex> для одного из цветов <tex>1,\ldots ,k-1</tex>, таким образом неравенство доказано, а из этого следует и существование числа Рамсея <tex>r_m(n_1,\ldots ,n_k)</tex>.
<tex>r_m(n_1,n_2)-1 \le p=r_{m-1}(r_m(n_1-1,n_2),r_m(n_1,n_2-1))</tex>
 
 
 
Рассмотрим <tex>(p+1)</tex>-элементное множество <tex>M</tex> и выделим в нём элемент <tex>a</tex>. Пусть <tex>M_0=M</tex>\{<tex>a</tex>}. Пусть <tex>\rho:M^m\rightarrow</tex> {1,2} — произвольная раскраска в два цвета. Рассмотрим раскраску <tex>\rho': M_0^{m-1}\rightarrow</tex> {1,2}, определённую следующим образом: для каждого множества <tex>B \in M_0^{m-1}</tex> пусть <tex>\rho'(В) = \rho(B U</tex>{a}<tex>)</tex>.
 
Так как <tex>|M_0|=p</tex>, либо существует <tex>r_m(n_1 — 1,n_2)</tex>-элементное подмножество <tex>M_i \subset M_0</tex>, для которого <tex>\rho'(В)=1</tex> на всех <tex>B \in M_1^{m-1}</tex>, либо существует <tex>r_m(n_1,n_2-1)</tex>-элементное подмножество <tex>M_2 \subset M_0</tex>, для которого <tex>\rho'(B)=2</tex> на всех <tex>B \in M_2^{m-1}</tex>. Случаи аналогичны, рассмотрим первый случай и множество <tex>M_1</tex>.
 
По индукционному предположен из <tex>|M_1|=r_m(n_1-1,n_2)</tex> следует, что либо существует <tex>n_1-1</tex>-элементное подмножество <tex>N_1 \subset M_1</tex>, для которого <tex>\rho(A)=1</tex> на всех <tex>A \in N^m_1</tex>, либо существует <tex>n_2</tex>-элементное подмножество <tex>N_2 \subset M_1</tex>, для которого <tex>\rho(A)=2</tex> на всех <tex>A \in N_2^m</tex>. Во втором случае искомое подмножество найдено (это <tex>N_2</tex>), рассмотрим первый случай и множество <tex>N=N_1 \cup </tex>{<tex>a</tex>}. Пусть <tex>A \in N^m</tex>. Если <tex>A \not\ni a</tex>, то <tex>A \in N_1^m</tex> и следовательно <tex>\rho(A)=1</tex>. Если же <tex>A \ni a</tex>, то множество <tex>A</tex>\{<tex>a</tex>}<tex>\in N_1^{m-1} \subset M_1^{m-1}</tex> и поэтому <tex>\rho(A)=\rho'(A</tex>\{<tex>a</tex>}<tex>)=1</tex>. Учитывая, что <tex>|N|=n_1</tex>, мы нашли искомое подмножество и в этом случае.
 
 
 
2)При <tex>k>2</tex> будем вести индукцию по <tex>k</tex> с доказанной выше базой <tex>k=2</tex>. При <tex>k>2</tex> мы докажем неравенство
 
 
 
<tex>r_m(k;n_1,...,n_k) \le q=r_m(r_m(k-1;n_1,...,n_{k-1}),n_k)</tex>
 
 
 
Для этого мы рассмотрим множество <tex>M</tex> на <tex>q</tex> вершинах и произвольную раскраску <tex>\rho:M^m \rightarrow [1..k]</tex> в <tex>k</tex>цветов. Рассмотрим раскраску <tex>\rho':M^m \rightarrow </tex>{<tex>0,k</tex>}, в которой цвета <tex>1,...,k-1</tex> раскраски <tex>\rho</tex> склеены в цвет 0. Тогда существует либо таксе подмножество <tex>M_0 \subset M</tex>, что <tex>|M_0|=r_m(k-1;n_1,...,n_{k-1})</tex> и <tex>\rho'(A)=0</tex> на всех <tex>A \in M_0^m</tex>, либо существует такое <tex>n_k</tex>-элементное подмножество <tex>M_k \subset M</tex>, что <tex>\rho(A)=\rho'(A)=k</tex> на всех <tex>A \in M^m_k</tex>. Во втором случае <tex>M_k</tex> — искомое подмножество, а в первом случае заметим, что на любом подмножестве <tex>A \in M_0^m</tex> из <tex>\rho'(A)=0</tex> следует <tex>\rho(A) \in [1..k-1]</tex>. Исходя из размера множества <tex>M_0</tex> по индукционному предположению получаем, что найдется искомое подмножество множества <tex>M</tex> для одного из цветов <tex>1,...,k-1</tex>
 
 
}}
 
}}
  
Строка 277: Строка 235:
 
|id=def8
 
|id=def8
 
|definition=
 
|definition=
Пусть <tex>H_1,h_2</tex> — два данных графа. Число Рамсея <tex>r(H_1,H_2)</tex> — это наименьшее из всех таких чисел <tex>x \in \mathbb N</tex>, что при любой раскраске рёбер полного графа на <tex>x</tex> вершинах в два цвета обязательно найдется подграф, изоморфный <tex>H_1</tex> с рёбрами цвета 1 или подграф изоморфный <tex>H_2</tex> с рёбрами цвета 2
+
Пусть <tex>H_1,H_2</tex> — графы. '''Число Рамсея''' <tex>r(H_1,H_2)</tex> — это наименьшее из всех таких чисел <tex>x \in \mathbb N</tex>, что при любой раскраске рёбер полного графа на <tex>x</tex> вершинах в два цвета обязательно найдется подграф, [[Основные определения теории графов#isomorphic_graphs|изоморфный]] <tex>H_1</tex> с рёбрами цвета <tex>1</tex> или подграф изоморфный <tex>H_2</tex> с рёбрами цвета <tex>2</tex>.
 
}}
 
}}
В принципе из результатов классической теории Рамсея понятие, что числа <tex>r(H_1,H_2)</tex> обязательно существуют (то есть, конечны).
+
Существует и другое определение чисел Рамсея для произвольных графов.
 +
{{Определение
 +
|id=def16
 +
|definition=
 +
Пусть <tex>H_1,H_2</tex> — графы. '''Число Рамсея''' <tex>r(H_1,H_2)</tex> — это наименьшее из всех таких чисел <tex>x \in \mathbb N</tex>, что для любого графа <tex>G</tex> на <tex>x</tex> вершинах либо в <tex>G</tex> найдется подграф изоморфный <tex>H_1</tex>,  либо в <tex>\overline G</tex> найдется подграф изоморфный <tex>H_2</tex>.
 +
}}
 +
Несложно показать, что эти определения эквивалентны (аналогично определениям для классических чисел Рамсея). Из результатов классической теории Рамсея становится понятно, что числа <tex>r(H_1,H_2)</tex> существуют.
  
 
{{Лемма
 
{{Лемма
|id=l1|about=1|statement=Пусть <tex>m>1</tex>, а граф <tex>H</tex> таков, что <tex>v(H) \ge (m-1)(n-1)+1</tex> и <tex>\alpha(H) \le m-1</tex>. Тогда граф <tex>H</tex> содержит в качестве подграфа любое дерево на <tex>n</tex> вершинах.
+
|id=l1|about=1|statement=Пусть <tex>m>1</tex>, а граф <tex>H</tex> таков, что <tex>v(H) \geqslant (m-1)(n-1)+1</tex> и <tex>\alpha(H) \leqslant m-1</tex>, где <tex>v(H)</tex> {{---}} количество вершин в графе <tex>H</tex>. Тогда граф <tex>H</tex> содержит в качестве подграфа любое [[Основные определения теории графов#defTree|дерево]] на <tex>n</tex> вершинах.
 
|proof=
 
|proof=
Зафиксируем <tex>m</tex> и проведем индукцию по <tex>n</tex>. База для <tex>n=1</tex> очевидна. Докажем индукционный переход <tex>n-1 \rightarrow n(n>1</tex>. Рассмотрим произвольное дерево <tex>T_n</tex> на <tex>n</tex> вершинах, пусть дерево <tex>T_{n-1}</tex> получено из <tex>T_n</tex> удалением висячей вершины. Пусть <tex>U</tex> — максимальное независимое множестве вершин графа <tex>H</tex> Тогда <tex>|U|=\alpha(H) \le m-1</tex>, следовательно <tex>v(H-U) \ge (m-1)(n-2)+1</tex> и очевидно <tex>\alpha(H-U) \le m-1</tex>.
+
Зафиксируем <tex>m</tex> и проведем индукцию по <tex>n</tex>.  
По индукционному предположению, граф <tex>H-U</tex> содержит в качестве подграфа дерево <tex>T_{n-1}</tex>. Пусть <tex>a</tex> — вершина этого дерева, присоединив к ксторой висячую вершину мы получим дерево <tex>T_n</tex>. Заметим, что множество <tex>U \cup</tex>{<tex>a</tex>} не является независимым ввиду максимальности <tex>U</tex>. Следовательно, вершина <tex>a</tex> смежна хотя с одной вершиной <tex>x \in U</tex>. Отметим, что <tex>x \not\in V(T_{n-1})</tex> и, присоединив вершину <tex>x</tex> к вершине <tex>a</tex> дерева <tex>T_{n-1}</tex>, получим дерево <tex>T_n</tex> в качестве подграфа графа <tex>H</tex>.
+
 
 +
'''База:''' для <tex>n=1</tex> очевидно.  
 +
 
 +
'''Индукционный переход:''' Пусть верно для <tex>n-1</tex>, докажем для <tex>n</tex>. Рассмотрим произвольное дерево <tex>T_n</tex> на <tex>n</tex> вершинах, пусть дерево <tex>T_{n-1}</tex> получено из <tex>T_n</tex> удалением висячей вершины. Пусть <tex>U</tex> — максимальное независимое множество вершин графа <tex>H</tex>. Тогда <tex>|U|=\alpha(H) \leqslant m-1</tex>, следовательно <tex>v(H-U) \geqslant (m-1)(n-2)+1</tex> и очевидно <tex>\alpha(H-U) \leqslant m-1</tex>.
 +
По индукционному предположению, граф <tex>H-U</tex> содержит в качестве подграфа дерево <tex>T_{n-1}</tex>. Пусть <tex>a</tex> — вершина этого дерева, присоединив к которой висячую вершину, мы получим дерево <tex>T_n</tex>. Заметим, что множество <tex>U \cup</tex> <tex>\{a\}</tex> не является независимым ввиду максимальности <tex>U</tex>. Следовательно, вершина <tex>a</tex> смежна хотя бы с одной вершиной <tex>x \in U</tex>. Отметим, что <tex>x</tex> не принадлежит множеству вершин графа <tex>T_{n-1}</tex> и, присоединив вершину <tex>x</tex> к вершине <tex>a</tex> дерева <tex>T_{n-1}</tex>, получим дерево <tex>T_n</tex> в качестве подграфа графа <tex>H</tex>.
 
}}
 
}}
 
{{Теорема
 
{{Теорема
 
|id=ter5  
 
|id=ter5  
|author=5
+
|author=5, Теорема Хватала
|statement=Пусть <tex>T_n</tex> — дерево на <tex>n</tex> вершинах. Тогда <tex>r(T_n,K_m)=(m-1)(n-1)+1</tex>.
+
|statement=<tex>r(T_n,K_m)=(m-1)(n-1)+1</tex>, где <tex>T_n</tex> — дерево на <tex>n</tex> вершинах.
 
|proof=
 
|proof=
1) Докажем, что <tex>r(T_n,K_m) \ge (m-1)(n-1)+1</tex>. Для этого предъявим раскраску рёбер графа K_{(m-1)(n-1)}, в которой нет ни одного связного подграфа на <tex>n</tex> вершинах с рёбрами цвета 1 и нет клики на <tex>m</tex> вершинах с рёбрами цвета 2. Разобьём вершины графа на <tex>m-1</tex> клику по <tex>n-1</tex> вершине и покрасим все рёбра этих клик в цвет 1. Тогда любой связный подграф с рёбрами цвета 1 содержит не более <tex>n-1</tex> вершины, в частности, нет подграфа с рёбрами цвета 1, изоморфного <tex>T_n</tex>. Рёбра цвета 2 (то есть, все оставшиеся рёбра) образуют <tex>(m-1)</tex>-дольный граф, в котором, очевидно, нет клики на <tex>m</tex> вершинах.
+
Сперва докажем, что <tex>r(T_n,K_m) \geqslant (m-1)(n-1)+1</tex>. Для этого предъявим раскраску рёбер графа <tex>K_{(m-1)(n-1)}</tex>, в которой нет ни одного связного подграфа на <tex>n</tex> вершинах с рёбрами цвета <tex>1</tex> и нет клики на <tex>m</tex> вершинах с рёбрами цвета <tex>2</tex>. Разобьём вершины графа на <tex>m-1</tex> клику по <tex>n-1</tex> вершине и покрасим все рёбра этих клик в цвет <tex>1</tex>. Тогда любой связный подграф с рёбрами цвета <tex>1</tex> содержит не более <tex>n-1</tex> вершины, в частности, нет подграфа с рёбрами цвета <tex>1</tex>, изоморфного <tex>T_n</tex>. Рёбра цвета <tex>2</tex> (то есть, все оставшиеся рёбра) образуют <tex>(m-1)</tex>-дольный граф, в котором, очевидно, нет клики на <tex>m</tex> вершинах.
 
+
Теперь воспользуемся вторым [[#def16|определением]] числа Рамсея <tex>r(H_1, H_2)</tex>. Рассмотрим произвольный граф <tex>G</tex> на <tex>{(m-1)(n-1)+1}</tex> вершинах. Предположим, что в графе <tex>G</tex> не существует клики на <tex>m</tex> вершинах. Тогда <tex>m>1</tex> и <tex>\alpha( \overline G) \leqslant m-1</tex>. По [[#l1|лемме <tex>1</tex>]], граф <tex> \overline G</tex> содержит в качестве подграфа любое дерево на <tex>n</tex> вершинах, в частности, дерево, изоморфное <tex>T_n</tex>.
2) Рассмотрим произвольную раскраску рёбер полного графа <tex>K_{(m-1)(n-1)+1}</tex> в два цвета. Предположим, что не существует клики на <tex>m</tex> вершинах с рёбрами цвета 2. Тогда <tex>m>1</tex> и <tex>\alpha(G_1) \le m-1</tex>. По [[#l1|лемме 1]], граф <tex>G_1</tex> содержит в качестве подграфа любое дерево на <tex>n</tex> вершинах в частности, дерево, изоморфное <tex>T_n</tex>.
 
 
}}
 
}}
  
 
==Индуцированная теорема Рамсея==
 
==Индуцированная теорема Рамсея==
Докажем похожее на теорему Рамсея, но значительно более сложнее утверждение.
 
 
{{Определение
 
{{Определение
 
|id=def9
 
|id=def9
|definition=Пусть <tex>H</tex> — граф. Граф <tex>G</tex> называется рамсеееским графом для <tex>H</tex>, если при любой раскраске рёбер графа <tex>G</tex> в два цвета существует одноцветный по рёбрам индуцированный подграф графа <tex>G</tex> изоморфный <tex>H</tex>}}
+
|definition=Граф <tex>H</tex> называется '''индуцированным подграфом''' (англ. ''induced subgraph'') графа <tex>G</tex> если две вершины в <tex>H</tex> соединены ребром тогда и только тогда, когда они смежны в <tex>G</tex>. }}
При замене произвольного графа <tex>H</tex> на клику мы получаем частный случай классической теоремы Рамсея. Для клики добавленное слово "индуцированный" ничего не меняет. Но значительно усложняет ситуацию для произвольного графа <tex>H</tex>.  
 
{{Теорема
 
|id=ter6
 
|about=6, Индуцированная теорема Рамсея
 
|statement=Для любого графа существует рамсеевский граф
 
}}
 
===Случай двудольного графа===
 
Здесь мы будем рассматривать двудольный граф <tex>G</tex>, как
 
 
 
<tex>G=(V_1(G),V_2(G),E(G))</tex>,
 
  
где <tex>V_1(G)</tex> и <tex>V_2(G)</tex> — разбиение множества вершин <tex>V(G)</tex> на две доли, а рёбра соединяют вершины из разных долей.
 
 
{{Определение
 
{{Определение
 
|id=def10
 
|id=def10
|definition=
+
|definition=Пусть <tex>H</tex> — граф. Граф <tex>G</tex> будем называть '''рамсеевским графом'''  (англ. ''Ramsey’s graph'') для <tex>H</tex>, если при любой раскраске рёбер графа <tex>G</tex> в два цвета существует одноцветный по рёбрам индуцированный подграф графа <tex>G</tex> изоморфный <tex>H</tex>.}}
Пусть <tex>H,G</tex> — двудольные графы. Инъективное отображение <tex>\phi:V(H)\rightarrow V(G)</tex> назовём погружением, если оно удовлетворяет двум условиям.<br>
+
 
1)<tex>\phi(V_1(H)) \subset V_1(G), \phi(V_2(H)) \subset v_2(G)</tex><br>
 
2)<tex>\phi(u)\phi(v) \in E(G)</tex> тогда и только тогда когда <tex>uv\in E(H)</tex>
 
В этом случае будем говорить, что двудольный граф <tex>H</tex> погружён в двудольный граф <tex>G</tex> и использовать обозначение <tex>\phi(H)=G(\phi(V(H)))</tex>
 
}}
 
{{Утверждение
 
|id=u5|about=5
 
|statement=
 
Отметим, что если существует погружение <tex>\phi</tex> двудольного графа <tex>H</tex> в двудольный граф <tex>G</tex> то индуцированный подграф <tex>\phi(H)</tex> графа <tex>G</tex> изоморфен <tex>H</tex>
 
}}
 
Напомним, что для множества <tex>X</tex> через <tex>X^k</tex> мы обозначаем множество всех <tex>k</tex>-элементных подмножеств множества <tex>X</tex>.
 
 
{{Определение
 
{{Определение
 
|id=def11
 
|id=def11
|definition=Назовем особым двудольный граф вида
+
|definition='''Индуцированным числом Рамсея''' (англ. ''induced Ramsey’s number'') <tex>r_{ind}(H)</tex> для графа <tex>H</tex> будем называть минимальное число <tex>x \in \mathbb N</tex>, такое что существует рамсеевский граф на <tex>x</tex> вершинах для графа <tex>H</tex>.}}
<tex>H=(V,V^k,E(H))</tex>, где <tex>E(H)=</tex>{<tex>xY|x\in V,Y\in V^k, x\in Y</tex>}
+
Заметим, что при замене произвольного графа <tex>H</tex> на клику мы получаем частный случай классической теоремы Рамсея.
}}
 
  
{{Лемма
 
|id=l2|about=2
 
|statement=Любой двудольный граф может быть погружен в особый двудольный граф.
 
|proof=
 
Рассмотрим произвольный двудольный граф <tex>P</tex>, пусть <tex>V_1(P)=\{a_1,...,a_n\}, V_2(P)=\{b_1,...,b_n\}</tex>. Положим
 
<tex>V=\{x_1,...,x_n,y_1,...,y_n,z_1,...,z_m\}</tex>
 
  
Построим погружение <tex>P</tex> в особый двудольный граф <tex>H=(V,V^{n+1},E)</tex>.
+
{{Теорема
 
+
|id=ter6
Изначально положим <tex>\phi(a_i)=x_i</tex>. Попробуем построить такое множество <tex>Y_j\in V^{n+1}</tex>, что <tex>\phi(b_j)=Y_j</tex>. По определению погружения и множества <tex>E(H)</tex>, должно выполняться условие:<br>
+
|about=6, Индуцированная теорема Рамсея
<tex>Y_j\cap\{x_1,...,x_n\}=\phi(N_P(b_j)</tex>
+
|statement=Для любого графа <tex>H</tex> существует рамсеевский граф <tex>G</tex>.
Условие оставляет незаполненными <tex>n+1-d_P(b_j)\ge 1</tex> элементов множества <tex>Y_j</tex> (единственное ограничение эти элементы не могут быть вершинами <tex>x_1,...,x_n</tex>). Поместим в <tex>Y_j</tex> элемент-индекс <tex>z_j</tex> (чтобы <tex>Y_j\not=Y_l</tex> при <tex>j \not=l</tex>, и дополним произвольно элементами из <tex>y_1,...,y_n</tex>, чтобы в множестве <tex>Y_j</tex> было ровно <tex>n+1</tex> элементов.
 
}}
 
 
 
{{Лемма
 
|id=l3|about=3
 
|statement=Для любого двудольного графа <tex>H</tex> существует такой двудольный граф <tex>G</tex>, что для любой раскраски рёбер <tex>G</tex> в два цвета обязательно существует погружение <tex>\phi</tex> графа <tex>H</tex> в граф <tex>G</tex> в котором все рёбра <tex>\phi(H)</tex> одноцветны.
 
|proof=
 
{{Утверждение
 
|id=u6|about=6
 
|statement=
 
Разумеется, указанный в условии [[#l3|леммы 3]] граф <tex>G</tex> будет рамсеевским графом для <tex>H</tex>. Утверждение леммы более сильное: мы дополнительно требуем, чтобы все вершины одной доли <tex>H</tex> можно было погрузить в одну долю графа <tex>G</tex>.
 
}}
 
Ввиду [[#l2|леммы 2]] достаточно доказать утверждение для особого двудольного графа <tex>H=(V,V^k,E(H))</tex>. Пусть <tex>|V|=n</tex>. Докажем что рамсеевским графом для <tex>H</tex> будет особый двудольный граф <tex>G=(U,U^{2k-1},E(G))</tex>, где<br>
 
<tex>|U|=r_{2k-1}(2C^k_{2k-1};kn+k-1,...,kn+k-1).</tex> '''**'''<br>
 
Рассмотрим произвольную раскраску рёбер графа <tex>G</tex> в два цвета 1 и 2. Каждое множество <tex>Y\in U^{2k-1}</tex> смежно как вершина особого двудольного графа <tex>G</tex> с <tex>2k-1</tex> вершиной, хотя бы <tex>k</tex> из этих рёбер имеет одинаковый цвет. Выберем и зафиксируем для каждого множества <tex>Y</tex> его подмножество <tex>S(Y)</tex>, состоящее из <tex>k</tex> вершин доли <tex>U</tex> соединённых с <tex>Y</tex> рёбрами одинакового цвета. Пусть <tex>c(Y)\in \{1,2\}</tex> — это цвет рёбер соединяющий <tex>Y</tex> с вершинами из <tex>S(Y)</tex>.
 
 
 
Можно считать, что элементы <tex>U</tex> упорядочены. Тогда элементы каждого множества <tex>Y\in U^{2k-1}</tex> будут упорядочены. Обозначим через <tex>\sigma(Y)</tex> множество номеров <tex>k</tex> элементов множества <tex>S(Y)</tex> в порядке элементов множества <tex>Y</tex>. Тогда <tex>\sigma(Y)</tex> может принимать ровно <tex>C^k_{2k-1}</tex> значений.
 
 
 
Покрасим множество <tex>U^{2k-1}</tex> (то есть все <tex>(2k-1)</tex>-элементные подмножества <tex>U</tex>) в <tex>2C^k_{2k-1}</tex>цветов: цветом подмножества <tex>Y</tex> будет пара <tex>(\sigma(Y),c(Y))</tex>. Из выбора размера множества <tex>U</tex> (см. условие **) следует, что ceotcndetn такое подмножество <tex>W\subset U</tex>, что <tex>|W|=kn+k-1</tex> и все подмножества <tex>Y\subset W^{2k-1}</tex> имеют одинаковый цвет <tex>(\sigma(Y),c(Y))</tex> (не умаляя общности будем считать, что <tex>\sigma(Y)=\sigma, c(Y)=1)</tex>. Мы найдём погружение графа <tex>H</tex> в <tex>G(W)</tex>, все рёбра в котором покрашены в исходной раскраске в цвет 1 и тем самым докажем лемму.
 
 
 
Занумеруем элементы множества <tex>W</tex> в порядке их следования в <tex>U</tex>: пусть <tex>W=\{w_1,...,w_{kn+k-1}\}</tex>. Введем обозначения
 
 
 
<tex>t_j=w_kj, T=\{t_1,...,t_n\}, V=\{a_1,...,a_n\}</tex>.
 
 
 
Положим <tex>\phi(a_i)=t_i</tex>. Остаётся корректно определить <tex>\phi(Z)</tex> для каждого множества <tex>Z\in V^k</tex>. Прежде чем построить <tex>\phi(Z)=Y\in U^{2k-1}</tex> мы положим <tex>S(Y)=\{\phi(x):x\in Z\}</tex>. Из определения погружения понятно, что тогда должно выполняться условие <tex>S(Y)=Y\cap T</tex>, а следовательно, нам нужно дополнить множество <tex>Y</tex> еще <tex>k-1</tex> элементами, не входящими в множество <tex>T</tex>. Мы сделаем это так, чтобы множество порядков номеров элементов множества <tex>S(Y)</tex> среди элементов множества <tex>Y</tex> было <tex>\sigma(Y)=\sigma</tex>: так как <tex>t_i=w_ki</tex>, не входящих в <tex>T</tex> элементов <tex>W</tex> хватит, чтобы обеспечить это.
 
 
 
Так как по выбору множества <tex>W</tex> мы имеем <tex>\sigma(Y)=\sigma</tex>, множество <tex>S(Y)</tex> выбрано корректно и, опять же в силу выбора <tex>W</tex>, все рёбра особого двудольного графа <tex>G</tex> между вершинами из <tex>S(Y)=\{\phi(x):x\in Z\}</tex> и <tex>Y=\phi(Z)</tex> покрашены в цвет 1. В завершение остается лишь добавить, что при <tex>Z\not=Z'</tex> мы по построению имеем <tex>S(\phi(Z))\not=S(\phi(Z'))</tex>, поэтому <tex>\phi(Z)\not=\phi(Z')</tex>. Таким образом искомое погружение построено.
 
 
}}
 
}}
  
===Случай произвольного графа===
+
Доказательство <ref>[https://math.la.asu.edu/~andrzej/teach/mat598/lec8.pdf Induced Ramsey Theorem Proof]</ref> данной теоремы было приведено независимо различными математиками, однако благодаря ему получилось предоставить только очень грубые оценки значений индуцированных чисел Рамсея. В данный момент проблема нахождения сколько-нибудь точных границ индуцированных чисел Рамсея является нерешенной задачей математики.
{{Теорема
 
|id=ter7|about=7
 
|statement=Для произвольного графа <tex>H</tex> существует рамсеевский граф.
 
|proof=
 
Пусть <tex>k=v(H),n=r(k,k)</tex>. Пронумеруем вершины графа <tex>H</tex>. Построим граф <tex>G^0</tex> следующим образом: разместим его вершины в виде таблице <tex>n \times C^k_n</tex>. Таким образом в каждом столбце вершины окажутся пронумерованы числами от 1 до <tex>n</tex>, как соответствующие строки таблицы. В каждом столбце одним из <tex>C^k_n</tex> способов разместим граф <tex>H</tex> (каждый столбец соответствует одному из возможных способов размещения). Все рёбра графа <tex>G^0</tex> будут рёбрами указанных копий графа <tex>H</tex>.
 
  
Граф <tex>G^0</tex> является <tex>n</tex>-дольным, его естественное разбиение на доли задаётся таблицей: <tex>V_i(G^0)</tex> — это вершины, соответствующие <tex>i</tex> ряду таблицы. Мы последовательно в несколько шагов будем перестраивать наш граф с помощью [[#l3|леммы 3]], так, чтобы вершины последующих графов также разбивались на <tex>n</tex> долей и записывались в виде таблицы. Каждый шаг будет соответствовать одной паре строк таблицы.
+
==Особенности теории==
 +
Результаты, полученные в теории Рамсея, обладают двумя главными характеристиками. Во-первых, они не позволяют получить сами структуры: теоремы лишь доказывают, что они существуют, но алгоритма для их нахождения не предлагают. Единственным способ найти нужную конструкцию зачастую является перебор. Во-вторых, чтобы искомые структуры существовали, обычно требуется, чтобы объекты, их содержащие, состояли из очень большого числа элементов. Зависимость числа элементов объекта от размера конструкции обычно, как минимум, экспоненциальная.
  
'''Шаг перестройки графа.'''
 
 
Итак, пусть мы имеем <tex>n</tex>-дольный граф <tex>G^l</tex>, доли которого <tex>V_i=V_i(G^l)</tex> (где <tex>i\in [1..n]</tex>). Пусть с парой строк (и, соответственно, долей) <tex>i,j</tex> мы еще не выполняли шаг. Очевидно, граф <tex>G_{i,j}=G^l(V_i\cup V_j)</tex> двудолен и для него по [[#l3|лемме 3]] существует двудольный рамсеевский граф <tex>P_{i,j}</tex>. Более того если вершины <tex>P_{i,j}</tex> разбиты на две доли <tex>W_i</tex> и <tex>W_j</tex>, то для любой раскраски рёбер в два цвета существует одноцветное погружение <tex>\phi</tex> графа <tex>G_{i,j}</tex> в <tex>P_{i,j}</tex> в котором <tex>\phi(V_i)\subset W_i</tex> и <tex>\phi(V_j)\subset W_j</tex>. Назовём таксе погружение одноцветным.
 
 
Перейдём к построению <tex>G^{l+1}</tex>. Заменим <tex>V_i</tex> на <tex>W_i</tex> и <tex>V_j</tex> на <tex>W_j</tex>, проведем между этими долями все рёбра графа <tex>P_{i,j}</tex>. Наша цель в том, чтобы для любого погружения <tex>G_{i,j}</tex> в <tex>P_{i,j}</tex> была содержащая его копия <tex>G^l</tex> (причем доли этой копии лежали в соответствующих строках таблицы графа <tex>G^{l+1}</tex>
 
 
Занумеруем всевозможные погружения <tex>G_{i,j}</tex> в <tex>P_{i,j}</tex>: пусть это <tex>G_{i,j}(1),...,G_{i,j}(q)</tex>. Каждому погружению <tex>G_{i,j}(s)</tex> мы поставим в соответствие отдельные копии всех отличных от <tex>V_i</tex> и <tex>V_j</tex> долей: <tex>V_1(s),...,V_n(s)</tex>. Положим <tex>V_i(s)=V(G_{i,j}(s))\cap W_i</tex> и <tex>V_j(s)=V(G_{i,j}(s))\cap W_j</tex>. На этих долях построим копию графа <tex>G^l</tex>. В результате для каждого погружения графа <tex>G_{i,j}</tex> в <tex>P_{i,j}</tex> мы построили свою копию графа <tex>G^l</tex>.
 
 
'''Выделение одноцветного индуцированного подграфа.'''
 
 
Итак, докажем, что <tex>G=G^{C^2_n}</tex> и есть рамсеевский граф для <tex>H</tex>. Пусть <tex>p_1,...,p_{C^2_n}</tex> — именно такая нумерация пар строк в нашей таблице, в порядке которой совершались шаги перестройки графа. Рассмотрим произвольную раскраску рёбер <tex>\rho</tex> графа <tex>G</tex> в два цвета и докажем следующий факт.
 
{{Утверждение
 
|id=u7|about=7
 
|statement=Для каждого <tex>l\in [0..C^2_n]</tex> существует изоморфный <tex>G^l</tex> индуцированный подграф графа <tex>G</tex>, в котором для пар строк <tex>p_{l+1},...,p_{C^2_n}</tex> все рёбра между вершинами соответствующих пар строк в раскраске <tex>\rho</tex> одноцветны.
 
|proof=
 
Индукция с обратным ходом от <tex>l=C^2_n</tex> к <tex>l=0</tex>. База для <tex>l=C^2_n</tex> очевидна. Докажем переход <tex>l\rightarrow l-1</tex>
 
 
Итак рассмотрим наш изоморфный <tex>G^l</tex> подграф, который мы для простоты будем обозначать <tex>G^l</tex> и пару строку <tex>p_l</tex> в нем: пусть это строки <tex>i</tex> и <tex>j</tex>, a <tex>P_{i,j}</tex> и <tex>G_{i,j}</tex> — те двудольные графы между этими строками, что описаны в шаге построения. Так как <tex>P_{i,j}</tex> (подграф графа <tex>G^l</tex>) — рамсеевский граф для <tex>G_{i,j}</tex>, мы можем выбрать одноцветное в раскраске <tex>\rho</tex> погружение <tex>G_{i,j}</tex> в <tex>P_{i,j}</tex> и соответствующая ему по построению копия <tex>G^{l-1}</tex> будет искомым (из построения очевидно, что индуцированным!) подграфом <tex>G^l</tex> а значит, и <tex>G</tex> }}
 
 
Таким образом, существует изоморфный <tex>G^0</tex> индуцированный под­граф графа <tex>G</tex>, в котором для каждой пары строк <tex>i,j</tex> все ребра между вершинами соответствующих строк одноцветны в раскраске <tex>\rho</tex>. Будем обозначать этот граф просто <tex>G^0</tex>. Рассмотрим граф <tex>K_n</tex>, вершины которого соответствуют строкам таблицы и покрасим каждое ребро в цвет, в который покрашены рёбра <tex>G^0</tex> между соответствующими строками. Так как <tex>n=r(k,k)</tex>, существуют <tex>k</tex> вершин, между которыми все рёбра одноцветны. Рассмотрим столбец графа <tex>G^0</tex>, в котором <tex>H</tex> размещён именно в строчках, соответствующих этим <tex>k</tex> вершинам. Подграф <tex>H'</tex> графа <tex>G^0</tex> на вершинах этого столбца и соответствующих строчках изоморфен <tex>H</tex>, по построению является индуцированным подграфом графа <tex>G^0</tex> и все его рёбра одноцветны в раскраске <tex>\rho</tex>. Остаётся лишь заметить, что <tex>H'</tex> — индуцированный подграф графа <tex>G</tex>.
 
}}
 
 
==См. также==
 
==См. также==
 
*[[Раскраска графа]]
 
*[[Раскраска графа]]
 
*[[Раскраска двудольного графа в два цвета]]
 
*[[Раскраска двудольного графа в два цвета]]
 
*[[Теорема Турана об экстремальном графе]]
 
*[[Теорема Турана об экстремальном графе]]
 +
 +
== Примечания==
 +
<references />
  
 
== Источники информации ==
 
== Источники информации ==
 
* [[wikipedia:Ramsey's theorem|Wikipedia — Ramsey's theorem]]
 
* [[wikipedia:Ramsey's theorem|Wikipedia — Ramsey's theorem]]
 
* [[wikipedia:Ramsey theory|Wikipedia — Ramsey theory]]
 
* [[wikipedia:Ramsey theory|Wikipedia — Ramsey theory]]
* [http://scholar.lib.vt.edu/theses/available/etd-05162011-093603/unrestricted/Dickson_JO_T_2011.pdf An Introduction to Ramsey Theory on Graphs]
 
 
* [http://people.maths.ox.ac.uk/~gouldm/ramsey.pdf Ramsey Theory]
 
* [http://people.maths.ox.ac.uk/~gouldm/ramsey.pdf Ramsey Theory]
[[Категория: Алгоритмы и структуры данных]]
+
*[https://vtechworks.lib.vt.edu/bitstream/handle/10919/32873/Dickson_JO_T_2011.pdf?sequence=1&isAllowed=y An Introduction to Ramsey Theory on Graphs]
 +
*[http://www.combinatorics.org/ojs/index.php/eljc/article/view/DS1| Small Ramsey Numbers by  Stanisław Radziszowski]
 +
[[Категория:Дискретная математика и алгоритмы]]
 +
[[Категория:Дискретная математика]]
 +
[[Категория:Теория графов]]
 
[[Категория: Раскраски графов]]
 
[[Категория: Раскраски графов]]

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

Теория Рамсея — раздел математики, изучающий условия, при которых в произвольно формируемых математических объектах обязан появиться некоторый порядок.

Числа Рамсея

Определение:
Клика (англ. clique) в неориентированном графе [math]G(V, E)[/math] — подмножество вершин [math]C \subseteq V[/math], такое что для любых двух различных вершин в [math]C[/math] существует ребро, их соединяющее. Другими словами, клика графа [math]G(V, E)[/math]полный подграф графа [math]G(V, E)[/math].


Определение:
Число Рамсея [math]r(n, m)[/math] (англ. Ramsey's number) — наименьшее из таких чисел [math]x \in \mathbb N[/math], что при любой раскраске ребер полного графа на [math]x[/math] вершинах в два цвета найдется клика на [math]n[/math] вершинах с ребрами цвета [math]1[/math] или клика на [math]m[/math] вершинах с ребрами цвета [math]2[/math].

Существует и другое определение для чисел Рамсея.

Определение:
Число Рамсея [math]r(n, m)[/math] — это наименьшее из всех таких чисел [math]x \in \mathbb N[/math], что для любого графа [math]G[/math] на [math]x[/math] вершинах либо в [math]G[/math] найдется [math]K_n[/math], либо в [math]\overline G[/math] найдется граф [math]K_m[/math].
Раскраска [math]K_5[/math] без одноцветных треугольников

Несложно доказать, что данные определения эквивалентны. Достаточно показать, что раскрашенному в два цвета графу [math]K_n[/math], можно однозначно поставить в соответствие граф [math]G[/math] на [math]n[/math] вершинах. Довольно часто определение для чисел Рамсея дается через задачу "о друзьях и незнакомцах"[1]. Пусть на вечеринке каждые два человека могут быть либо друзьями, либо незнакомцами, в общем виде задачи требуется найти, какое минимальное количество людей нужно взять, чтобы хотя бы [math]n[/math] человек были попарно знакомы, или хотя бы [math]m[/math] человек были попарно незнакомы. Если мы переформулируем данную задачу в терминах графов, то как раз получим определение числа Рамсея [math]r(n, m)[/math], представленное ранее.

Пример

Чтобы получить лучшее представление природы чисел Рамсея, приведем пример. Докажем, что [math]r(3,3) = 6[/math]. Представим, что ребра [math]K_6[/math] раскрашены в два цвета: красный и синий. Возьмем вершину [math]v[/math]. Данной вершине, как и всем другим, инцидентны [math]5[/math] рёбер, тогда, согласно принципу Дирихле, хотя бы три из них одного цвета. Для определенности положим, что хотя бы [math]3[/math] ребра, соединяющие вершину [math]v[/math] с вершинами [math]r[/math], [math]s[/math], [math]t[/math], синие. Если хотя бы одно из ребер [math]rs[/math], [math]rt[/math], [math]st[/math] синее, то в графе есть синий треугольник (полный граф на трёх вершинах), иначе, если они все красные, есть красный треугольник. Таким образом, [math]r(3,3) \leqslant 6 [/math]. Чтобы доказать, что [math]r(3,3) = 6 [/math], предъявим такую раскраску графа [math]K_5[/math], где нет клики на трех вершинах ни синего, ни красного цвета. Такая раскраска представлена на рисунке справа. Понятно, что предъявлять отдельные раскраски для [math] K_4[/math], [math]K_3[/math] не нужно, так как достаточно взять соответствующие подграфы раскрашенного [math]K_5[/math].

Теорема Рамсея. Оценки сверху

Теорема (1, Теорема Рамсея):
Для любых [math]n,m \in \mathbb N[/math] существует число [math]r(n,m)[/math], при этом [math]r(n,m) \leqslant r(n,m-1)+r(n-1,m)[/math], а также если числа [math]r(n,m-1)[/math] и [math]r(n-1,m)[/math] четные, то неравенство принимает вид [math]r(n,m) \leqslant r(n,m-1)+r(n-1,m) - 1[/math] .
Доказательство:
[math]\triangleright[/math]
  1. Докажем с помощью метода математической индукции по [math]n+m[/math].
    База: [math]r(n,\;1) = r(1,\;n) = 1[/math], так как граф, состоящий из одной вершины, можно считать полным графом любого цвета.
    Индукционный переход: Пусть [math]n\gt 1[/math] и [math]m\gt 1[/math]. Рассмотрим полный чёрно-белый граф из [math]r(n-1,\;m)+r(n,\;m-1)[/math] вершин. Возьмём произвольную вершину [math]v[/math] и обозначим через [math]M[/math] и [math]N[/math] множества вершин, инцидентных [math]v[/math] в чёрном и белом подграфе соответственно. Так как в графе [math]r(n-1,\;m)+r(n,\;m-1)=|M|+|N|+1 [/math] вершин, согласно принципу Дирихле, либо [math]|M|\geqslant r(n-1,\;m)[/math], либо [math]|N|\geqslant r(n,\;m-1)[/math]. Пусть [math]|M|\geqslant r(n-1,\;m)[/math]. Тогда либо в [math]M[/math] существует белый [math]K_m[/math], что доказывает теорему, либо в [math]M[/math] есть чёрный [math]K_{n-1}[/math], который вместе с [math]v[/math] образует чёрный [math]K_n[/math], в этом случае теорема также доказана. Случай [math]|N|\geqslant r(n,\;m-1)[/math] рассматривается аналогично.
  2. Предположим, [math]p=r(n-1,\;m)[/math] и [math]q=r(n,\;m-1)[/math] оба чётны. Положим [math]s=p+q-1[/math] и рассмотрим чёрно-белый граф из [math]s[/math] вершин. Если [math]d_i[/math] степень [math]i[/math]-й вершины в чёрном подграфе, то, согласно лемме о рукопожатиях, [math] \sum\limits_{i=1}^s d_i[/math] — чётно. Поскольку [math]s[/math] нечётно, должно существовать чётное [math]d_i[/math]. Не умаляя общности, положим, что [math]d_1[/math] чётно. Обозначим через [math]M[/math] и [math]N[/math] вершины, инцидентные вершине [math]1[/math] в чёрном и белом подграфах соответственно. Тогда [math]|M|=d_1[/math] и [math]|N|=s-1-d_1[/math] оба чётны. Согласно принципу Дирихле, либо [math]|M|\geqslant p-1[/math], либо [math]|N|\geqslant q[/math]. Так как [math]|M|[/math] чётно, а [math]p-1[/math] нечётно, первое неравенство можно усилить, так что либо [math]|M|\geqslant p[/math], либо [math]|N|\geqslant q[/math].
    Далее проводим рассуждения, аналогичные тем, что присутствуют в первом пункте теоремы. Таким образом, [math]r(n,m) \leqslant r(n,m-1)+r(n-1,m) - 1[/math].
[math]\triangleleft[/math]
Утверждение (1):
Для натуральных чисел [math]m,n[/math] выполняется равенство [math]r(n,m) \leqslant C_{n+m-2}^{n-1}[/math]
[math]\triangleright[/math]

Очевидно, [math]C^{n-1}_{n+m-2}=1[/math] при [math]n=1[/math] или [math]m=1[/math], как и соответствующие числа Рамсея. Индукцией по [math]n[/math] и [math]m[/math] при [math]n,m \geqslant 2[/math] получаем

[math]r(n,m) \leqslant r(n,m-1)+r(n-1,m) \leqslant C^{n-1}_{n+m-3}+C^{n-2}_{n+m-3}=C^{n-1}_{n+m-2}[/math]
[math]\triangleleft[/math]

Оценки снизу

Теорема (2, Теорема Эрдеша):
Для любого натурального числа [math]k \geqslant 2[/math] выполняется неравенство [math]r(k,k) \geqslant 2^{k/2}[/math]
Доказательство:
[math]\triangleright[/math]

Так как [math]r(2,2)=2[/math], достаточно рассмотреть случай [math]k \geqslant 3[/math]. Пусть [math]g(n, k)[/math] доля среди помеченных графов на [math]n[/math] вершинах тех, что содержат клику на [math]k[/math] вершинах. Всего графов на наших вершинах, очевидно [math]2^{C^2_n}[/math] (каждое из возможных рёбер [math]C^2_n[/math] можно провести или не провести).

Посчитаем графы с кликой на [math]k[/math] вершинах следующим образом: существует [math]C^k_n[/math] способов выбрать [math]k[/math] вершин для клики в нашем множестве, после чего все рёбра между ними будем считать проведенными, а остальные ребра выбираются произвольно. Таким образом, каждый граф с кликой на [math]k[/math] вершинах будет посчитан, причём некоторые даже более одного раза. Количестве графов с кликой оказывается не более, чем [math]C^k_n\cdot 2^{C^2_n-C^2_k}[/math]. Следовательно,

[math]g(n,k) \leqslant \dfrac{C^k_n\cdot 2^{C^2_n-C^2_k}}{2^{C^2_n}}=\dfrac{n!}{(n-k)!\cdot k! \cdot 2^{C^2_k}}=\dfrac{(n-k+1)\cdot(n-k+2)\cdot\ldots \cdot(n-1)\cdot n}{ k! \cdot 2^{C^2_k}}\lt \dfrac{n^k}{k!\cdot 2^{C^2_k}}[/math] [math](*)[/math]

Подставив [math]n\lt 2^{k/2}[/math] в неравенство [math](*)[/math] мы получаем

[math]g(n,k)\lt \dfrac{2^{k^2/2}\cdot 2^{-C^2_k}}{k!}=\dfrac{2^{k/2}}{k!}\lt \dfrac12[/math] при [math]k \geqslant 3[/math]

Предположим, что [math]r(k,k)=n\lt 2^{k/2}[/math] и разобьём все графы на [math]n[/math] вершинах на пары [math]\langle G, \overline G \rangle[/math]. Так как [math]g(n,k)\lt \dfrac12[/math], то существует пара [math]\langle G, \overline G \rangle[/math], в которой ни [math]G[/math], ни [math]\overline G[/math] не содержат подграфа на [math]k[/math] вершинах. Рассмотрим раскраску рёбер [math]K_n[/math] в два цвета, в которой ребра цвета [math]1[/math] образуют граф [math]G[/math]. В такой раскраске нет клики на [math]k[/math] вершинах ни цвета [math]1[/math], ни цвета [math]2[/math], получили противоречие. Значит [math]n[/math] было выбрано неверно. Из этого следует [math]r(k,k) \geqslant 2^{k/2}[/math].
[math]\triangleleft[/math]

Свойства чисел Рамсея

Следующими свойствами удобно пользоваться при подсчете значений чисел Рамсея [math]r(n,m)[/math] на практике.

  • [math]r(n,m) = r(m,n)[/math]
  • [math]r(1,m) = 1[/math]
  • [math]r(2,m) = m[/math]

Значения чисел Рамсея

Задача нахождения точных значений чисел Рамсея чрезвычайно трудна, их известно довольно мало. Далее приведена таблица Станислава Радзишевского, в которой присутствуют практически все известные числа Рамсея или же промежутки, в которых они находятся.

Числа Рамсея
[math]n,\ m[/math] [math]1 [/math] [math]2 [/math] [math]3 [/math] [math]4 [/math] [math]5 [/math] [math]6 [/math] [math]7 [/math] [math]8 [/math] [math]9 [/math] [math]10[/math]
[math]1 [/math] [math]1 [/math] [math]1 [/math] [math]1 [/math] [math]1 [/math] [math]1 [/math] [math]1 [/math] [math]1 [/math] [math]1 [/math] [math]1 [/math] [math]1 [/math]
[math]2 [/math] [math]1 [/math] [math]2 [/math] [math]3 [/math] [math]4 [/math] [math]5 [/math] [math]6 [/math] [math]7 [/math] [math]8 [/math] [math]9 [/math] [math]10[/math]
[math]3[/math] [math]1[/math] [math]3[/math] [math]6[/math] [math]9[/math] [math]14[/math] [math]18[/math] [math]23[/math] [math]28[/math] [math]36[/math] [math][40, 42][/math]
[math]4[/math] [math]1[/math] [math]4[/math] [math]9[/math] [math]18[/math] [math]25[/math] [math][36, 41][/math] [math][49, 61][/math] [math][59, 84][/math] [math][73, 115][/math] [math][92, 149][/math]
[math]5[/math] [math]1[/math] [math]5[/math] [math]14[/math] [math]25[/math] [math][43, 48][/math] [math][58, 87][/math] [math][80, 143][/math] [math][101, 216][/math] [math][133, 316][/math] [math][149, 442][/math]
[math]6[/math] [math]1[/math] [math]6[/math] [math]18[/math] [math][36, 41][/math] [math][58, 87][/math] [math][102, 165][/math] [math][115, 298][/math] [math][134, 495][/math] [math][183, 780][/math] [math][204, 1171][/math]
[math]7[/math] [math]1[/math] [math]7[/math] [math]23[/math] [math][49, 61][/math] [math][80, 143][/math] [math][115, 298][/math] [math][205, 540][/math] [math][217, 1031][/math] [math][252, 1713][/math] [math][292, 2826][/math]
[math]8[/math] [math]1[/math] [math]8[/math] [math]28[/math] [math][56, 84][/math] [math][101, 216][/math] [math][127, 495][/math] [math][217, 1031][/math] [math][282, 1870][/math] [math][329, 3583][/math] [math][343, 6090][/math]
[math]9[/math] [math]1[/math] [math]9[/math] [math]36[/math] [math][73, 115][/math] [math][133, 316][/math] [math][183, 780][/math] [math][252, 1713][/math] [math][329, 3583][/math] [math][565, 6588][/math] [math][580, 12677][/math]
[math]10[/math] [math]1[/math] [math]10[/math] [math][40, 42][/math] [math][92, 149][/math] [math][149, 442][/math] [math][179, 1171][/math] [math][289, 2826][/math] [math][343, 6090][/math] [math][581, 12677][/math] [math][798, 23556][/math]

Числа Рамсея для раскрасок в несколько цветов

Теперь обобщим числа Рамсея на произвольное количество цветов.

Определение:
Число Рамсея [math]r(n_1,\ldots,n_k)[/math] — это наименьшее из всех таких чисел [math]x \in \mathbb N[/math], что при любой раскраске рёбер полного графа на [math]x[/math] вершинах в [math]k[/math] цветов для некоторого [math]i \in [1 \ldots k][/math] обязательно найдётся клика на [math]n_i[/math] вершинах с рёбрами цвета [math]i[/math]. [math]k,n_1,\ldots,n_k \in \mathbb N[/math]


Теорема (3,Теорема Рамсея для нескольких цветов):
[math]\forall k, n_1, \ldots n_k \in \mathbb N [/math] существует число Рамсея [math]r(n_1,\ldots,n_k)[/math], при этом [math]r(n_1,\ldots,n_k)\leqslant r(n_1,\ldots, n_{k-2}, r(n_{k-1},\;n_k)).[/math]
Доказательство:
[math]\triangleright[/math]
Возьмем граф из [math]r(n_1,\ldots, n_{k-2}, r(n_{k-1}, n_k))[/math] вершин и окрасим его рёбра в [math]k[/math] цветов. Пока что будем считать цвета [math]k-1[/math] и [math]k[/math] одним цветом. Тогда граф будет [math](k-1)[/math]-цветным. Согласно определению числа Рамсея [math]r(n_1,\ldots,n_{k-2},r(n_{k-1},n_k))[/math], такой граф либо содержит [math]K_{n_i}[/math] для некоторого цвета [math]i[/math], такого что [math]1\leqslant i\leqslant k-2[/math], либо [math]K_{r(n_{k-1},n_k)}[/math], окрашенный общим цветом [math]k-1[/math] и [math]k[/math]. В первом случае доказательство завершено. Во втором случае вернём прежние цвета и заметим, что, по определению числа Рамсея, полный [math]r(n_{k-1},n_k)[/math] — вершинный граф содержит либо [math]K_{n_{k-1}}[/math] цвета [math]k-1[/math], либо [math]K_{n_k}[/math] цвета [math]k[/math]. Таким образом любое число Рамсея для раскраски в [math]k[/math] цветов ограничено некоторым числом Рамсея для меньшего количества цветов, следовательно, [math]r(n_1,\ldots,n_k)[/math] существует для любых [math] k, n_1, \ldots n_k, \in \mathbb N [/math], и теорема доказана.
[math]\triangleleft[/math]

Числа Рамсея больших размерностей

Определение:
Пусть [math]m,k,n_1,\ldots ,n_k \in \mathbb N[/math], причём [math]n_1,\ldots ,n_k \geqslant m[/math]. Число Рамсея [math]r_m(n_1,\ldots ,n_k)[/math] — наименьшее из всех таких чисел [math]x \in \mathbb N[/math], что при любой раскраске [math]m[/math]-элементных подмножеств [math]x[/math]-элементного множества [math]M[/math] в [math]k[/math] цветов для некоторого [math]i \in [1\ldots k][/math] обязательно найдётся такое множество [math]W_i[/math], что [math]|W_i|=n_i[/math] и все [math]m[/math]-элементные подмножества множества [math]W_i[/math] имеют цвет [math]i[/math]. Число [math]m[/math] называют размерностью числа Рамсея [math]r_m(n_1,\ldots ,n_k)[/math].

Заметим, что числа Рамсея размерности [math]2[/math] — это определённые ранее числа Рамсея для клик.

Теорема (4, Теорема Рамсея для чисел больших размерностей):
Пусть [math]m,k,n_1,\ldots,n_k[/math] — натуральные числа, причем [math]k \geqslant 2[/math], а [math]n_1,\ldots ,n_k \geqslant m[/math]. Тогда существует число Рамсея [math]r_m(n_1,\ldots n_k)[/math].
Доказательство:
[math]\triangleright[/math]
  1. Мы будем доказывать теорему по индукции. Начнем со случая [math]k=2[/math]. Приступая к доказательству для числа [math]r_m(n_1,n_2)[/math] мы будем считать доказанным утверждение теоремы для чисел Рамсея всех меньших размерностей и чисел Рамсея размерности [math]m[/math] с меньшей суммой [math]n_1+n_2[/math]. В качестве базы будем использовать случай чисел Рамсея размерности [math]2[/math] разобранный выше. Итак, мы докажем, что [math]r_m(n_1,n_2)-1 \leqslant p=r_{m-1}(r_m(n_1-1,n_2),r_m(n_1,n_2-1))[/math].
    Для каждого множества [math]M[/math] через [math]M^k[/math] обозначим множество всех [math]k[/math]-элементных подмножеств [math]M[/math].
    Рассмотрим [math](p+1)[/math]-элементное множество [math]M[/math] и выделим в нём элемент [math]a[/math]. Пусть [math]M_0=M \setminus \{ a \}[/math]. Пусть [math]\rho:M^m\rightarrow \{1, 2 \} [/math] — произвольная раскраска в два цвета. Рассмотрим раскраску [math]\rho': M_0^{m-1} \rightarrow \{1, 2\} [/math] , определённую следующим образом: для каждого множества [math]B \in M_0^{m-1}[/math] пусть [math]\rho'(B) = \rho(B \cup \{ a \})[/math].
    Так как [math]|M_0|=p[/math], либо существует [math]r_m(n_1 — 1,n_2)[/math]-элементное подмножество [math]M_1 \subset M_0[/math], [math]\rho'(B)=1[/math] на всех [math]B \in M_1^{m-1}[/math], либо существует [math]r_m(n_1,n_2-1)[/math]-элементное подмножество [math]M_2 \subset M_0[/math], [math]\rho'(B)=2[/math] на всех [math]B \in M_2^{m-1}[/math]. Случаи аналогичны, рассмотрим первый случай и множество [math]M_1[/math].
    По индукционному предположен из [math]|M_1|=r_m(n_1-1,n_2)[/math] следует, что либо существует [math]n_1-1[/math]-элементное подмножество [math]N_1 \subset M_1[/math], [math]\rho(A)=1[/math] на всех [math]A \in N^m_1[/math], либо существует [math]n_2[/math]-элементное подмножество [math]N_2 \subset M_1[/math], [math]\rho(A)=2[/math] на всех [math]A \in N_2^m[/math]. Во втором случае искомое подмножество найдено (это [math]N_2[/math]), рассмотрим первый случай и множество [math]N=N_1 \cup \{a\}[/math]. Пусть [math]A \in N^m[/math]. Если [math]A \not\ni a[/math], то [math]A \in N_1^m[/math] и следовательно [math]\rho(A)=1[/math]. Если же [math]A \ni a[/math], то множество [math]A \setminus \{a\} \in N_1^{m-1} \subset M_1^{m-1}[/math] и поэтому [math]\rho(A)=\rho'(A \setminus \{a \})=1[/math]. Учитывая, что [math]|N|=n_1[/math], мы нашли искомое подмножество и в этом случае.
  2. При [math]k\gt 2[/math] будем вести индукцию по [math]k[/math] с доказанной выше базой [math]k=2[/math]. При [math]k\gt 2[/math] мы докажем неравенство [math]r_m(n_1,\ldots ,n_k) \leqslant q=r_m(r_m(n_1,\ldots ,n_{k-1}),n_k)[/math].
    Для этого мы рассмотрим множество [math]M[/math] на [math]q[/math] вершинах и произвольную раскраску [math]\rho:M^m \rightarrow [1 \ldots k][/math] в [math]k[/math]цветов. Рассмотрим раскраску [math]\rho':M^m \rightarrow \{0,k\}[/math], в которой цвета [math]1,\ldots,k-1[/math] раскраски [math]\rho[/math] склеены в цвет [math]0[/math]. Тогда существует либо такое подмножество [math]M_0 \subset M[/math], что [math]|M_0|=r_m(n_1,\ldots ,n_{k-1})[/math] и [math]\rho'(A)=0[/math] на всех [math]A \in M_0^m[/math], либо существует такое [math]n_k[/math]-элементное подмножество [math]M_k \subset M[/math], что [math]\rho(A)=\rho'(A)=k[/math] на всех [math]A \in M^m_k[/math]. Во втором случае [math]M_k[/math] — искомое подмножество, а в первом случае заметим, что на любом подмножестве [math]A \in M_0^m[/math] из [math]\rho'(A)=0[/math] следует [math]\rho(A) \in [1 \ldots k-1][/math]. Исходя из размера множества [math]M_0[/math] по индукционному предположению получаем, что найдется искомое подмножество множества [math]M[/math] для одного из цветов [math]1,\ldots ,k-1[/math], таким образом неравенство доказано, а из этого следует и существование числа Рамсея [math]r_m(n_1,\ldots ,n_k)[/math].
[math]\triangleleft[/math]

Числа Рамсея для произвольных графов

Еще один способ обобщения классической теории Рамсея — замена клик на произвольные графы-шаблоны.

Определение:
Пусть [math]H_1,H_2[/math] — графы. Число Рамсея [math]r(H_1,H_2)[/math] — это наименьшее из всех таких чисел [math]x \in \mathbb N[/math], что при любой раскраске рёбер полного графа на [math]x[/math] вершинах в два цвета обязательно найдется подграф, изоморфный [math]H_1[/math] с рёбрами цвета [math]1[/math] или подграф изоморфный [math]H_2[/math] с рёбрами цвета [math]2[/math].

Существует и другое определение чисел Рамсея для произвольных графов.

Определение:
Пусть [math]H_1,H_2[/math] — графы. Число Рамсея [math]r(H_1,H_2)[/math] — это наименьшее из всех таких чисел [math]x \in \mathbb N[/math], что для любого графа [math]G[/math] на [math]x[/math] вершинах либо в [math]G[/math] найдется подграф изоморфный [math]H_1[/math], либо в [math]\overline G[/math] найдется подграф изоморфный [math]H_2[/math].

Несложно показать, что эти определения эквивалентны (аналогично определениям для классических чисел Рамсея). Из результатов классической теории Рамсея становится понятно, что числа [math]r(H_1,H_2)[/math] существуют.

Лемма (1):
Пусть [math]m\gt 1[/math], а граф [math]H[/math] таков, что [math]v(H) \geqslant (m-1)(n-1)+1[/math] и [math]\alpha(H) \leqslant m-1[/math], где [math]v(H)[/math] — количество вершин в графе [math]H[/math]. Тогда граф [math]H[/math] содержит в качестве подграфа любое дерево на [math]n[/math] вершинах.
Доказательство:
[math]\triangleright[/math]

Зафиксируем [math]m[/math] и проведем индукцию по [math]n[/math].

База: для [math]n=1[/math] очевидно.

Индукционный переход: Пусть верно для [math]n-1[/math], докажем для [math]n[/math]. Рассмотрим произвольное дерево [math]T_n[/math] на [math]n[/math] вершинах, пусть дерево [math]T_{n-1}[/math] получено из [math]T_n[/math] удалением висячей вершины. Пусть [math]U[/math] — максимальное независимое множество вершин графа [math]H[/math]. Тогда [math]|U|=\alpha(H) \leqslant m-1[/math], следовательно [math]v(H-U) \geqslant (m-1)(n-2)+1[/math] и очевидно [math]\alpha(H-U) \leqslant m-1[/math].

По индукционному предположению, граф [math]H-U[/math] содержит в качестве подграфа дерево [math]T_{n-1}[/math]. Пусть [math]a[/math] — вершина этого дерева, присоединив к которой висячую вершину, мы получим дерево [math]T_n[/math]. Заметим, что множество [math]U \cup[/math] [math]\{a\}[/math] не является независимым ввиду максимальности [math]U[/math]. Следовательно, вершина [math]a[/math] смежна хотя бы с одной вершиной [math]x \in U[/math]. Отметим, что [math]x[/math] не принадлежит множеству вершин графа [math]T_{n-1}[/math] и, присоединив вершину [math]x[/math] к вершине [math]a[/math] дерева [math]T_{n-1}[/math], получим дерево [math]T_n[/math] в качестве подграфа графа [math]H[/math].
[math]\triangleleft[/math]
Теорема (5, Теорема Хватала):
[math]r(T_n,K_m)=(m-1)(n-1)+1[/math], где [math]T_n[/math] — дерево на [math]n[/math] вершинах.
Доказательство:
[math]\triangleright[/math]

Сперва докажем, что [math]r(T_n,K_m) \geqslant (m-1)(n-1)+1[/math]. Для этого предъявим раскраску рёбер графа [math]K_{(m-1)(n-1)}[/math], в которой нет ни одного связного подграфа на [math]n[/math] вершинах с рёбрами цвета [math]1[/math] и нет клики на [math]m[/math] вершинах с рёбрами цвета [math]2[/math]. Разобьём вершины графа на [math]m-1[/math] клику по [math]n-1[/math] вершине и покрасим все рёбра этих клик в цвет [math]1[/math]. Тогда любой связный подграф с рёбрами цвета [math]1[/math] содержит не более [math]n-1[/math] вершины, в частности, нет подграфа с рёбрами цвета [math]1[/math], изоморфного [math]T_n[/math]. Рёбра цвета [math]2[/math] (то есть, все оставшиеся рёбра) образуют [math](m-1)[/math]-дольный граф, в котором, очевидно, нет клики на [math]m[/math] вершинах.

Теперь воспользуемся вторым определением числа Рамсея [math]r(H_1, H_2)[/math]. Рассмотрим произвольный граф [math]G[/math] на [math]{(m-1)(n-1)+1}[/math] вершинах. Предположим, что в графе [math]G[/math] не существует клики на [math]m[/math] вершинах. Тогда [math]m\gt 1[/math] и [math]\alpha( \overline G) \leqslant m-1[/math]. По лемме [math]1[/math], граф [math] \overline G[/math] содержит в качестве подграфа любое дерево на [math]n[/math] вершинах, в частности, дерево, изоморфное [math]T_n[/math].
[math]\triangleleft[/math]

Индуцированная теорема Рамсея

Определение:
Граф [math]H[/math] называется индуцированным подграфом (англ. induced subgraph) графа [math]G[/math] если две вершины в [math]H[/math] соединены ребром тогда и только тогда, когда они смежны в [math]G[/math].


Определение:
Пусть [math]H[/math] — граф. Граф [math]G[/math] будем называть рамсеевским графом (англ. Ramsey’s graph) для [math]H[/math], если при любой раскраске рёбер графа [math]G[/math] в два цвета существует одноцветный по рёбрам индуцированный подграф графа [math]G[/math] изоморфный [math]H[/math].


Определение:
Индуцированным числом Рамсея (англ. induced Ramsey’s number) [math]r_{ind}(H)[/math] для графа [math]H[/math] будем называть минимальное число [math]x \in \mathbb N[/math], такое что существует рамсеевский граф на [math]x[/math] вершинах для графа [math]H[/math].

Заметим, что при замене произвольного графа [math]H[/math] на клику мы получаем частный случай классической теоремы Рамсея.


Теорема (6, Индуцированная теорема Рамсея):
Для любого графа [math]H[/math] существует рамсеевский граф [math]G[/math].

Доказательство [2] данной теоремы было приведено независимо различными математиками, однако благодаря ему получилось предоставить только очень грубые оценки значений индуцированных чисел Рамсея. В данный момент проблема нахождения сколько-нибудь точных границ индуцированных чисел Рамсея является нерешенной задачей математики.

Особенности теории

Результаты, полученные в теории Рамсея, обладают двумя главными характеристиками. Во-первых, они не позволяют получить сами структуры: теоремы лишь доказывают, что они существуют, но алгоритма для их нахождения не предлагают. Единственным способ найти нужную конструкцию зачастую является перебор. Во-вторых, чтобы искомые структуры существовали, обычно требуется, чтобы объекты, их содержащие, состояли из очень большого числа элементов. Зависимость числа элементов объекта от размера конструкции обычно, как минимум, экспоненциальная.

См. также

Примечания

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