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

Материал из Викиконспекты
Перейти к: навигация, поиск
(Теорема Редеи-Камиона)
Строка 6: Строка 6:
 
Докажем,что в любом турнире есть гамильтонов путь по индукции по числу вершин n.
 
Докажем,что в любом турнире есть гамильтонов путь по индукции по числу вершин n.
 
# База  индукции: n = 3 <br> Очевидно, для n = 3 утверждение верно.
 
# База  индукции: n = 3 <br> Очевидно, для n = 3 утверждение верно.
# Индукционный переход <br> Предположим, что теорема верна для всех турниров с n вершинами. Рассмотрим турнир T с n + 1 вершинами. Пусть <math>v_0</math> – произвольная вершина турнира T.  Тогда турнир T – <math>v_0</math> имеет n вершин, значит, в нем есть гамильтонов путь P: <math>v_1v_2...v_n</math> . Одно из ребер ( <math>v_0</math>, <math>v_1</math> ) или ( <math>v_1</math>, <math>v_0</math> ) обязательно содержится в T. Рассмотрим 3 случая:  
+
# Индукционный переход <br> Предположим, что теорема верна для всех турниров с n вершинами. Рассмотрим турнир T с n + 1 вершинами. Пусть <tex>v_0</tex> – произвольная вершина турнира T.  Тогда турнир T – <tex>v_0</tex> имеет n вершин, значит, в нем есть гамильтонов путь P: <tex>v_1v_2...v_n</tex> . Одно из ребер ( <tex>v_0</tex>, <tex>v_1</tex> ) или ( <tex>v_1</tex>, <tex>v_0</tex> ) обязательно содержится в T. Рассмотрим 3 случая:  
## Ребро <math> ( v_0, v_1  ) \in T </math>. Тогда путь <math>v_0v_1v_2...v_n</math> является гамильтоновым.  
+
## Ребро <tex> ( v_0, v_1  ) \in T </tex>. Тогда путь <tex>v_0v_1v_2...v_n</tex> является гамильтоновым.  
## Обозначим через <math>v_i</math> первую вершину пути P,  для которой ребро <math> ( v_0, v_i  ) \in T </math>,если такая вершина есть. Тогда в T существует ребро ( <math>v</math><sub><math>i-1</math></sub>, <math>v_0</math> ) <br> и путь <math>v_1...v</math><sub><math>i-1</math></sub><math>v_0v_i...v_n</math>– гамильтонов.  
+
## Обозначим через <tex>v_i</tex> первую вершину пути P,  для которой ребро <tex> ( v_0, v_i  ) \in T </tex>,если такая вершина есть. Тогда в T существует ребро ( <tex>v_{i-1}</tex>, <tex>v_0</tex> ) <br> и путь <tex>v_1...v_{i-1}v_0v_i...v_n</tex>– гамильтонов.  
## Если такой вершины <math>v_i</math> нет, тогда гамильтоновым путем будет <math>v_1v_2...v_nv_0</math>.
+
## Если такой вершины <tex>v_i</tex> нет, тогда гамильтоновым путем будет <tex>v_1v_2...v_nv_0</tex>.
 
Итак, в любом случае в турнире существует гамильтонов путь.
 
Итак, в любом случае в турнире существует гамильтонов путь.
 
}}
 
}}
Строка 19: Строка 19:
  
 
Докажем, что в любом сильно связанном турнире есть гамильтонов цикл, по индукции по длине цикла.
 
