4. Изоморфные графы. Алгоритм распознования изоморфизма графов.
Изоморфные графы.
Два графа G1 и G2 называются изоморфными, если существует взаимно однозначное соответствие между множествами их вершин, обладающее тем свойством, что число ребер, соединяющих любые две вершины в G1, равно число ребер, соединяющих соответствующие вершины в G2.
Из определения следует, что изоморфные графы можно одинаково изображать графически и отличаться они будут только метками вершин.
Изоморфизм графов есть отношение эквивалентности.
Алгоритм распознования изоморфизма графов.
Критерий изоморфности неориентированных графов
Неориентированные графы G и H с конечным числом вершин изоморфны тогда и только тогда, когда матрицы смежности A(G) и A(H) этих графов связаны соотношением , где T — подстановочная матрица, то есть матрица, в каждой строке и в каждом столбце которой имеется ровно один ненулевой элемент, равный 1.
Теорема. Для того, чтобы граф G1 был изоморфен графу G2, необходимо и достаточно выполнения следующих условий:
1. Полустепени входа и исхода соответствующих вершин равны.
2. Существует подстановка, переводящая граф G1 в граф G2.
Cформулируем алгоритм распознавания изоморфизма двух графов G1 и G2:
- Подсчитываем число вершин каждого графа. При равенстве переходи к 2, а при неравенстве к 6.
- Выписываем все элементы обоих графов в естественной упорядоченности и определим пары (d+(x), d-(x)) и (d+(y), d-(y)) для каждого элемента. Переход к 3.
- Для каждого элемента x графа G1 ищем такой элемент y графа G2, что выполняется первое условие теоремы. Найденные элементы x и y соединяем ребром, т.е. строим граф соответствия. Переходим к 4. В противном случае к 6.
- Выписываем подстановку, определяемую графом соответствия и проверяем выполнение второго условия теоремы. При выполнении условия переходим к 5. В противном случае к 6.
- Графы изоморфны.
- Графы не изоморфны.