Научная статья на тему 'ВЫЧИСЛИТЕЛЬНЫЕ МЕТОДЫ ОПРЕДЕЛЕНИЯ ИНВАРИАНТОВ ГРАФА'

ВЫЧИСЛИТЕЛЬНЫЕ МЕТОДЫ ОПРЕДЕЛЕНИЯ ИНВАРИАНТОВ ГРАФА Текст научной статьи по специальности «Математика»

CC BY
224
31
i Надоели баннеры? Вы всегда можете отключить рекламу.
Область наук
Ключевые слова
ГРАФ / ПОЛНЫЙ ИНВАРИАНТ ГРАФА / РЁБЕРНЫЙ РАЗРЕЗ / СПЕКТР РЁБЕРНЫХ РАЗРЕЗОВ ГРАФА / GRAPH / COMPLETE INVARIANT / EDGE CUT / SPECTRA OF GRAPH EDGE CUT

Аннотация научной статьи по математике, автор научной работы — Курапов С. В., Давидовский М. В.

В общем, существует универсальный алгоритм проверки пары графов G и H на изоморфизм. Он заключается в том, что строки и соответствующие столбцы матрицы смежностей графа G переставляются до тех пор, пока она не превратится в другую, равную матрице смежностей графа H; при этом максимальное количество перестановок (полный перебор) равно n!. Если после n! перестановок изоморфизм не определен - графы не изоморфны. Для большинства алгоритмических задач теории графов удается построить полиномиальный алгоритм или доказать принадлежность задачи к классу NP-полных. Задача определения изоморфизма графов - это одна из немногих классических задач теории графов, для которой пока не удалось осуществить ни то, ни другое (хотя для некоторых специальных классов графов удалось построить полиномиальные алгоритмы). Важную роль в задаче определения изоморфизма играют инварианты - некоторые, обычно числовые, значения или упорядоченный набор значений (хеш-функция), характеризующие структуру графа и не зависящие от способа обозначения вершин или графического изображения графа. Инвариант называется полным, если совпадения инвариантов графов необходимо и достаточно для установления изоморфизма. Известные на данный момент полные инварианты (например, макси-код, мини-код) являются трудновычислимыми и не позволяют эффективно решать задачу определения изоморфизма графов. В 2015 году Л. Бабай анонсировал алгоритм, позволяющий решить задачу изоморфизма за квазиполиномиальное время; в 2017 году этот алгоритм был уточнен. Таким образом, множество попыток построения вычислительных алгоритмов, основанных на применении матрицы смежностей графа А(G) для определения полного инварианта графа, не привели к желаемому результату. На этом пути разработано большое разнообразие эвристических алгоритмов определения изоморфизма, как правило, ориентированных на отдельные типы графов. В данной работе рассматриваются результаты построения полного инварианта графа G, основанные на матрице спектра реберных разрезов WS(G). Вычислительная сложность алгоритма поcтроения матрицы WS(G) определяется как O(m3). Для экспериментальной оценки предложенного вычислительного метода определения полного инварианта графа G авторами создана программная реализация и проведён ряд вычислительных экспериментов для различных типов графов.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

COMPUTATIONAL METHODS FOR DETERMINING GRAPH INVARIANTS

In general, a universal algorithm for testing a pair of graphs G and H for isomorphism exists. It is grounded on the fact that the rows and the corresponding columns of the adjacency matrix of the graph G can be rearranged until it turns into another, equal to the adjacency matrix of the graph H. Moreover, the maximum number of permutations (exhaustive search) is equal to n!. If isomorphism is not determined after n! permutations - the graphs are not isomorphic. For most algorithmic problems in graph theory, it is possible to construct a polynomial algorithm or prove that the problem belongs to the class of NP-complete. The problem of determining graph isomorphism is one of the few classical problems in graph theory, for which neither one nor the other has been successfully implemented so far (although for some special classes of graphs researchers have managed to construct polynomial algorithms). An important role in the problem of determining graph isomorphism is played by so-called invariants - some, usually numeric, values or an ordered set of values (hash function) that characterize the structure of the graph and do not depend on the graphical representation of the graph or the way the vertices are designated. An invariant is called complete if the coincidence of the graph invariants is necessary and sufficient to establish an isomorphism. The currently known complete invariants (for example, maxi code and mini code) are hard to compute and do not allow effectively solving the problem of determining graph isomorphism. In 2015, L. Babai announced an algorithm that allows solving the isomorphism problem in quasi-polynomial time; this algorithm was refined in 2017. Thus, many attempts to construct computational algorithms based on the use of the adjacency matrix A(G) for determining the complete invariant of the graph G have not led to the desired result so far. On this way, a wide variety of heuristics for determining isomorphism have been developed, usually focused on certain types of graphs. In this paper, we consider the results of constructing a complete invariant of the graph G based on the edge-cut spectrum matrix WS(G). The computational complexity of the algorithm for constructing the matrix WS(G) is O(m3). In order to experimentally evaluate the proposed computational method for determining the complete invariant of the graph G, the authors developed a proof-of-concept software implementation and carried out a number of computational experiments for various types of graphs.

