Теорема о существовании простого цикла в случае существования цикла — различия между версиями
VVolochay (обсуждение | вклад) |
VVolochay (обсуждение | вклад) |
||
Строка 29: | Строка 29: | ||
}} | }} | ||
− | [[Файл: Easy_cycle.png|thumb|600px|center|Для вершины 2 находим последнее ее вхождение в цикл и удаляем отрезок цикла, выделенный <font color=#22B14C>зеленым.</font><br>[ | + | [[Файл: Easy_cycle.png|thumb|600px|center|Для вершины 2 находим последнее ее вхождение в цикл и удаляем отрезок цикла, выделенный <font color=#22B14C>зеленым.</font><br>[5 - 6 - 4 - 2]]] |
== Замечания == | == Замечания == |
Версия 03:45, 7 марта 2012
Лемма: |
Наличие двух различных рёберно-простых путей между какими-либо двумя вершинами графа равносильно наличию цикла в этом графе. |
Доказательство: |
" "Предположим, что в графе существует два различных реберно-простых пути между вершинами и . Пусть это будут пути и . Пусть их наибольший общий префикс заканчивается в вершине . Заметим, что , т. к. пути различны. Рассмотрим суффиксы путей и : и соответственно. Найдем первую совпадающую вершину в и , не равную . Осталось заметить, что замкнутый путь , полученный объединением части пути вместе с частью цепи является циклическим путем. Действительно, т. r. в путях и двух ребер подряд не бывает, т.к. это реберно простые пути, а ребра, смежные с и не совпадают по построению. Циклический путь является представителем некоторого цикла в графе ." Предположим, что в графе " существует цикл и пусть циклический путь — его представитель. Найдем первую точку пересечения с самим собой. Необходимо такая точка существует, т.к. путь замкнутый. Рассмотрим циклический путь : он простой, т. к. если это неверно и существует вершина , то в вершина повторяется раньше, чем . Теперь элементарно взяв две вершины и легко заметить, что существует два различных реберно-неперсекающихся пути между ними: и . |
Теорема: |
Если в неориентированном графе существует цикл, то в этом графе существует простой цикл. |
Доказательство: |
Воспользуемся доказанной выше леммой. Так как в нашем графе существует цикл, то существуют два реберно-простых пути между некоторыми вершинами: , , , . Удалим из путей одинаковые префиксы и суффиксы, оставив из тех только последние и первые вершины, соответственно. Оставшиеся пути: , , , , , .Рассмотрим конкатенацию первого нового пути и развёрнутого второго нового пути. Она будет циклом, так как начальная и конечная вершины совпадают, изначально пути были рёберно-простыми, а в точке соединения, равно как и в точке замыкания цикла, условие различности двух идущих подряд рёбер выполняется. Мы получили цикл, определим его: , . Дальше будем избавляться от повторных вхождений вершин в наш цикл, действуя по следующему алгоритму:
1. Для вершиныНачнём процесс с вершины найдём момент её последнего вхождения в цикл - . 2. Удалим отрезок цикла от до , включительно. Получившаяся последовательность вершин и рёбер графа останется циклом, и в нём вершина будет содержаться ровно один раз. и будем повторять его каждый раз для следующей вершины нового цикла, пока не дойдём до последней. По построению, получившийся цикл будет содержать каждую из вершин графа не более одного раза, а значит, будет простым. |
Замечания
- Так как вершинно-простой путь всегда является рёберно-простым, первая теорема справедлива и для вершинно-простых путей (усиление условия).
- Так как вершинно-простой цикл всегда является рёберно-простым, первая теорема справедлива и для рёберно-простого цикла (ослабление результата).
- Утверждение
Если две вершины графа лежат на цикле, то они лежат на простом цикле.
в общем случае неверно, так как эти вершины могут лежать в разных компонентах вершинной или рёберной двусвязности: все пути из одной вершины в другую будут содержать одну и ту же точку сочленения или один и тот же мост.