В математических областях теории графов и теории конечных моделей логика графов имеет дело с формальными спецификациями свойств графов с использованием предложений математической логики . Существует несколько вариаций типов логических операций, которые могут использоваться в этих предложениях. Логика графов первого порядка касается предложений, в которых переменные и предикаты касаются отдельных вершин и ребер графа, в то время как монадическая логика графов второго порядка допускает квантификацию по наборам вершин или ребер. Логики, основанные на операторах с наименьшей фиксированной точкой , допускают более общие предикаты по кортежам вершин, но эти предикаты могут быть построены только с помощью операторов с фиксированной точкой, что ограничивает их мощность.
Предложение может быть истинным для некоторых графов и ложным для других; говорят, что граф моделирует , пишется , если истинно для вершин и отношения смежности . Алгоритмическая проблема проверки модели касается проверки того, моделирует ли данный граф данное предложение. Алгоритмическая проблема выполнимости касается проверки того, существует ли граф, моделирующий данное предложение. Хотя и проверка модели, и выполнимость в целом сложны, несколько основных алгоритмических метатеорем показывают, что свойства, выраженные таким образом, могут быть эффективно проверены для важных классов графов.
Другие темы исследований в области логики графов включают изучение вероятности того, что случайный граф имеет свойство, заданное в рамках определенного типа логики, а также методы сжатия данных , основанные на поиске логических предложений, которые моделируются уникальным графом.
В логике первого порядка графов свойство графа выражается как квантифицированное логическое предложение, переменные которого представляют вершины графа , с предикатами для проверки равенства и смежности. [1]
Например, условие, что граф не имеет изолированных вершин, может быть выражено предложением , где символ указывает на ненаправленное отношение смежности между двумя вершинами. Это предложение можно интерпретировать как означающее, что для каждой вершины существует другая вершина , которая смежна с . [1]
Проблема изоморфизма подграфов для фиксированного подграфа спрашивает, появляется ли как подграф большего графа . Она может быть выражена предложением, которое утверждает существование вершин (по одной для каждой вершины ) таких, что для каждого ребра , соответствующая пара переменных представляет смежные вершины и таких, что для каждой оставшейся пары вершин , соответствующая пара переменных представляет различные вершины; [2] см. иллюстрацию. В качестве особого случая проблема клики (для фиксированного размера клики) может быть выражена предложением, которое утверждает существование числа вершин, равного размеру клики, все из которых смежны. [3]
Для простых неориентированных графов теория графов первого порядка включает аксиомы
Другие типы графов, такие как ориентированные графы , могут включать в себя другие аксиомы [5] , а логические формулировки свойств мультиграфа требуют специальной обработки, например, наличия множественных рёберных отношений [6] или отдельных переменных для вершин и рёбер [7] .
Глебский и др. (1969) и, независимо, Фейгин (1976) доказали закон нуля-единицы для логики графов первого порядка; доказательство Фейгина использовало теорему компактности . Согласно этому результату, каждое предложение первого порядка либо почти всегда истинно, либо почти всегда ложно для случайных графов в модели Эрдёша–Реньи . То есть, пусть будет фиксированным предложением первого порядка, и выберем случайный граф -вершин равномерно случайным образом среди всех графов на множестве помеченных вершин. Тогда в пределе, когда стремится к бесконечности, вероятность того, что модели будут стремиться либо к нулю, либо к единице: Более того, существует определенный бесконечный граф, граф Радо , такой, что предложения, моделируемые графом Радо, являются в точности теми, для которых вероятность быть смоделированными случайным конечным графом стремится к единице: Для случайных графов, в которых каждое ребро включено независимо от других с фиксированной вероятностью, тот же результат верен, причем те же предложения имеют вероятности, стремящиеся к нулю или к единице. [8]
Вычислительная сложность определения того, имеет ли данное предложение вероятность, стремящуюся к нулю или к единице, высока: задача является PSPACE-полной . [9] Если свойство графа первого порядка имеет вероятность, стремящуюся к единице на случайных графах, то можно перечислить все графы с вершинами, которые моделируют это свойство, с полиномиальной задержкой (как функцией ) на граф. [4]
Аналогичный анализ можно выполнить для неравномерных случайных графов, где вероятность включения ребра является функцией числа вершин, и где решение о включении или исключении ребра принимается независимо с равной вероятностью для всех ребер. Однако для этих графов ситуация более сложная. В этом случае свойство первого порядка может иметь один или несколько порогов, так что когда вероятность включения ребра ограничена порогом, то вероятность наличия данного свойства стремится к нулю или единице. Эти пороги никогда не могут быть иррациональной степенью , поэтому случайные графы, где вероятность включения ребра является иррациональной степенью, подчиняются закону нуля-единицы, аналогичному закону для равномерно случайных графов. Похожий закон нуля-единицы справедлив для очень разреженных случайных графов, которые имеют вероятность включения ребра с , пока не является суперчастным отношением . [10] Если является суперчастным, вероятность наличия данного свойства может стремиться к пределу, который не равен нулю или единице, но этот предел можно эффективно вычислить. [11] Существуют предложения первого порядка, которые имеют бесконечно много порогов. [12]
Если предложение первого порядка включает в себя различные переменные, то описываемое им свойство может быть проверено в графах вершин путем проверки всех -кортежей вершин; однако этот алгоритм поиска методом грубой силы не особенно эффективен, занимая время . Проблема проверки того, моделирует ли граф данное предложение первого порядка, включает в себя в качестве особых случаев проблему изоморфизма подграфов (в которой предложение описывает графы, содержащие фиксированный подграф) и проблему клики (в которой предложение описывает графы, содержащие полные подграфы фиксированного размера). Проблема клики сложна для W(1) , первого уровня иерархии сложных задач с точки зрения параметризованной сложности . Поэтому маловероятно, что будет существовать алгоритм с фиксированными параметрами, время выполнения которого принимает вид для функции и константы , которые не зависят от и . [13] Более того, если гипотеза экспоненциального времени верна, то поиск клики и проверка модели первого порядка обязательно потребуют времени, пропорционального степени, показатель которой пропорционален . [14]
На ограниченных классах графов проверка моделей предложений первого порядка может быть намного более эффективной. В частности, каждое свойство графа, выражаемое как предложение первого порядка, может быть проверено за линейное время для графов ограниченного расширения . Это графы, в которых все неглубокие миноры являются разреженными графами , с отношением ребер к вершинам, ограниченным функцией глубины минора. Еще более обще, проверка моделей первого порядка может быть выполнена за почти линейное время для нигде не плотных графов, классов графов, для которых на каждой возможной глубине существует по крайней мере один запрещенный неглубокий минор. И наоборот, если проверка моделей является фиксированно-параметрически выполнимой для любого монотонного семейства графов, это семейство должно быть нигде не плотным. [15]
Говорят, что предложение первого порядка в логике графов определяет граф , если является единственным графом, который моделирует . Каждый граф может быть определен по крайней мере одним предложением; например, можно определить любой -вершинный граф предложением с переменными, по одной для каждой вершины графа, и еще одним, чтобы сформулировать условие, что нет вершин, отличных от вершин графа. Дополнительные предложения предложения могут использоваться для обеспечения того, чтобы никакие две вершинные переменные не были равны, чтобы присутствовало каждое ребро , и чтобы не существовало ребра между парой несмежных вершин . Однако для некоторых графов существуют значительно более короткие предложения, которые определяют граф. [16]
Несколько различных инвариантов графа могут быть определены из простейших предложений (с различными мерами простоты), которые определяют данный граф. В частности, логическая глубина графа определяется как минимальный уровень вложенности квантификаторов ( ранг квантификатора ) в предложении, определяющем граф. [17] Предложение, описанное выше, вкладывает квантификаторы для всех своих переменных, поэтому оно имеет логическую глубину . Логическая ширина графа - это минимальное количество переменных в предложении, которое его определяет. [17] В предложении, описанном выше, это количество переменных снова равно . И логическая глубина, и логическая ширина могут быть ограничены в терминах ширины дерева данного графа. [18] Логическая длина, аналогично, определяется как длина кратчайшего предложения, описывающего граф. Предложение, описанное выше, имеет длину, пропорциональную квадрату числа вершин, но можно определить любой граф предложением с длиной, пропорциональной его числу ребер. [17]
Все деревья и большинство графов можно описать предложениями первого порядка только с двумя переменными, но расширить их подсчетом предикатов. Для графов, которые можно описать предложениями в этой логике с фиксированным постоянным числом переменных, можно найти канонизацию графа за полиномиальное время (с показателем полинома, равным числу переменных). Сравнивая канонизации, можно решить проблему изоморфизма графов для этих графов за полиномиальное время. [19]
Как частный случай теоремы Трахтенброта , неразрешимо , может ли данное предложение первого порядка быть реализовано конечным неориентированным графом. Это означает, что ни один алгоритм не может правильно ответить на этот вопрос для всех предложений. [20]
Некоторые предложения первого порядка моделируются бесконечными графами, но не любым конечным графом. Например, свойство иметь ровно одну вершину степени один, при этом все остальные вершины имеют степень ровно два, может быть выражено предложением первого порядка. Оно моделируется бесконечным лучом , но нарушает лемму Эйлера о рукопожатии для конечных графов. Однако из отрицательного решения Entscheidungsproblem ( Алонзо Чёрча и Алана Тьюринга в 1930-х годах) следует, что выполнимость предложений первого порядка для графов, которые не ограничены конечностью, остаётся неразрешимой. Также неразрешимо различать предложения первого порядка, которые истинны для всех графов, и те, которые истинны для конечных графов, но ложны для некоторых бесконечных графов. [21]
Логики графов, основанные на наименьшей неподвижной точке, расширяют логику графов первого порядка, допуская предикаты (свойства вершин или кортежей вершин), определяемые специальными операторами с фиксированной точкой. Этот тип определения начинается с импликации, формулы, утверждающей, что когда определенные значения предиката истинны, то и другие значения также истинны. «Неподвижная точка» — это любой предикат, для которого это является допустимой импликацией. Может быть много неподвижных точек, включая предикат always-true; «наименьшая неподвижная точка» — это неподвижная точка, которая имеет как можно меньше истинных значений. Точнее, ее истинные значения должны быть подмножеством истинных значений любой другой неподвижной точки. [22]
Например, определите быть истинным, когда две вершины и соединены путем в данном графе, и ложным в противном случае. Тогда каждая вершина соединена сама с собой, а когда соединена с соседом , она также соединена еще одним шагом с . Выражая это рассуждение в логических терминах, является наименьшей неподвижной точкой формулы Здесь, быть неподвижной точкой означает, что истинность правой части формулы подразумевает истинность левой части, как предполагает обратная стрелка импликации. Быть наименьшей неподвижной точкой, в этом случае, подразумевает, что никакие две вершины не будут определены как соединенные, если их связность не возникает из повторного использования этой импликации. [22]
Было изучено несколько вариаций логик с фиксированной точкой. В логике с наименьшей фиксированной точкой правая часть оператора в определяющей формуле должна использовать предикат только положительно (то есть каждое появление должно быть вложено в четное число отрицаний), чтобы сделать наименьшую фиксированную точку хорошо определенной. В другом варианте с эквивалентной логической мощностью, инфляционной логике с фиксированной точкой, формула не обязательно должна быть монотонной, но результирующая фиксированная точка определяется как та, которая получена путем многократного применения импликаций, выведенных из определяющей формулы, начиная с предиката all-false. Другие варианты, допускающие отрицательные импликации или несколько одновременно определенных предикатов, также возможны, но не обеспечивают дополнительной дефиниционной мощности. Предикат, определенный одним из этих способов, затем может быть применен к кортежу вершин как часть большего логического предложения. [22]
Логики с фиксированной точкой и расширения этих логик, которые также позволяют целочисленные переменные подсчета, значения которых варьируются от 0 до числа вершин, использовались в дескриптивной сложности в попытке предоставить логическое описание задач принятия решений в теории графов, которые могут быть решены за полиномиальное время . Фиксированная точка логической формулы может быть построена за полиномиальное время с помощью алгоритма, который многократно добавляет кортежи к набору значений, для которых предикат истинен, до достижения фиксированной точки, поэтому решение о том, моделирует ли граф предложение в этой логике, всегда можно решить за полиномиальное время. Не каждое свойство графа с полиномиальным временем может быть смоделировано предложением в логике, которая использует только фиксированные точки и подсчет. [23] [24] Однако для некоторых специальных классов графов свойства полиномиального времени совпадают со свойствами, выражаемыми в логике с фиксированной точкой с подсчетом. К ним относятся случайные графы, [23] [25] интервальные графы , [23] [26] и (через логическое выражение теоремы о структуре графа ) каждый класс графов, характеризующихся запрещенными минорами . [23]
В монадической логике второго порядка графов переменные представляют объекты до четырех типов: вершины, ребра, наборы вершин и наборы ребер. Существует две основные вариации монадической логики второго порядка графа: MSO 1 , в которой разрешены только переменные вершин и наборов вершин, и MSO 2, в которой разрешены все четыре типа переменных. Предикаты для этих переменных включают проверку равенства, проверку членства и либо инцидентность вершины-ребра (если разрешены как переменные вершины, так и ребра), либо смежность между парами вершин (если разрешены только переменные вершины). Дополнительные вариации в определении допускают дополнительные предикаты, такие как предикаты модульного подсчета. [27]
Например, связность неориентированного графа может быть выражена в MSO 1 как утверждение, что для каждого разбиения вершин на два непустых подмножества существует ребро из одного подмножества в другое. Разбиение вершин может быть описано подмножеством вершин на одной стороне разбиения, и каждое такое подмножество должно либо описывать тривиальное разбиение (такое, в котором одна или другая сторона пуста), либо пересекаться ребром. То есть граф связен, когда он моделирует предложение MSO 1. Однако связность не может быть выражена в логике графа первого порядка, и не может быть выражена в экзистенциальном MSO 1 ( фрагмент MSO 1 , в котором все квантификаторы множеств являются экзистенциальными и встречаются в начале предложения), ни даже в экзистенциальном MSO 2. [28 ]
Гамильтоновость может быть выражена в MSO 2 существованием набора ребер, который образует связный 2-регулярный граф на всех вершинах, со связностью, выраженной как выше, и 2-регулярностью, выраженной как инцидентность двух, но не трех различных ребер в каждой вершине. Однако гамильтоновость невыразима в MSO 1 , поскольку MSO 1 не способен различать полные двудольные графы с равным числом вершин на каждой стороне двудольного графа (которые являются гамильтоновыми) от несбалансированных полных двудольных графов (которые таковыми не являются). [29]
Хотя это и не является частью определения MSO 2 , ориентации неориентированных графов могут быть представлены с помощью техники, включающей деревья Тремо . Это позволяет также выразить другие свойства графа, включающие ориентации. [30]
Согласно теореме Курселя , каждое фиксированное свойство MSO 2 может быть проверено за линейное время на графах ограниченной древовидной ширины , и каждое фиксированное свойство MSO 1 может быть проверено за линейное время на графах ограниченной кликовой ширины . [31] Версия этого результата для графов ограниченной древовидной ширины также может быть реализована в логарифмическом пространстве . [32] Приложения этого результата включают в себя алгоритм с фиксированными параметрами для вычисления числа пересечений графа. [33]
Проблема выполнимости для предложения монадической логики второго порядка — это проблема определения, существует ли хотя бы один граф (возможно, в пределах ограниченного семейства графов), для которого предложение истинно. Для произвольных семейств графов и произвольных предложений эта проблема неразрешима. Однако выполнимость предложений MSO 2 разрешима для графов ограниченной древесной ширины, а выполнимость предложений MSO 1 разрешима для графов ограниченной кликовой ширины. Доказательство включает использование теоремы Курселя для построения автомата, который может проверить свойство, а затем проверку автомата для определения, существует ли какой-либо граф, который он может принять. В качестве частичного обратного утверждения [34] Зезе (1991) доказал, что всякий раз, когда семейство графов имеет разрешимую проблему выполнимости MSO 2 , семейство должно иметь ограниченную древесную ширину. Доказательство основано на теореме Робертсона и Сеймура о том, что семейства графов с неограниченной древовидной шириной имеют произвольно большие миноры сетки . Сизе также предположил, что каждое семейство графов с разрешимой проблемой выполнимости MSO 1 должно иметь ограниченную кликовую ширину. [35] Это не было доказано, но ослабление гипотезы, которая расширяет MSO 1 с помощью предикатов модульного подсчета, верно. [34]