Текст научной работы на тему «ВЫЧИСЛИТЕЛЬНЫЕ МЕТОДЫ ОПРЕДЕЛЕНИЯ ИНВАРИАНТОВ ГРАФА»

Вычислительные методы определения инвариантов графа

С. В. Курапов, М. В. Давидовский

Аннотация—В общем, существует универсальный алгоритм проверки пары графов G и H на изоморфизм. Он заключается в том, что строки и соответствующие столбцы матрицы смежностей графа G переставляются до тех пор, пока она не превратится в другую, равную матрице смежностей графа H; при этом максимальное количество перестановок (полный перебор) равно n!. Если после n! перестановок изоморфизм не определен - графы не изоморфны.

Для большинства алгоритмических задач теории графов удается построить полиномиальный алгоритм или доказать принадлежность задачи к классу NP-полных. Задача определения изоморфизма графов — это одна из немногих классических задач теории графов, для которой пока не удалось осуществить ни то, ни другое (хотя для некоторых специальных классов графов удалось построить полиномиальные алгоритмы).

Важную роль в задаче определения изоморфизма играют инварианты — некоторые, обычно числовые, значения или упорядоченный набор значений (хеш-функция), характеризующие структуру графа и не зависящие от способа обозначения вершин или графического изображения графа. Инвариант называется полным, если совпадения инвариантов графов необходимо и достаточно для установления изоморфизма. Известные на данный момент полные инварианты (например, макси-код, мини-код) являются трудновычислимыми и не позволяют эффективно решать задачу определения изоморфизма графов. В 2015 году Л. Бабай анонсировал алгоритм, позволяющий решить задачу изоморфизма за квазиполиномиальное время; в 2017 году этот алгоритм был уточнен.

Таким образом, множество попыток построения вычислительных алгоритмов, основанных на применении матрицы смежностей графа A(G) для определения полного инварианта графа, не привели к желаемому результату. На этом пути разработано большое разнообразие эвристических алгоритмов определения изоморфизма, как правило, ориентированных на отдельные типы графов.

В данной работе рассматриваются результаты построения полного инварианта графа G, основанные на матрице спектра реберных разрезов WS(G). Вычислительная сложность алгоритма построения матрицы WS(G) определяется как O(m3). Для экспериментальной оценки предложенного

вычислительного метода определения полного инварианта графа G авторами создана программная реализация и проведён ряд вычислительных экспериментов для различных типов графов.

Ключевые слова—граф, полный инвариант графа, рёберный разрез, спектр рёберных разрезов графа.

Статья получена 01 октября 2020.

С. В. Курапов, к. ф.-м. н., доцент, Запорожский национальный университет, Запорожье, Украина (e-mail: [email protected]).

М. В. Давидовский, Запорожский институт последипломного педагогического образования (e-mail: [email protected]).

I. Введение

В теории графов изоморфизм ом графов С(Уд,Ед) и Н(Ук,Ек) называется такая биекция между множествами вершин графов

