Гамма-алгоритм — это алгоритм плоской укладки графа и попутной проверки его на планарность.
Если нарушено свойство (1), то граф нужно укладывать отдельно по компонентам связности. Если нарушено свойство (2), то граф — дерево и нарисовать его плоскую укладку тривиально.
Случай нарушения свойства (3) рассмотрим более подробно. Если в графе есть мосты, то их нужно разрезать, провести отдельно плоскую укладку каждой компоненты связности, а затем соединить их мостами. Здесь может возникнуть трудность: в процессе укладки концевые вершины моста могут оказаться внутри плоского графа. Нарисуем одну компоненту связности, и будем присоединять к ней другие последовательно. Каждую новую компоненту связности будем рисовать в той грани, в которой лежит концевая вершина соответствующего моста. Так как граф связности мостами компонент связности является деревом, мы сумеем получить плоскую укладку.
Граф Г планарен тогда и только тогда, когда гамма-алгоритм разместит его на плоскости.
В обратную сторону доказательство очевидно.
Докажем в прямую сторону. Если граф Г планарен, то уложенный на плоскость подграф H может быть достроен до укладки графа Г. В частности, для последнего шага это означает, что граф Г полностью уложен на плоскость.
Пусть граф Г планарен. Тогда любой цикл графа Г при укладке изображается как многоугольник. Этот многоугольник входит в укладку графа Г на плоскости.
Пусть утверждение верно вплоть до n-ой итерации алгоритма.
Варианты:
Пусть S — сегмент с допустимыми гранями F1 и F2. Подграф H достраивается до укладки графа Г по предположению индукции. При этом, сегмент S укладывается в одну из допустимых граней. Без ограничений общности пусть эта грань F1. Докажем, что существует продолжение H до укладки графа Г, в котором сегмент S лежит в грани F2. Поскольку F1 и F2 — дополнительные грани, обе они содержат все контактные вершины сегмента S. Следовательно, все контактные вершины сегмента S лежат во множестве общих вершин F1 и F2. Пусть S1,..,Sk — все сегменты, уложенные в F1. Пусть S'1,..,S'm — все сегменты уложенные в F2, содержащие одну из вершин. Пусть сегмент S'i имеет контактную вершину и другую контактную вершину не принадлежащую F1. Тогда допустимые грани S'i это грань F2, а это предположению пункта (2). Из противоречия следует, что все контактные вершины S'i (аналогично Si) лежат во множестве вершин сегментов S'1,..,S'm.
Следовательно, в укладке графа Г можно сегменты S1,..,Sk переместить в F2, а S'1,..,S'm в F1, это приведет к укладке графа Г в котором сегмент S лежит в грани F2.
Следовательно, алгоритм уложит на плоскость любой планарный граф. Что и требовалось.
Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".
Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.
Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .