Логика фиксированной точки
В математической логике логика с фиксированной точкой является расширением классической логики предикатов, которая была введена для выражения рекурсии. Их развитие было мотивировано описательной теорией сложности и их связью с языками запросов к базам данных , в частности с Datalog .
Логика наименьшей фиксированной точки впервые систематически изучалась Яннисом Н. Мошовакисом в 1974 году: [1] и он был представлен ученым-компьютерщикам в 1979 году, когда Альфред Ахо и Джеффри Уллман предложили логику с фиксированной запятой в качестве выразительного языка запросов к базе данных. [2]
Частичная логика с фиксированной точкой
[ редактировать ]Для реляционной подписи X FO[PFP]( X ) представляет собой набор формул, сформированных из X с использованием связок и предикатов первого порядка , переменных второго порядка , а также частичного оператора с фиксированной точкой. используется для составления формул вида , где является переменной второго порядка, кортеж переменных первого порядка, кортеж терминов и длины и совпадают с арностью .
Пусть k — целое число, — векторы k переменных, P — переменная второго порядка арности k , и пусть φ — функция FO(PFP,X), использующая x и P в качестве переменных. Мы можем итеративно определить такой, что и (имеется в виду φ с заменена на переменную второго порядка P ). Тогда либо существует фиксированная точка, либо список s является циклическим. [3]
определяется как значение фиксированной точки по y, если есть фиксированная точка, иначе как ложь. [4] Поскольку P s являются свойствами арности k , существует не более ценности для s, поэтому с помощью счетчика полиномиального пространства мы можем проверить, есть ли цикл или нет. [5]
Доказано, что на упорядоченных конечных структурах свойство выражается в FO(PFP, X ) тогда и только тогда, когда оно лежит в PSPACE . [6]
Наименьшая логика с фиксированной точкой
[ редактировать ]Поскольку повторяющиеся предикаты, участвующие в вычислении частичной фиксированной точки, в целом не являются монотонными, фиксированная точка не всегда может существовать. FO(LFP,X), логика наименьшей фиксированной точки , представляет собой набор формул в FO(PFP,X), где частичная фиксированная точка берется только над такими формулами φ , которые содержат только положительные вхождения P (то есть вхождения, предшествовавшие четным числом отрицаний). Это гарантирует монотонность конструкции с фиксированной точкой (то есть, если переменная второго порядка равна P , то всегда подразумевает ).
Из-за монотонности мы добавляем в таблицу истинности P только векторы , и поскольку существуют только возможных векторов, мы всегда найдем фиксированную точку раньше итерации. Теорема Иммермана-Варди, независимо показанная Иммерманом. [7] и Варди , [8] показывает, что FO(LFP, X ) характеризует P во всех упорядоченных структурах.
Выразительность логики наименьшей фиксированной точки точно совпадает с выразительностью языка запросов к базе данных Datalog , показывая, что в упорядоченных структурах Datalog может выражать именно те запросы, которые выполняются за полиномиальное время. [9]
Инфляционная логика фиксированной точки
[ редактировать ]Другой способ обеспечить монотонность конструкции с фиксированной точкой — добавлять только новые кортежи к на каждом этапе итерации, не удаляя кортежи, для которых больше не держится. Формально мы определяем как где .
Эта инфляционная фиксированная точка согласуется с наименее фиксированной точкой, в которой определена последняя. Хотя на первый взгляд кажется, что инфляционная логика с фиксированной точкой должна быть более выразительной, чем логика с наименьшей фиксированной точкой, поскольку она поддерживает более широкий диапазон аргументов с фиксированной точкой, на самом деле каждая FO[IFP]( X )-формула эквивалентна к FO[LFP]( X )-формуле. [10]
Одновременная индукция
[ редактировать ]Хотя все введенные до сих пор операторы с фиксированной точкой выполняли итерацию только при определении одного предиката, многие компьютерные программы более естественно рассматривать как перебирающие несколько предикатов одновременно. Либо увеличивая арность операторов с фиксированной точкой, либо путем их вложения, каждая одновременная наименьшая, инфляционная или частичная фиксированная точка может фактически быть выражена с использованием соответствующих одноитерационных конструкций, обсуждавшихся выше. [11]
Логика транзитивного замыкания
[ редактировать ]Вместо того, чтобы допускать индукцию по произвольным предикатам, логика транзитивного замыкания позволяет только транзитивные замыкания напрямую выражать .
FO[TC]( X ) — это набор формул, образованных из X с использованием связок и предикатов первого порядка, переменных второго порядка, а также оператора транзитивного замыкания. используется для составления формул вида , где и представляют собой кортежи попарно различных переменных первого порядка, и кортежи термов и длины , , и совпадают.
TC определяется следующим образом: пусть k — целое положительное число и быть векторами k переменных. Затем верно, если существует n векторов переменных такой, что , и для всех , это правда. Здесь φ — формула, записанная на FO(TC), а означает, что переменные u и v заменяются на x и y .
Для упорядоченных структур FO[TC] характеризует класс сложности NL . [12] Эта характеристика является важной частью доказательства Иммермана, что NL замкнуто относительно дополнения (NL = co-NL). [13]
Детерминированная логика транзитивного замыкания
[ редактировать ]FO[DTC]( X ) определяется как FO(TC,X), где оператор транзитивного замыкания является детерминированным. Это означает, что когда мы применяем , мы знаем, что для всех u существует не более одного v такого, что .
Мы можем предположить, что это синтаксический сахар для где .
характеризует класс сложности L. Для упорядоченных структур FO[DTC ] [12]
Итерации
[ редактировать ]Операции с фиксированной точкой, которые мы определили до сих пор, бесконечно повторяют индуктивные определения предикатов, упомянутых в формуле, пока не будет достигнута фиксированная точка. В реализациях может возникнуть необходимость ограничить количество итераций, чтобы ограничить время вычислений. Полученные операторы представляют интерес и с теоретической точки зрения, поскольку их также можно использовать для характеристики классов сложности.
Мы определим первый порядок с помощью итерации, ; здесь - это (класс) функций от целых чисел до целых чисел и для разных классов функций мы получим разные классы сложности .
В этом разделе мы напишем означать и означать . Сначала нам нужно определить блоки кванторов (QB). Блок кванторов представляет собой список. где s — бескванторные FO-формулы и либо или . Если Q — блок кванторов, мы вызовем оператор итерации, который определяется как Q, записанный время. Следует обратить внимание, что здесь есть кванторы в списке, но только k переменных и каждая из этих переменных используются раз. [14]
Теперь мы можем определить быть FO-формулами с итерационным оператором, показатель степени которого находится в классе , и получаем следующие равенства:
- равен FO-равномерному AC я , и в самом деле является FO-равномерным АС глубины . [15]
- равен НК. [16]
- равен PTIME . Это еще один способ записи FO(IFP). [17]
- равен PSPACE . Это еще один способ записи FO(PFP). [18]
Примечания
[ редактировать ]- ^ Мошовакис, Яннис Н. (1974). «Элементарная индукция по абстрактным структурам» . Исследования по логике и основам математики . 77 . дои : 10.1016/s0049-237x(08)x7092-2 . ISBN 9780444105370 . ISSN 0049-237X .
- ^ Ахо, Альфред В.; Уллман, Джеффри Д. (1979). «Универсальность языков поиска данных» . Материалы 6-го симпозиума ACM SIGACT-SIGPLAN по принципам языков программирования - POPL '79 . Нью-Йорк, Нью-Йорк, США: ACM Press: 110–119. дои : 10.1145/567752.567763 . S2CID 3242505 .
- ^ Эббингауз и Флум, с. 121
- ^ Эббингауз и Флум, с. 121
- ^ Иммерман 1999, с. 161
- ^ Абитбул, С.; Виану, В. (1989). «Расширения Fixpoint логики первого порядка и языков, подобных журналам данных» . [1989] Труды. Четвертый ежегодный симпозиум по логике в информатике . IEEE-компьютер. Соц. Нажимать. стр. 71–79. дои : 10.1109/lics.1989.39160 . ISBN 0-8186-1954-6 . S2CID 206437693 .
- ^ Иммерман, Нил (1986). «Реляционные запросы, вычисляемые за полиномиальное время» . Информация и контроль . 68 (1–3): 86–104. дои : 10.1016/s0019-9958(86)80029-8 .
- ^ Варди, Моше Ю. (1982). «Сложность реляционных языков запросов (расширенное резюме)». Материалы четырнадцатого ежегодного симпозиума ACM по теории вычислений - STOC '82 . Нью-Йорк, штат Нью-Йорк, США: ACM. стр. 137–146. CiteSeerX 10.1.1.331.6045 . дои : 10.1145/800070.802186 . ISBN 978-0897910705 . S2CID 7869248 .
- ^ Эббингауз и Флум, с. 242
- ^ Юрий Гуревич и Сахарон Шелах, Расширение логики первого порядка с фиксированной точкой, Анналы чистой и прикладной логики 32 (1986) 265–280.
- ^ Эббингауз и Флум, стр. 179, 193.
- ^ Jump up to: а б Иммерман, Нил (1983). «Языки, охватывающие классы сложности» . Материалы пятнадцатого ежегодного симпозиума ACM по теории вычислений - STOC '83 . Нью-Йорк, Нью-Йорк, США: ACM Press. стр. 347–354. дои : 10.1145/800061.808765 . ISBN 0897910990 . S2CID 7503265 .
- ^ Иммерман, Нил (1988). «Недетерминированное пространство закрыто при дополнении» . SIAM Journal по вычислительной технике . 17 (5): 935–938. дои : 10.1137/0217058 . ISSN 0097-5397 .
- ^ Иммерман 1999, с. 63
- ^ Иммерман 1999, с. 82
- ^ Иммерман 1999, с. 84
- ^ Иммерман 1999, с. 58
- ^ Иммерман 1999, с. 161
Ссылки
[ редактировать ]- Эббингауз, Хайнц-Дитер; Флум, Йорг (1999). Теория конечных моделей . Перспективы математической логики (2-е изд.). Спрингер. дои : 10.1007/978-3-662-03182-7 . ISBN 978-3-662-03184-1 .
- Нил, Иммерман (1999). Описательная сложность . Спрингер. ISBN 0-387-98600-6 . OCLC 901297152 .