Докажем, что в любом сильно связанном турнире есть гамильтонов цикл, по индукции по длине цикла.
# База индукции: <br> Покажем, что в любом сильно связанном турнире T с n вершинами (n >= 3) есть орцикл длины 3. Выберем произвольную вершину <math>v_0</math> и обозначим через <math>W</math> множество всех вершин <math>w</math>, таких, что ребро <math> ( v_0, w  ) \in T </math>, а через <math>Z</math> – множество всех вершин <math>z</math>, таких, что ребро <math> ( z, v_0  ) \in T </math>. Так как T сильно связан, то оба множества <math>W</math> и <math>Z</math> не пусты и найдется ребро  <math> ( w', z' ) \in T </math> , где <math>w' \in W , z' \in Z</math>.  Тогда искомым циклом длины 3 будет <math>v_0</math>,<math>w'</math>,<math>z'</math>,<math>v_0</math>.
+
# База индукции: <br> Покажем, что в любом сильно связанном турнире T с n вершинами (n >= 3) есть орцикл длины 3. Выберем произвольную вершину <tex>v_0</tex> и обозначим через <tex>W</tex> множество всех вершин <tex>w</tex>, таких, что ребро <tex> ( v_0, w  ) \in T </tex>, а через <tex>Z</tex> – множество всех вершин <tex>z</tex>, таких, что ребро <tex> ( z, v_0  ) \in T </tex>. Так как T сильно связан, то оба множества <tex>W</tex> и <tex>Z</tex> не пусты и найдется ребро  <tex> ( w', z' ) \in T </tex> , где <tex>w' \in W , z' \in Z</tex>.  Тогда искомым циклом длины 3 будет <tex>v_0</tex>,<tex>w'</tex>,<tex>z'</tex>,<tex>v_0</tex>.
# Индукционный переход <br> Покажем, что если турнир T с n вершинами имеет орцикл S = <math>v_1v_2...v_kv_1</math> длины k < n, то он имеет также орцикл длины k + 1.  Рассмотрим 2 случая:
+
# Индукционный переход <br> Покажем, что если турнир T с n вершинами имеет орцикл S = <tex>v_1v_2...v_kv_1</tex> длины k < n, то он имеет также орцикл длины k + 1.  Рассмотрим 2 случая:
## Существует такая вершина <math>v_0 \notin S </math> и такая, что найдутся вершины <math>u , w \in S</math> , такие, что ребра <math> ( v_0 , u ) , ( w , v_0) \in T </math>. Обозначим за <math>v_1</math> вершину из S, такую, что ребро  <math> ( v_1, v_0  ) \in T </math>. Пусть <math>v_i</math> – первая вершина при обходе контура S из <math>v_1</math>, для которой ребро <br>  <math> ( v_0, v_i  ) \in T </math>. Тогда ребро ( <math>v</math><sub><math>i-1</math></sub>, <math>v_0</math> ) также содержится в T. Поэтому <math>v_1v_2...v</math><sub><math>i-1</math></sub><math>v_0v_i...v_kv_1</math> – искомый орцикл длины k+1.
+
## Существует такая вершина <tex>v_0 \notin S </tex> и такая, что найдутся вершины <tex>u , w \in S</tex> , такие, что ребра <tex> ( v_0 , u ) , ( w , v_0) \in T </tex>. Обозначим за <tex>v_1</tex> вершину из S, такую, что ребро  <tex> ( v_1, v_0  ) \in T </tex>. Пусть <tex>v_i</tex> – первая вершина при обходе контура S из <tex>v_1</tex>, для которой ребро <br>  <tex> ( v_0, v_i  ) \in T </tex>. Тогда ребро ( <tex>v_{i-1}</tex>, <tex>v_0</tex> ) также содержится в T. Поэтому <tex>v_1v_2...v</tex><sub><tex>i-1</tex></sub><tex>v_0v_i...v_kv_1</tex> – искомый орцикл длины k+1.
## Пусть такой вершины <math>v_0</math> нет. Тогда разобьем вершины, не принадлежащие S, на два непересекающихся подмножества <math>W</math> и <math>Z</math>, где <math>W</math> - множество таких вершин <math>w</math> , что ребро ( <math>v_i</math>, <math>w</math> ) для любого <math>i</math> содержится в T, а <math>Z</math> – множество таких вершин <math>z</math>, что ребро ( <math>z</math>, <math>v_i</math> ) для любого <math>i</math> содержится в T. Так как T сильно связан, то оба множества <math>W</math> и <math>Z</math> не пусты и найдется ребро  <math> ( w', z' ) \in T </math> , где <math>w' \in W , z' \in Z</math>. Тогда <math>v_1 w' z' v_3...v_k v_1</math> – требуемый орцикл.
+
## Пусть такой вершины <tex>v_0</tex> нет. Тогда разобьем вершины, не принадлежащие S, на два непересекающихся подмножества <tex>W</tex> и <tex>Z</tex>, где <tex>W</tex> - множество таких вершин <tex>w</tex> , что ребро ( <tex>v_i</tex>, <tex>w</tex> ) для любого <tex>i</tex> содержится в T, а <tex>Z</tex> – множество таких вершин <tex>z</tex>, что ребро ( <tex>z</tex>, <tex>v_i</tex> ) для любого <tex>i</tex> содержится в T. Так как T сильно связан, то оба множества <tex>W</tex> и <tex>Z</tex> не пусты и найдется ребро  <tex> ( w', z' ) \in T </tex> , где <tex>w' \in W , z' \in Z</tex>. Тогда <tex>v_1 w' z' v_3...v_k v_1</tex> – требуемый орцикл.
 
Таким образом в любом сильно связанном турнире T с n вершинами будет орцикл длины n, то есть гамильтонов цикл.
 
Таким образом в любом сильно связанном турнире T с n вершинами будет орцикл длины n, то есть гамильтонов цикл.
 
}}
 
}}

Версия 23:05, 13 октября 2010

Теорема (Теорема Редеи-Камиона для пути):
В любом турнире есть гамильтонов путь.
Доказательство:
[math]\triangleright[/math]