Уд в которой любые две вершины х и у графа С смежны тогда и только тогда, когда вершины f(х) и [(у) смежны в графе Я. Здесь графы понимаются как неориентированные и не имеющие весов вершин и ребер. Если изоморфизм графов установлен, они называются изоморфными и обозначаются С *Н [1], [2].

Как правило, почти для любой алгоритмической задачи теории графов удается построить полиномиальный алгоритм или доказать ее принадлежность к классу КР-полных задач. Задача определения изоморфизма графов - это одна из немногих классических задач теории графов, для которой пока не удалось осуществить ни то, ни другое, хотя для некоторых специал ьных классов графов удалое ь построить полиномиальны е алгоритмы [3]. Си Яна изомор физм существует. Будем пере ставлять строки и соответс твующие столбцы матрицы см ежностей графа С до тех пор, пока она не превратится в другую, равную матрице смежностей графа Я, или остановимся после п! перестановок, если графы не изоморфны [4].

Однако переставлять строки и столбцы в неизоморфном графе Н при равном количестве вершин и ребер в графах С и Я не рационально. Следует вначале определить изоморфны или нет графы С и Н (С * Я).

Под полным инвариантом гр афа С понимается некоторая количественная характерис тика Р(С), которая представляет его структуру с точностью до изоморфизма [5]. Другими словам и, равенство полных инвариа нтов Р(й) и Р(Н) для графов С и Яг арантирует их изоморфизм. З аметим,что сведения о форме и содержании характеристи ки Р(С) в данном утверждении отсутствуют. Таким

образом, для получения полного инварианта графа не обходимо найти вид характе ристики Р(С), а также построить приемлемый с точки зрения вычислительной сложности и практической применимости алгоритм её вычисления [6]. Следует отметить, что не смотря на актуальность этих задач, полные инварианты удалось получить лишь для отдельных видов графов, например, для планарных [7] и ациклических графов [8], [9].

Основой представления графа С является матрица инциденций В (С), представляющая собой матричную запись трехместного предиката Р графа С.

Матрица смежностей реберного графа Ь(С) к графу С, может быть вычислена по формуле: А{1(С)) = В(С)Т х В(в) - 2 х I (1)

Введем следующие определения. Определение 1. Центральным разрезом будем называть суграф (квалиразрез [1]), состоящий из инцидентных ребер принадлежащих данной вершине и будем его обозначать ) для вершины ¿.

Определение 2. Базовым реберным разрезом будем называть суграф (квалиразрез), образованный из инцидентных ребер принадлежащих двум концевым вершинам данного ребра за исключением самого ребра и будем его обозначать ж(е1) для ребра е^ соединяющего вершины Уд и .

Структура реберного графа Ь(в) позволяет создать вектор-столбец множества базовых реберных разрезов графа С:

(С)Т = А(Ь(С))х р(С)т (2)

Следует заметить, что перестановка вершин не изменяет значение и состав множества базовых реберных разрезов графа. Таким образом, множество базовых реберных разрезов графа является постоянной структурой графа и не зависит от нумерации вершин графа. Такие постоянные структуры в математике принято называть инвариантами.

Множество базовых реберных разрезов можно представлять в виде вектора-столбца суграфов базовых реберных разрезов, а Р(й)т = (е1, е2,..., ет)т есть вектор-столбец для базиса однореберных суграфов пространства суграфов П(С) графа С. Сложение суграфов осуществляется с помощью операции кольцевого суммирования [10]:

а ф Ъ = (а и Ъ)(а П Ъ) (3)

Тогда множество базовых реберных разрезов состоит из суграфов W(G) = [ж^),ш(е2),...,№(ет)}. Базовый реберный разрез текущего ребра ж(е1) можно рассматривать как дискретную функцию, где в качестве аргумента рассматривается ребро графа.

Реберный разрез ж(е1) можно рассматривать как элемент множества разрезов графа 5 (С). В классической теории графов ребра реберного графа Ь(С) порождают новый реберный граф ¿(¿(в)) и т.д. [11]. В общем случае можно определить итерированный реберный граф рекуррентным соотношением

1П(С} = ьап-1(с)),п> 2.

В отличие от порождения итерированных реберных графов, мы будем рассматривать цепочку порождения итерированных квалиразрезов исходного графа,

