В математической логике монадическая логика второго порядка ( MSO ) — это фрагмент логики второго порядка , где квантификация второго порядка ограничена квантификацией по множествам. [1] Она особенно важна в логике графов из-за теоремы Курселя , которая предоставляет алгоритмы для вычисления монадических формул второго порядка по графам ограниченной древовидной ширины . Она также имеет фундаментальное значение в теории автоматов , где теорема Бюхи–Элгота–Трактенброта даёт логическую характеристику регулярных языков .
Логика второго порядка допускает квантификацию по предикатам . Однако MSO — это фрагмент , в котором квантификация второго порядка ограничена монадическими предикатами (предикатами, имеющими один аргумент). Это часто описывается как квантификация по «множествам», поскольку монадические предикаты эквивалентны по выразительной силе множествам (множеству элементов, для которых предикат истинен).
Монадическая логика второго порядка существует в двух вариантах. В варианте, рассматриваемом над такими структурами, как графы, и в теореме Курселя формула может включать немонадические предикаты (в данном случае предикат бинарного ребра ), но квантификация ограничена только монадическими предикатами. В варианте, рассматриваемом в теории автоматов и теореме Бюхи–Элгота–Трактенброта, все предикаты, включая те, что находятся в самой формуле, должны быть монадическими, за исключением отношений равенства ( ) и упорядочения ( ).
Экзистенциальная монадическая логика второго порядка (EMSO) — это фрагмент MSO, в котором все кванторы по множествам должны быть экзистенциальными кванторами , за пределами любой другой части формулы. Квантификаторы первого порядка не ограничены. По аналогии с теоремой Фейгина , согласно которой экзистенциальная (немонадическая) логика второго порядка точно фиксирует описательную сложность класса сложности NP , класс проблем, которые могут быть выражены в экзистенциальной монадической логике второго порядка, был назван монадической NP. Ограничение монадической логикой позволяет доказывать разделения в этой логике, которые остаются недоказанными для немонадической логики второго порядка. Например, в логике графов проверка того, является ли граф несвязным, принадлежит монадической NP, поскольку тест может быть представлен формулой, описывающей существование собственного подмножества вершин без ребер, соединяющих их с остальной частью графа; Однако дополнительная задача, проверяющая, связен ли граф, не принадлежит к монадическому NP. [2] [3] Существование аналогичной пары дополнительных задач, только одна из которых имеет экзистенциальную формулу второго порядка (без ограничения монадическими формулами), эквивалентно неравенству NP и coNP , открытому вопросу в вычислительной сложности.
Напротив, когда мы хотим проверить, удовлетворяется ли булева формула MSO входным конечным деревом , эта проблема может быть решена за линейное время в дереве, путем перевода булевой формулы MSO в автомат дерева [4] и оценки автомата на дереве. Однако с точки зрения запроса сложность этого процесса, как правило, неэлементарна . [5] Благодаря теореме Курселя , мы также можем оценить булеву формулу MSO за линейное время на входном графе, если ширина дерева графа ограничена константой.
Для формул MSO, которые имеют свободные переменные , когда входные данные представляют собой дерево или имеют ограниченную ширину дерева, существуют эффективные алгоритмы перечисления для создания набора всех решений, [6] гарантируя, что входные данные предварительно обрабатываются за линейное время, а затем каждое решение создается с задержкой, линейной по размеру каждого решения, т. е. с постоянной задержкой в общем случае, когда все свободные переменные запроса являются переменными первого порядка (т. е. они не представляют собой наборы). Существуют также эффективные алгоритмы для подсчета количества решений формулы MSO в этом случае. [7]
Проблема выполнимости для монадической логики второго порядка в общем случае неразрешима, поскольку эта логика включает в себя логику первого порядка .
Монадическая теория второго порядка бесконечного полного двоичного дерева , называемая S2S , разрешима . [8] Как следствие этого результата, следующие теории разрешимы:
Для каждой из этих теорий (S2S, S1S, WS2S, WS1S) сложность проблемы принятия решения неэлементарна . [5] [9]
Монадическая логика второго порядка деревьев имеет приложения в формальной верификации . Процедуры принятия решений для выполнимости MSO [10] [11] [12] использовались для доказательства свойств программ, манипулирующих связанными структурами данных , [13] как форма анализа формы , и для символических рассуждений в верификации оборудования . [14]