Докажем,что в любом турнире есть гамильтонов путь по индукции по числу вершин n.

  1. База индукции: n = 3
    Очевидно, для n = 3 утверждение верно.
  2. Индукционный переход
    Предположим, что теорема верна для всех турниров с n вершинами. Рассмотрим турнир T с n + 1 вершинами. Пусть [math]v_0[/math] – произвольная вершина турнира T. Тогда турнир T – [math]v_0[/math] имеет n вершин, значит, в нем есть гамильтонов путь P: [math]v_1v_2...v_n[/math] . Одно из ребер ( [math]v_0[/math], [math]v_1[/math] ) или ( [math]v_1[/math], [math]v_0[/math] ) обязательно содержится в T. Рассмотрим 3 случая:
    1. Ребро [math] ( v_0, v_1 ) \in T [/math]. Тогда путь [math]v_0v_1v_2...v_n[/math] является гамильтоновым.
    2. Обозначим через [math]v_i[/math] первую вершину пути P, для которой ребро [math] ( v_0, v_i ) \in T [/math],если такая вершина есть. Тогда в T существует ребро ( [math]v_{i-1}[/math], [math]v_0[/math] )
      и путь [math]v_1...v_{i-1}v_0v_i...v_n[/math]– гамильтонов.
    3. Если такой вершины [math]v_i[/math] нет, тогда гамильтоновым путем будет [math]v_1v_2...v_nv_0[/math].
Итак, в любом случае в турнире существует гамильтонов путь.
[math]\triangleleft[/math]
Теорема (Теорема Редеи-Камиона для цикла):
В любом сильно связанном турнире есть гамильтонов цикл.
Доказательство:
[math]\triangleright[/math]

Докажем, что в любом сильно связанном турнире есть гамильтонов цикл, по индукции по длине цикла.

  1. База индукции:
    Покажем, что в любом сильно связанном турнире T с n вершинами (n >= 3) есть орцикл длины 3. Выберем произвольную вершину [math]v_0[/math] и обозначим через [math]W[/math] множество всех вершин [math]w[/math], таких, что ребро [math] ( v_0, w ) \in T [/math], а через [math]Z[/math] – множество всех вершин [math]z[/math], таких, что ребро [math] ( z, v_0 ) \in T [/math]. Так как T сильно связан, то оба множества [math]W[/math] и [math]Z[/math] не пусты и найдется ребро [math] ( w', z' ) \in T [/math] , где [math]w' \in W , z' \in Z[/math]. Тогда искомым циклом длины 3 будет [math]v_0[/math],[math]w'[/math],[math]z'[/math],[math]v_0[/math].
  2. Индукционный переход
    Покажем, что если турнир T с n вершинами имеет орцикл S = [math]v_1v_2...v_kv_1[/math] длины k < n, то он имеет также орцикл длины k + 1. Рассмотрим 2 случая:
    1. Существует такая вершина [math]v_0 \notin S [/math] и такая, что найдутся вершины [math]u , w \in S[/math] , такие, что ребра [math] ( v_0 , u ) , ( w , v_0) \in T [/math]. Обозначим за [math]v_1[/math] вершину из S, такую, что ребро [math] ( v_1, v_0 ) \in T [/math]. Пусть [math]v_i[/math] – первая вершина при обходе контура S из [math]v_1[/math], для которой ребро
      [math] ( v_0, v_i ) \in T [/math]. Тогда ребро ( [math]v_{i-1}[/math], [math]v_0[/math] ) также содержится в T. Поэтому [math]v_1v_2...v[/math][math]i-1[/math][math]v_0v_i...v_kv_1[/math] – искомый орцикл длины k+1.
    2. Пусть такой вершины [math]v_0[/math] нет. Тогда разобьем вершины, не принадлежащие S, на два непересекающихся подмножества [math]W[/math] и [math]Z[/math], где [math]W[/math] - множество таких вершин [math]w[/math] , что ребро ( [math]v_i[/math], [math]w[/math] ) для любого [math]i[/math] содержится в T, а [math]Z[/math] – множество таких вершин [math]z[/math], что ребро ( [math]z[/math], [math]v_i[/math] ) для любого [math]i[/math] содержится в T. Так как T сильно связан, то оба множества [math]W[/math] и [math]Z[/math] не пусты и найдется ребро [math] ( w', z' ) \in T [/math] , где [math]w' \in W , z' \in Z[/math]. Тогда [math]v_1 w' z' v_3...v_k v_1[/math] – требуемый орцикл.
Таким образом в любом сильно связанном турнире T с n вершинами будет орцикл длины n, то есть гамильтонов цикл.
[math]\triangleleft[/math]

Следствие
Турнир является сильно связанным тогда и только тогда, когда он имеет гамильтонов цикл.

Литература

  • Харари, Ф. Теория графов. — М.: Книжный дом «ЛИБРОКОМ», 2009