Wkied = [е

(4)

определяемых рекуррентным соотношением Wn (G) = W(Wk-1(G)), к> 2 по принципу: квалиразрез к-го уровня Wk (G) порождается квалиразрезом к — 1 уровня Wk-1(G). В отличие от цепочки реберных графов, такая цепочка порождает реберные разрезы исходного графа всегда с количеством не более величины т - количества ребер. Такое порождение всегда конечно, так как конечно количество суграфов подпространства S(G) исходного графа [11].

C другой стороны, порождение цепочек квалиразрезов к + 1 уровня графа G, для каждого ребра, осуществляется путем сложения по модулю 2 суграфов базовых реберных разрезов определенных реберным разрезом к-го уровня этого ребра. Каждое новое подмножество ребер формируется рекурсивно, с помощью преобразования Л(wk-1(et)):

Wk (ei) = ^-(wk-l(ei)) (если wk(ei) = Wi (ei), то wk(ei) = 0 где i - номер ребра, к - номер уровня. Преобразование Л(wk-1(et)) определим следующим образом:

Я ({а, Ь, с.....т}) = W1 (a) фы^Ь) ф

ф W1 (с) ф ... фы1(т) (5)

где Л(wk-1(et)) - линейное преобразование суграфа к — 1 уровня, порождающее суграф последующего к-го уровня, определяет строку из предыдущего реберного разреза ребра et состоящего из множества ребер суграфа {а, Ь, с,..., п}.

Все уровневые подмножества (реберные разрезы) также будут представлять собой квалиразрезы (суграфы) исходного графа G. Так первый уровень будет состоять из множества базовых реберных разрезов графа G, а все последующие реберные разрезы следующего, к-го уровня будут порождаться линейным преобразованием ^(wk-1(et)). После получения циклического повтора подмножеств или образования квазициклов [1], данному подмножеству ставится в соответствие пустое множество.

На каждом уровне образуются т подмножеств (суграфов), зависящих от выбранного ребра, что дает нам возможность построить прямоугольную матрицу спектра реберных разрезов WS(G) размером т х card R, где R - множество номеров уровней. Очевидно, что элементы этой матрицы могут быть записаны в виде суграфов исходного графа. Таким образом, ярусные квалиразрезы графа образуют столбец в матрице спектров WS(G) графа G. Любой реберный разрез можно представить в виде функции w(ei) зависящей от ребра et в качестве аргумента. Совокупность всех реберных разрезов порожденных множеством базовых реберных разрезов будем называть спектром реберных разрезов графа.

уровни

Г1 Г2 ... Гк

WS(G) =

e\ wi(ei) W2(ei) Wk(ei)

е2 wife) W2(e2) Wk(e2)

е3 wi(es) W2(es) Wk(es)

em wi(em) W2(em) Wk(em)

Определим количество участия ребра et во всех суграфах спектра реберных разрезов как меру и назовем весом ребра. Теперь можно построить количественную характеристику каждого графа [12, 13].

Выделим состав полного инварианта графа G:

• матрица инциденций графа B(G);

• п - количество вершин графа G;

• т - количество ребер графа G;

• к - количество уровней в спектре реберных разрезов графа С;

• {^(wOi)), ^(wfe)),..., ^(w(rk))} - множество кортежей весов уровней;

• fe (6) - суммарный кортеж весов ребер;

• fv (d) - кортеж весов вершин.

• /е (С) & fv (С) - базовый инвариант графа. Следует также учесть, что при сравнении кортежей

удобно располагать элементы в порядке неубывания их величин, отвлекаясь от их местоположения в графе.

Рассмотрим различные классы связных неориентированных графов без петель и кратных ребер, не имеющих мостов и точек сочленения.

II. Сильно регулярные графы

Рассмотрим сильно регулярные графы Lattice graph с параметрами srg (16,6,2,2) и Shrikhande graph с параметрами srg (16,6,2,2).

Рис. 1. Сильно регулярный граф G1 (lattice graph) с параметрами srg (16,6,2,2).

Рис. 2. Сильно регулярный граф G2 (shrikhande graph) с параметрами srg(16,6,2,2).

Количество уровней в спектре реберных разрезов графа G1 = 2.

Кортеж весов ребер уровня 1: ^(w(r1)) = <48 х 10) .

Кортеж весов ребер уровня 2: %(w(r2)) = <48 х 16).

Суммарный кортеж весов ребер графа G1: fe(G1) = <48 х 26).

Кортеж весов вершин графа С1: fv(G1) = <16 х 156).

Базовый инвариант графа Fe(G1) & FV(G1) = (48 х 26)&(16 х 156).

Количество уровней в спектре реберных разрезов графа G2 =2.

Кортеж весов ребер уровня 1: f(w(г1)) = <48 х 10).

Кортеж весов ребер уровня 2: %(w(r2)) = <48 х 24).

Суммарный кортеж весов ребер графа G2: fe(G2) = <48 х 34).

Кортеж весов вершин графа G2: fv(G2) = <16 х 204).

Базовый инвариант графа Fe(G2) & FV(G2) = (48 х 26)&(16 х 156).

Сравнивая базовые инварианты графов, приходим к выводу: графы G1 и G2 не изоморфны.

Рис. 3. Сильно регулярный граф G3 с параметрами

згд(25,12,5,6).

