Изменения

Перейти к: навигация, поиск
м
Теорема о существовании простого пути в случае существования пути
==Теорема о существовании простого пути в случае существования пути==
[[Файл:Simple way.png|thumb|250px|center|Ориентированный граф. <font color=#ED1C24>Красным</font> выделен вершинно-простой путь. <font color=#3771c8ff>Синим</font> {{---}} реберно-простой путь.]]
{{Теорема
|statement=
Если между двумя [[Основные определения теории графов|вершинами графа]] существует [[Основные определения теории графов|путь]], то между ними существует [[Основные определения теории графов|вершинно-простой путь]].|proof=Для доказательства этой теоремы введём два определения=== Конструктивное доказательство ===Рассмотрим путь: <tex>v_0e_1v_1e_2v_2 \ldots e_nv_n</tex> между вершинами <tex>v_0</tex> и <tex>v_n</tex>, причём <tex>v_0 \neq v_n</tex>. Возьмем <tex>v_i</tex> {{---}} вершина на данном пути. Если она лежит на данном пути более одного раза, то она принадлежит какому-то (не обязательно простому) циклу <tex>v_ie_{i+1}v_{i+1}e_{i+2} \ldots v_{j=i}</tex>. Удалим этот цикл. Получившаяся последовательность вершин и рёбер графа останется путём <tex>v_0 \ldots v_n</tex>, но не будет содержать найденный цикл. Начнём процесс с вершины <tex>v_0</tex> и будем повторять его каждый раз для следующей вершины нового пути, пока не дойдём до последней. По построению, получившийся путь будет содержать каждую из вершин графа не более одного раза, а значит, будет вершинно-простым.
{{Определение|definition=== Неконструктивное доказательство ==='''Простой (вершинно-простой) путь''' Выберем из всех путей между двумя данными вершинами графа – [[Основные определения теории графов|путь]] между ними, в котором каждая из вершин графа встречается не более одного разанаименьшей длины.}}
{{ОпределениеУтверждение|definitionstatement =Допустим, что выбранный путь не является простым}}'''Длина Тогда в нём содержатся две одинаковые вершины <tex>v_i = v_j</tex>, <tex>i < j</tex>. Удалим из исходного пути''' – количество [[Основные определения теории графов|рёбер]]отрезок от <tex>e_{i+1}</tex> до <tex>v_j</tex>, входящих в включительно. Конечная последовательностьтакже будет путём от <tex>v_0</tex> до <tex>v_n</tex> и станет короче исходной. Получено противоречие с условием: взятый нами путь оказался не кратчайшим. Значит, предположение неверно, задающую этот выбранный путь{{---}} простой.
}}
{{Утверждение|statement === Доказательство построением === Возьмём любой из существующих путей между нужными нам вершинами: Данная теорема не верна для случая <mathtex>V_0E_1V_1E_2V_2 ... E_nV_nv_0 = v_n</mathtex>. * Алгоритм: 1. Для вершины <math>V_i</math> найдём момент её последнего вхождения в путь – <math>V_j</math>. 2. Удалим отрезок пути от <math>E_{i+1}</math> до <math>V_j</math>, включительно. Получившаяся последовательность вершин и рёбер графа останется путём от <math>V_0</math> до <math>V_n</math>, и в нём вершина <math>V_i</math> будет содержаться ровно один раз.Начнём процесс с вершины <math>V_0</math> и будем повторять его каждый раз для следующей вершины нового пути, пока |proof = В данном случае мы не дойдём до последней. По построению, получившийся сможем найти вершинно-простой путь будет содержать каждую из вершин графа не более одного раза, а значит, будет простым. === Альтернативное ===Выберем из всех путей между данными вершинами так как путь наименьшей длины. Предположение: Пусть он не простой.Тогда начинается и заканчивается в нём содержатся две одинаковые вершины <math>V_i = V_j</math>, <math>i < j</math>. Удалим из исходного пути отрезок от <math>E_{i+1}</math> до <math>V_j</math>, включительно. Конечная последовательность также будет путём от <math>V_0</math> до <math>V_n</math> одной и станет короче исходной. Получено противоречие с условием: взятый нами путь оказался не кратчайшим. Значит, предположение неверно, выбранный путь – простойтой же вершине.
}}
== Замечания ==
* Так как вершинно-простой путь всегда является рёберно-простым, данная теорема справедлива и для рёберно-простого пути.
* Теорема может быть сформулирована как для [[Основные определения теории графов|ориентированного]], так и для неориентированного графа. == См. также ==* [[Основные определения теории графов|неориентированного]] графа.* [[Теорема о существовании простого цикла в случае существования цикла]] [[Категория: Алгоритмы и структуры данных]][[Категория: Основные определения теории графов]]

Навигация