0111111111111000000000000 1011111000000111111000000 1101111000000000000111111 1110000111000111000111000 1110000100110100110100110 1110000010101010101010101 1110000001011001011001011 1001100011100101001000111 1001010101010010110010011 1001001110001000111101100 1000110100011110001101001 1000101010101011010110010 1000011001110101100011100 0101100100101001110011001 0101010010110001101101010 0101001100011110001010110 0100110011001110010001110 0100101011010100101110001 0100011101100011010100101 0011100001110010011011100 0011010010011101010100101 0011001001101110100100011 0010110101001001101110010 0010101110010011100001101 0010011110100100011011010

Рис. 4. Матрица смежностей графа С3.

Количество уровней в спектре реберных разрезов графа в3 =2.

Базовый инвариант графа ^(С3) & Р„(С3) = (77 х 92,68 х 100,5 х 108) & (21 х 1128,2 х 1176,2 х 1200).

Количество уровней в спектре реберных разрезов графа в4 =2.

Базовый инвариант графа ^(в3) & Ру(в3) = (1014,1021,1062,1063,1072,1072,1072,1072,1072,1072,107 4,1074,1078,1082,1083,1093,1093,1093,1093,1098,1101,11 01,1102,1102,1102,1107,1108,1109,1110,1114,1114,1115,1 117,1117,1117,1118,1121,1122,1124,1124,1125,1126,1126, 1126,1126,1126,1126,1126,1127,1129,1129,1129,1129,113 0,1130,1134,1134,1135,1137,1137,1137,1137,1137,1137,11 39,1141,1141,1142,1142,1143,1146,1147,1147,1147,1149,1 149,1149,1150,1150,1150,1150,1153,1155,1155,1155,1156, 1157,1159,1161,1162,1162,1162,1162,1162,1163,1163,116 5,1165,1165,1165,1165,1166,1166,1167,1169,1169,1169,11 70,1171,1171,1171,1171,1172,1173,1173,1173,1174,1174,1 174,1175,1176,1177,1177,1177,1178,1182,1183,1185,1185, 1186,1186,1187,1188,1189,1189,1192,1192,1192,1192,119 2,1192,1193,1193,1198,1198,1201,1206,1210,1210,1297) & (13453,13549,13552,13596,13600,13608,13630,13636,1364 7,13709,13727,13759,13767,13776,13781,13815,13816,138 29,13864,13876,13891,13914,13939,14801,15083).

Сравнивая базовые инварианты графов, приходим к выводу: графы в3 и в4 не изоморфны.

Рис. 5. Сильно регулярный граф G4 с параметрами srg (25,12,5,6).

0111111111111000000000000 1011111000000111111000000 1101111000000000000111111 1110000111000111000111000 1110000100110100110100110 1110000010101010101010101 1110000001011001011001011 1001100011100101001000111 1001010101010010110001101 1001001110001000111110010 1000110100011110001011010 1000101010101011010101100 1000011001110101100110001 0101100100101001110011001 0101010010110001101101010 0101001100011110001100101 0100110011001110010100011 0100101011010100101011100 0100011101100011010010110 0011100001011011100010110 0011010001101100011101100 0011001010110110010010011 0010110110010001011110001 0010101101100010101101001 0010011110001101100001110

Рис. 6. Матрица смежностей графа G4.

III. Изоспектральные графы

Рассмотрим следующую пару изоспектральных графов (рис. 7 и рис. 8).

Рис. 7. Граф G5

Рис. 9. Граф G7.

Рис. 8. Граф С6.

Общим для указанных графов спектром собственных значений для матрицы смежностей является вектор (4,2,2,2,0,0,0,-2,-2,-2,-2,-2).

Базовый инвариант графа С5: ^ (С5) & (С5) = (24 х 30) & (12 х 120).

Базовый инвариант графа С6: (С6) & (С6) = (8 х 14,16 х 26) & (8 х 80,4 х 104).

Изоспектральные графы С5 и С6 не изоморфны, так как их базовые инварианты не совпадают.

Рассмотрим следующую пару изоспектральных графов (рис. 9 и рис. 10).

Рис. 10. Граф С8.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Количество уровней в спектре реберных разрезов графа С7 = 6.

Кортеж весов ребер уровня 1: =

(6,5,7,7,6,7,6,5,7,4,6,5,7,6,5).

Кортеж весов ребер уровня 2: ?(ш(г2)) = (9,5,7,8,9,6,7,7,6,10,9,7,8,9,5).

Кортеж весов ребер уровня 3: ?(ш(г3)) =

(8.7.4.7.5.7.4.6.7.8.5.6.7.8.7).

Кортеж весов ребер уровня 4: ?(ш(г4)) = (10,6,10,4,10,4,10,10,4,0,10,10,4,10,6).

Кортеж весов ребер уровня 5: £^(г5)) = (8,10,8,10,10,10,8,8,10,0,10,8,10,8,10).

Кортеж весов ребер уровня 6: ?(ш(г6)) = (0,8,0,8,8,8,0,0,8,0,8,0,8,0,8).

Суммарный кортеж весов ребер графа С7: /е(С7) = (41,41,35,44,48,42,35,36,42,22,48,36,44,41,41).

Кортеж весов вершин графа С7: £(С7) = (117,210,163,106,106,210,163,117).

Базовый инвариант графа

Ъ(С7) & ¥у (С7) =

= (22,35,35,36,36,41,41,41,41,42,42,44,44,48,48) &

& (106,106,117,117,163,163,210,210).

Количество уровней в спектре реберных разрезов графа в8 = 6.

Кортеж весов ребер уровня 1: £^(71)) = (6,6,5,7,5,5,6,8,6,6,6,6,7,5,5).

Кортеж весов ребер уровня 2: £^(г2)) =

(8.7.6.9.9.6.6.6.8.8.6.7.9.9.8).

Кортеж весов ребер уровня 3: %(м(г3)) = (5,7,9,6,9,9,11,12,7,7,11,7,6,9,5).

Кортеж весов ребер уровня 4: £^(г4)) = (8,6,8,10,6,8,8,0,8,8,8,6,10,6,8).

Кортеж весов ребер уровня 5: ^(г5)) = (6,10,6,12,10,6,6,0,6,6,6,10,12,10,6).

Кортеж весов ребер уровня 6: ^(г6)) = (12,12,12,0,12,12,12,0,12,12,12,12,0,12,12).

Суммарный кортеж весов ребер графа С8: /е(С8) = (44,48,46,44,51,46,49,26,47,47,49,48,44,51,44).

Кортеж весов вершин графа С8: = (138,185,214,147,214,147,138,185).

Базовый инвариант графа

^(С8) & ¥у (Св) =

= (26,44,44,44,44,46,46,47,47,48,48,49,49,51,51) &

& (138,138,147,147,185,185,214,214).

Изоспектральные графы в7 и С8 не изоморфны, так как их базовые инварианты не совпадают.

IV. Графы с одинаковой мощностью

ИЗОМЕТРИЧЕСКИХ ЦИКЛОВ

Рис. 11. Граф G9.

Рис. 13. Граф G1

Рис14. Граф С12.

Базовый инвариант графа С11: Ре(С11) &РР(С11) (б X 4,6 X1з) & (1X 78,6 X 21),

Базовый инвариант графа С12: Ре(в12) &РР(в12)

(6 X 22,6 X 24) & (6 X 68,1 X 144). Графы не изоморфны.

VI. Изоморфизм деревьев

Рассмотрим формирование базового инварианта для дерева графа.

Рис. 15. Дерево графа G1

Рис. 12. Граф С10.

Для графа в9 количество уровней в спектре реберных разрезов равно 6, а для графа в10 эта величина равна 14. Графы не изоморфны, так как отличаются количеством уровней в спектре реберных разрезов.

V. Изоморфизм плоских графов

Рассмотрим формирование полного инварианта для плоских графов С11 и С12 (рис. 13 и рис. 14).

Рис. 16. Дерево графа G14.

Кортеж весов ребер: fe(G13) = <10,10,12,12,10,10);

Кортеж весов вершин:

fv(G13) = <10,32,10,24,32,10,10).

Базовый инвариант графа С13: Fe(G13) & FV(G13) =

X 10,2 X 12) & (4X 10,1 X24,2 X 32).

Кортеж весов ребер: fe(G14) = <18,18,20,20,16,16);

Кортеж весов вершин:

fv(G14) = <18,56,18,56,20,32,16).

Базовый инвариант графа С14: Fe(G14) &FV(G14) =

= (2 X 16,2 * 18,2 * 20) &

& (1X 16,2 X 18,1 X 20,1 X 32,2 X 56.

Графы не изоморфны.

VII. Заключение

В работе показано, что основой для различения внутренних структур графов является множество базовых реберных разрезов с мощностью равной количеству ребер графа card W(G) = т. Показано, что множество базовых реберных разрезов не зависит от перенумерации вершин графа, то есть, является величиной постоянной, не зависящей от перестановки вершин.

Применение операции кольцевого сложения для базовых реберных разрезов позволяет построить спектр реберных разрезов графа в виде элементов пространства суграфов. Это позволяет построить цепочку реберных разрезов для каждого отдельного ребра. Полученные цепочки реберных разрезов для ребра позволяют проводить сравнительный анализ для графов имеющих одинаковое количество вершин и ребер. Количество подмножеств спектра реберных разрезов определяет меру участия данного ребра в структуре графа и называется весом ребра. На основе понятия веса ребра строится полный инвариант графа и кортежи весов ребер и вершин.

Количество элементарных операций для построения суграфа как элемента спектра реберных разрезов можно

определить как сумму по модулю 2 характеристических векторов размером m. Таким образом, количество элементарных операций для получения суграфа можно определить как число ребер m. В свою очередь, размер матрицы WS можно определить как mх m, поскольку количество уровней не превосходит числа ребер. В итоге, для построения матрицы WS(G) нужно применить m3 элементарных операций. Для определения веса ребра необходимо перебрать все элементы спектра реберных разрезов графа и тогда общее количество элементарных операций равно m2. Общее количество элементарных операций можно определить как сумму операций вычисления элементов матрицы WS(G) и вычисления веса ребра m3+m2. Вычислительную сложность установления полного инварианта графа можно определить как O(m3) относительно ребер графа, или как O(n6) относительно вершин.

Таким образом, вычислительная сложность алгоритма построения полного инварианта равна O(m3). Задача вычисления полного инварианта графа относится к классу P - полиномиальных алгоритмов.

В работе приведены примеры определения изоморфизма для некоторых классов графов.

Библиография

[1] А. А. Зыков, Теория конечных графов. Новосибирск: ГРФМЛ, 1963.

[2] В. А. Емеличев, О. И. Мельников, В. И. Сарванов, Р. И. Тышкевич, Лекции по теории графов. М.: УРСС, 2009.

[3] Ан. В. Погребной, В. К. Погребной, "Метод дифференциации вершин графа и решение проблемы изоморфизма", Известия Томского политехнического университета, т. 326, № 6, 2015, с. 34-45.

[4] Г. М. Хитров, "О разнообразии графа и применении этого понятия к проблеме изоморфизма графов", Вестн. С.-Петерб. ун-та, сер. 10: Прикладная математика, информатика, процессы управления, вып.,2, 2006, с. 91-100.

[5] А. А. Зыков, Основы теории графов. М.: Наука. ГРФМЛ, 1987.

[6] B. D. McKay and A. Piperno, "Practical Graph Isomorphism", J. Symbolic Computation, vol. 60, 2014, pp. 94-112.

[7] S. Datta, N. Limaye, P. Nimbhorkar, T. Thierauf, and F. Wagner, "Planar Graph Isomorphism is in Log-Space", in 24th Annual IEEE Conference on Computational Complexity, Paris, 15-18 Jul. 2009, pp. 203-214.

[8] S. A. Lindell, "Logspace Algorithm for Tree Canonization", in Proc. of the 24th Annual ACM Symposium on the Theory of Computing, New York, 1992, pp. 400-404.

[9] С. В. Пролубников, "О новом полном инварианте ациклических графов", ПДМ. Приложение, N3, 2010.

[10] М. Свами, К. Тхуласираман, Графы, сети и алгоритмы. М.: Мир, 1984.

[11] Ф. Харари, Теория графов. М.: Мир, 1973.

[12] С. В. Курапов, М. В. Давидовский, А. В. Неласая. Изоморфизм графов, Запорожье, ЗНУ, 2019.

[13] С. В. Курапов, М. В. Давидовский, "Спектр реберных разрезов графа и задача изоморфизма", В^ник Запорьзького нацюнального утверситету: Збiрник наук. статей. Фiз.-мат. Науки, N° 1, Запорiжжя: ЗНУ, 2017, с. 222-234.

Computational methods for determining graph

invariants

S. V. Kurapov, M. V. Davidovsky

Abstract—In general, a universal algorithm for testing a pair of graphs G and H for isomorphism exists. It is grounded on the fact that the rows and the corresponding columns of the adjacency matrix of the graph G can be rearranged until it turns into another, equal to the adjacency matrix of the graph H. Moreover, the maximum number of permutations (exhaustive search) is equal to n!. If isomorphism is not determined after n! permutations - the graphs are not isomorphic.

For most algorithmic problems in graph theory, it is possible to construct a polynomial algorithm or prove that the problem belongs to the class of NP-complete. The problem of determining graph isomorphism is one of the few classical problems in graph theory, for which neither one nor the other has been successfully implemented so far (although for some special classes of graphs researchers have managed to construct polynomial algorithms).

An important role in the problem of determining graph isomorphism is played by so-called invariants - some, usually numeric, values or an ordered set of values (hash function) that characterize the structure of the graph and do not depend on the graphical representation of the graph or the way the vertices are designated. An invariant is called complete if the coincidence of the graph invariants is necessary and sufficient to establish an isomorphism. The currently known complete invariants (for example, maxi code and mini code) are hard to compute and do not allow effectively solving the problem of determining graph isomorphism. In 2015, L. Babai announced an algorithm that allows solving the isomorphism problem in quasi-polynomial time; this algorithm was refined in 2017.

Thus, many attempts to construct computational algorithms based on the use of the adjacency matrix A(G) for determining the complete invariant of the graph G have not led to the desired result so far. On this way, a wide variety of heuristics for determining isomorphism have been developed, usually focused on certain types of graphs.

In this paper, we consider the results of constructing a complete invariant of the graph G based on the edge-cut spectrum matrix WS(G). The computational complexity of the algorithm for constructing the matrix WS(G) is O(m3). In order to experimentally evaluate the proposed computational method for determining the complete invariant of the graph G, the authors developed a proof-of-concept software implementation and carried out a number of computational experiments for various types of graphs.

Keywords—graph, complete invariant, edge cut, spectra of graph edge cut.

References

[1] A. A. Zykov, Theory of Finite Graphs, 1969.

[2] W. A. Emelichev, O. I. Melnikov, V. I. Sarvanov, and R. I. Tyshkevich. Lectures on graph theory. M.: Science, 1990.

[3] A. V. Pogrebnoy and V. K. Pogrebnoy, "Method of graph vertices differentiation and solution of the isomorphism problem", Bulletin of Tomsk Polytechnic University, vol. 326, iss. 6, 2015, pp. 34-45.

[4] G. M. Khitrov, "On the diversity of the graph and the application of this concept to the problem of graph isomorphism", Vestn. St. Petersburg un., Ser. 10: Applied Mathematics, Computer Science, Control Processes, vol. 2., 2006, pp. 91-100.

[5] A. A. Zykov. Fundamentals of graph theory. BCS Associates, 1990.

[6] B. D. McKay and A. Piperno, "Practical Graph Isomorphism", J. Symbolic Computation, vol. 60, 2014, pp. 94-112.

[7] S. Datta, N. Limaye, P. Nimbhorkar, T. Thierauf, and F. Wagner, "Planar Graph Isomorphism is in Log-Space", in 24th Annual IEEE Conference on Computational Complexity, Paris, 15-18 Jul. 2009, pp. 203-214.

[8] S. A. Lindell, "Logspace Algorithm for Tree Canonization", in Proc. of the 24th Annual ACM Symposium on the Theory of Computing, New York, 1992, pp. 400-404.

[9] S. V. Prolubnikov, "On a new complete invariant of acyclic graphs", PDM, №3, 2010.

[10] M. N. S. Swami and K. Thulasiraman. Graphs, Networks and Algorithms. Wiley, 1980.

[11] F. Harary. Graph Theory. Reading, MA.: Addison-Wesley, 1969.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

[12] S. V. Kurapov, M. V. Davidovsky, and A. V. Nelasaya. Graph isomorphism, Zaporizhzhya, ZNU, 2019.

[13] S. V. Kurapov and M. V. Davidovsky, "Graph edge cut and the graph isomorphism problem", Visnyk of Zaporizhzhya National University. Physical and Mathematical Sciences, N° 1, Zaporizhzhya: ZNU, 2017, pp. 222-234.

Manuscript received September 29, 2020.

S. V. Kurapov, PhD in Physics and Maths, associate professor is with Zaporizhzhya National University, Zaporizhzhya, Ukraine (e-mail: [email protected]).

M. V. Davidovsky is with Zaporizhzhya Institute of Postgraduate Pedagogical Education, Zaporizhzhya, Ukraine (e-mail: [email protected]).

i Надоели баннеры? Вы всегда можете отключить рекламу.