УДК 510.53, 510.643 Дата подачи статьи: 21.03.18
Б01: 10.15827/0236-235Х.031.3.591-597 2018. Т. 31. № 3. С. 591-597
Алгоритмическая неразрешимость проблемы первопорядковой определимости формул логики ветвящегося времени
М.Н. Рыбаков 1 2> 3, к.ф.-м..н., доцент, научный сотрудник, инженер-программист, т_гуЬако1@таИ. ги
Л.А. Чагрова 1, к.ф.-м..н., доцент, chngrovy@mail.ru
1 Тверской государственный университет, г. Тверь, 1 70100, Россия
2 Университет Витватерсранда, г. Йоханнесбург, 2001, Южная Африка
3 НИИ «Центрпрограммсистем»>, г. Тверь, 1 70024, Россия
В качестве формального средства, описывающего свойства различных структур (в том числе структур вычислений), обычно используют язык логики предикатов. Этот язык, с одной стороны, понятен и удобен, а с другой, многие вопросы, важные с прикладной точки зрения, для него алгоритмически неразрешимы, то есть не могут быть решены программно.
Сейчас существует много альтернативных языков, позволяющих описывать вычисления и их свойства, при этом, в отличие от языка логики предикатов, аналогичные вопросы для них алгоритмически разрешимы. В работе рассматривается один из таких языков - язык логики ветвящегося времени СТЬ. Он используется для верификации программ, так как содержит средства для описания свойств программных вычислений, в частности, свойств бинарного отношения, возникающего в реляционной семантике Крипке.
В работе исследуется возможность алгоритмического нахождения формул языка первого порядка, которые задают те же классы шкал Крипке, что и формулы языка логики СТЬ. Известно, что для интуицинистских формул проблема их первопорядковой определимости алгоритмически неразрешима. Показано, как, используя перевод Гёделя интуиционистских формул в модальные, а затем перевод получившихся модальных формул в формулы языка логики СТЬ, свести проблему первопорядковой определимости интуиционистских формул на шкалах Крипке к проблеме первопо-порядковой определимости СТЬ-формул на шкалах Крипке. В качестве следствия такого сведения получена алгоритмическая неразрешимость соответствующей проблемы для СТЬ.
В заключении обсуждаются возможные модификации приведенной конструкции с целью распространения полученного результата на фрагменты языка логики СТЬ, а также алгоритмическая разрешимость проблемы СТЬ-определимости формул первого порядка.
Ключевые слова: модели вычислений, логика ветвящегося времени, первопорядковая определимость.
Язык логики ветвящегося времени CTL (computational tree logic) - удобное и эффективное средство для описания свойств различных сложных вычислительных систем, в том числе с целью их последующей верификации [1, 2]. Его существенным отличием от хорошо известного и широко используемого языка логики предикатов QCL является то, что важные для прикладного аспекта задачи общезначимости и выполнимости CTL-формул разрешимы [3], в то время как для проблем тождественной истинности и выполнимости формул языка логики QCL разрешающей процедуры не существует в принципе [4].
Оба языка позволяют описывать свойства (серийного) бинарного отношения: свойства отношения достижимости в шкалах Крипке для CTL, с одной стороны, могут быть описаны с помощью модальностей языка CTL, а с другой - с помощью формул языка логики предикатов, содержащих предикатную букву R для отношения достижимости, R* для его рефлексивно-транзитивного замыкания, а также символ равенства. Многие условия, выражаемые на одном из этих языков, могут быть выражены и на другом. Таковыми являются, например, условия рефлексивности, симметричности и транзитивности отношения достижимости, а также многие другие. Но, скажем, условие ирре-
флексивности не может быть выражено средствами языка логики СТЬ, а в языке логики QCL выражается формулой Ух —(хЯх). И наоборот: например, условие, выраженное формулой Маккинси АХ—АХ—р ^ —АХ—АХр, не может быть выражено никакой формулой языка логики QCL.
В связи с этим возникают, как минимум, два вопроса. Первый: как по формуле одного из этих языков установить, существует ли ее эквивалент во втором языке? Второй: если такой эквивалент существует, то как его найти?
Частично ответы на эти вопросы известны. Так, для мономодального языка имеется класс так называемых формул Салквиста [5-7], а для предикатного - так называемых формул Крахта [8, 9]. Между этими классами установлено соответствие, связывающее каждую формулу одного из них с ее эквивалентом в другом. Но ни формулы Салквиста, ни формулы Крахта не описывают все условия, выражаемые на языках логик СТЬ и QCL. Отметим, что недавно получены обобщения формул Салкви-ста и формул Крахта [10-13], а также ряд результатов, касающихся взаимосвязи между определимостью различных условий и запросами [14, 15].
В данной работе рассматривается ситуация без ограничений, то есть для полных языков, а не для специальных их фрагментов типа формул Салкви-
ста, формул Крахта или их обобщений. При этом показано, что, хотя язык логики QCL алгоритмически более выразителен, чем язык CTL, тем не менее, не существует алгоритма, который по произвольной формуле языка CTL давал бы ответ на вопрос, существует ли эквивалент этой формулы в языке QCL. Чтобы показать это, будем использовать фундаментальные результаты из [16], полученные для интуиционистской логики Int и ее модального напарника S4, который, как будет показано, встроен в CTL. Приводимые здесь результаты не являются неожиданными для специалистов по теории соответствий (Correspondence Theory), но могут оказаться интересными тем, кто не знаком с этой теорией, но пользуется средствами языка логики CTL для верификации программ.
Синтаксис и семантика
Коротко напомним, как устроены языки логик CTL, S4 и Int, а также одна из возможных их семан-тик (см. более детально [1, 2, 6]).
Каждый из этих языков содержит счетное множество пропозициональных переменных, логические связки Л (конъюнкция), V (дизъюнкция), ^ (импликация), — (отрицание), логические константы 1 (ложь) и Т (истина), а также скобки. При этом язык логики S4 содержит дополнительно модальность □, а язык CTL - модальности АХ, ЕХ, AF, EF, AG, EG, AU, EU. Модальность □ позволяет строить формулы вида □ф, читаемые как «необходимо <р». Модальности языка логики CTL являются составными, при этом первые шесть - одноместные, они позволяют строить формулы вида АХф, ЕХ(р, AFy, EFy, AG(p и EG<p, а две последние -двухместные, они позволяют строить формулы вида (фАи^) и (фЕи^). Каждая из этих модальностей состоит из двух частей: первая - А или E, вторая - X, F, G или U. Части А и Е называются кванторами пути и соответствуют выражениям «для каждого пути верно, что...» (А - от all) и «существует такой путь, что.» (Е - от exists). Части X, F, G и U называются кванторами состояний и соответствуют выражениям «в следующем состоянии данного пути.» (X - от next), «в некотором состоянии данного пути. » (F- от future), «в каждом состоянии данного пути.» (G - от globally) и «в состояниях данного пути справедливо., пока не станет справедливо.» (U - от until). Так, EGp означает, что «существует путь, в каждом состоянии которого верно ф», а формула (фЕиф) - что «существует путь, в состояниях которого верно ф, пока не станет верным *ф».
Для оценки истинности формул каждого из языков будем использовать семантику С. Крипке. Шкала Крипке - это набор Т = (W, R), где W - непустое множество, а R - бинарное отношение на W. Элементы W принято называть точками, состояниями или мирами, а отношение R - отношением
достижимости. Если выполнено условие xRy, то говорим, что из точки х достижима точка у. В случае CTL дополнительно требуется, чтобы отношение достижимости в шкалах было серийным (серийность R выражается следующей формулой логики предикатов: VxSy (xRy)). В случае S4 отношение достижимости должно быть рефлексивным (то есть Vx (xRx)) и транзитивным (то есть VxVyVz (xRy А yRz ^ xRz)), а в случае Int - рефлексивным, транзитивным и антисимметричным (то есть VxVy (xRy А yRx ^ х = у)). Оценкой в шкале Т = (W, R) называется функция v, которая каждой пропозициональной переменной р сопоставляет некоторое подмножество v(p) множества W. Содержательно условие х е v(p) означает, что переменная р истинна в точке х. При этом в случае интуиционистской логики дополнительно требуется наследственность оценки, то есть следующее условие: если х е v(p) и xRy, то у е v(p). Модель Крипке - это набор М = (W, R, v), где (W, R) -шкала Крипке, а v - оценка в этой шкале.
Путем в шкале Т = (W, R) называется бесконечная последовательность п = (по, ш, П2, ш, ...) состояний (необязательно различных), в которой для каждого к выполнено условие nkRnk+i; при этом по называется началом пути п. Заметим, что в случае серийности отношения R каждое состояние является началом хотя бы одного пути.
Для модели М = (W, R, v), точки х е W и CTL-формулы ф определим отношение истинности М, х И ф (читается: в точке х модели М истинна формула ф). Оно определяется классически для А, V, —, 1 и Т, а для модальностей - в соответствии с вкладываемым в них смыслом:
- М, х И АХф, если для каждого пути п, начинающегося в х, верно, что М, ni И ф;
- М, х И AFy, если в каждом пути п, начинающемся в х, существует такое состояние ш, что М, Пк И ф;
- М, х И AGy, если в каждом пути п, начинающемся в х, для каждого состояния Пк верно, что М, ПкИ ф;
- М, х И фАи*ф, если в каждом пути п, начинающемся в х, существует состояние ш, для которого М, Пк И 'ф, при этом для каждого т, строго меньшего к, верно, что М, пт И ф;
- М, х И ЕХф, если существует такой начинающийся в х путь п, что М, ni И <р;
- М, х И EFy, если существует такой начинающийся в X пути п, для некоторого состояния Пк которого верно, что М, Пк И ф;
- М, х И EGy, если существует такой начинающийся в X путь п, для каждого состояния Пк которого верно, что М, Пк И ф;
- М, х И фЕиф, если в некотором начинающемся в х пути п существует состояние ш, для которого М, Пк И , при этом для каждого т, строго меньшего к, верно, что М, пт И ф.
Формула ф истинна в модели, если ф истинна в каждом состоянии этой модели. Формула ф истинна в шкале, если ф истинна в каждой модели, определенной на этой шкале.
Для случая 84-формул аналогичное определение требует следующей корректировки:
- М, х И О^, если для каждого у е W, достижимого из х по R, верно, что М, у И ф.
Для случая интуиционистских формул ситуация иная. Определение истинности для переменных, а также для логических связок Л, V, 1 и Т внешне не отличается от классического случая, а истинность связок ^ и — определяется иначе:
- М, х И ф^ если для каждого у е W, достижимого из х по R, из условия М, у И ф следует, что М, у И
- М, х И —ф, если для каждого у е W, достижимого из х по R, неверно, что М, у И ф.
Пусть Cs, Cr, Ct и Ca - классы всех серийных, всех рефлексивных, всех транзитивных и всех антисимметричных шкал. Пусть также CRT = CR П CT и Crta = Crt П Ca. Определим логики CTL, S4 и Int как множества формул в соответствующих языках, истинных во всех шкалах из Cs, Crt и Crta (при подходящем определении отношения истинности), соответственно. Каждая формула ф задает некоторый класс шкал, в которых она истинна, являющийся подклассом Cs, Crt или Crta в зависимости от того, в языке какой логики определена ф; обозначим этот класс посредством C(^).
Погружения S4 в CTL и Int в S4
Опишем некоторые связи между языками логик CTL, S4 и Int, позволяющие в ряде случаев задавать классы шкал Крипке формулами одного из этих языков, если известно, как можно это сделать в другом.
Заметим, что $4-формулы моделируются CTL-формулами. Определение истинности формулы АХф можно переписать в эквивалентном виде следующим образом: М, х И АХф тогда и только тогда, когда для каждого у е W, достижимого из х по R, верно, что М, у И ф. Такая формулировка по своей форме в точности соответствует определению истинности формулы вида Оф. Но имеется существенное отличие: в случае шкал для CTL отношение достижимости является серийным, а в случае шкал для s4 - рефлексивным и транзитивным. Из рефлексивности бинарного отношения следует его серийность, но из серийности не следуют ни рефлексивность, ни транзитивность. Тем не менее, можно ввести в рассмотрение отношение R*, определив его как рефлексивно-транзитивное замыкание отношения R. В случае шкал логики S4 получаем, что R* = R и определение истинности для формулы Оф не изменится при замене в нем R на R*. А в случае CTL при замене R на R* в приведенном определении истинности формулы АХф полу-
чим определение истинности формулы Айф: Ж, х И Айф тогда и только тогда, когда для каждого у е W, достижимого из х по R*, верно, что Ж, у И ф. Так происходит из-за того, что достижимость по R* как раз и дает все точки всех путей, выходящих из данной точки, то есть соответствует модальности AG.
Это наблюдение позволяет сделать следующий вывод. Пусть f - функция, которая заменяет в произвольной S4-формуле ф каждое вхождение символа □ вхождением модальности AG. Для каждой шкалы Т = {W, R) определим шкалу Т*, положив Т* = (W, R*); тогда, если Т е Cs, то Т* е Crt. Справедливо следующее утверждение.
Утверждение 1. Пусть ф - SA-формула и Т е Cs. Тогда Т* И ф^ Т И f'(<p).
Замечание 1. В частности, это означает, что ф е S4 ^ f(ф) е CTL.
Следствие 1. Для всякой SA-формулы ф имеет место равенство С(ф) = С(/(ф)) П CRT.
Таким образом, если известен класс шкал, задающий f(ф) в классе Cs, то известен и класс шкал, задающий ф в классе Crt.
Покажем, как моделировать интуиционистские формулы S4-формулами. Для этих целей можно использовать перевод Гёделя t, который действует так: он ставит модальность □ перед каждой пропозициональной переменной, логической константой, отрицанием и импликацией [6]. Например, t(-p Л q^ 1) = □ (□-□р Л □q^ □!).
Для перевода Гёделя верно следующее [6]: Ф е Int ^ Ь(ф) е S4. Рассмотрим, как связаны классы шкал, определяемые формулами ф и Ь(ф). Пусть Т = (W, R) - шкала логики S4, то есть Т е Crt. Разобьем множество W на классы эквивалентности по отношению R, где класс [х], порожденный точкой х, определяется обычно: [х] = = {у е W : xRy и yRx}. Класс [х] называют сгустком, или кластером. Пусть W# - множество получившихся сгустков в шкале Т, а R# - отношение достижимости на W#, определяемое следующим образом: [x]R#[y], если xRy. Пусть Т# = (W#, R#). Если Т е Crta, то шкала Т# изоморфна шкале Т, поскольку в этом случае [х] = {х}. В случае, когда Т е Crt (в частности, и если Т е Crta), получаем, что Т# е Crta, причем единственным отличием шкалы Т# от шкалы Т будет то, что каждый сгусток «схлопнется» в одну точку. Из-за условия наследственности оценки интуиционистские формулы не могут различить точки из одного сгустка, а потому не могут этого сделать и их образы при переводе Гёделя. Таким образом, справедливо следующее утверждение.
Утверждение 2. Пусть ф - интуиционистская формула и Т е Crt. Тогда Т# И ф ^ Т И Ь(ф).
Следствие 2. Для всякой интуиционистской формулы ф имеет место следующее равенство: С(ф) = С(С(ф)) П Crta.
Из следствий 1 и 2 получаем результат, описывающий связь между интуиционистским языком и языком логики СТЬ.
Следствие 3. Для всякой интуиционистской формулы <р имеет место равенство С(<р) = = С(/(^))) П Сятл.
Логика предикатов и шкалы Крипке
Обратимся к языку первого порядка, то есть к языку логики предикатов РСЬ. Рассмотрим не весь язык логики предикатов, а только ту его часть, которая позволяет описывать свойства отношения достижимости в моделях Крипке. Будем считать, что в языке логики предикатов имеются счетное множество предметных переменных, бинарная предикатная буква Д, соответствующая отношению достижимости в шкалах Крипке, символ равенства =, а также логические связки, кванторы по предметным переменным и технические символы (скобки). Тогда каждую шкалу Крипке Т = {Ш, Я) можно понимать как модель описанного фрагмента языка логики ОСЬ, в результате чего для предикатной формулы Ф получаем естественное определение отношения истинности в шкале Т; если Ф истинна в Т, то пишем Т И Ф. Так, например, если Ф = Ух (хЯх), то Т И Ф тогда и только тогда, когда отношение достижимости в Т рефлексивно. Далее под формулами языка логики предикатов будем понимать только замкнутые формулы, то есть не содержащие свободных переменных. Пусть С(Ф) - класс шкал, в которых истинна формула Ф.
В случае семантики СТЬ для описания свойств отношения достижимости И наряду с символами И и = целесообразно использовать также символ R*, соответствующий рефлексивно-транзитивному замыканию отношения Д. Тогда выразительные свойства предикатного языка существенно повышаются: проблема истинности формул становится не только алгоритмически неразрешимой, но и рекурсивно непе-речислимой. Для предикатной формулы Ф в языке с символами =, И и И* класс шкал, в которых истинна Ф, также будем обозначать С(Ф).
Здесь будет важным следующее.
Утверждение 3. Пусть Ф - формула в языке с символами =, И и И*, причем С(Ф) £ Свл-. Тогда существует такая формула V в языке с символами И и =, что С(Ф) = С(^).
Доказательство. Поскольку С(Ф) £ Скг, формула Ф определяет в шкалах отношение Д, являющееся рефлексивно-транзитивным. Следовательно, его рефлексивно-транзитивное замыкание совпадает с ним самим, то есть Д* = Д. Таким образом, в качестве V можно взять формулу, получающуюся из Ф заменой каждого вхождения символа Д* на Д.
Утверждение доказано.
Определимость классов шкал формулами
Класс шкал С называется определимым формулами языка логики L, если существует такая фор-
мула ф языка логики L, что выполняется равенство C = C(^). Например, Cs = C(Vx3y (xRy)), то есть CS является определимым предикатными формулами, или, как принято говорить, первопорядково определимым. Поскольку условия рефлексивности, транзитивности и антисимметричности также описываются предикатными формулами, то классы шкал Cr, Ct и Ca тоже первопорядково определимы. Именно, пусть refQCL, ü"qcl и asymQCL - это формулы Vx (xRx), VxVyVz (xRy Л yRz ^ xRz) и VxVy (xRy Л yRx ^ x = у), соответственно; тогда Cr = C(refQCL), Ct = C(ü-qcl), Ca = C(asymQCL). Условия рефлексивности и транзитивности можно описать и CTL-формулами: взяв refCTL = АХр ^ р и trCTL = АХр ^ АХАХр, получим, что Cr = C(refCTL) и Ct = C(trCTL).
Сделаем следующее наблюдение.
Утверждение 4. Пусть классы Ci и C2 определимы формулами языка одной из логик Int, S4, CTL или QCL. Тогда класс C1 П C2 тоже является определимым формулами языка этой же логики.
Доказательство. Достаточно заметить: если C1 определяется формулой ф1, а C2 - формулой ф2, то C1 П C2 определяется формулой ф1 Л ф2.
Утверждение доказано.
Отметим, что для операции объединения аналогичное утверждение тоже выполняется, а для дополнения ситуация иная. В предикатном случае, если Ф задает некоторый класс шкал, —Ф задает его дополнение. В случае же логик Int, S4 и CTL это не так. Например, в CTL условие рефлексивности описывается формулой refCTL, условие транзитивности - формулой trCTL, условие симметричности -формулой symCTL = р^ АХ—АХ—р, при этом условия нерефлексивности, нетранзитивности, несимметричности (и антисимметричности) формулами языка CTL описать невозможно. Так, отрицание формулы refCTL = АХр ^ р, задающей условие рефлексивности в шкалах, можно опровергнуть в любой шкале логики CTL, в том числе в нерефлексивной: достаточно взять оценку, при которой переменная р истинна в каждой точке шкалы, и тогда формула refCTL станет истинной в каждой точке получившейся модели, а — refCTL - ложной. Таким образом, —refCTL не задает условие нерефлексивности (формула —refCTL вообще определяет пустой класс шкал логики CTL). Ситуация с остальными указанными формулами аналогична.
Точные формулировки вопросов
Теперь можно дать точные формулировки вопросов, о которых шла речь в начале статьи.
Вопрос 1. Существует ли алгоритм, который по произвольной CTL-формуле <р дает ответ на вопрос о том, существует ли такая предикатная формула Ф, что C(^) = C^)?
Вопрос 2. Существует ли алгоритм, который по произвольной CTL-формуле <р строит такую
предикатную формулу Ф, что С(ф) = С(Ф), а в случае ее отсутствия сообщает об этом?
Вопрос 3. Существует ли алгоритм, который по произвольной предикатной формуле Ф дает ответ на вопрос о том, существует ли такая CTL-формула ф, что С(<р) = С(Ф)?
Вопрос 4. Существует ли алгоритм, который по произвольной предикатной формуле Ф строит такую CTL-формулу ф, что С(<р) = С(Ф), а в случае ее отсутствия сообщает об этом?
Конечно, вопросы связаны между собой. Если ответ на вопрос 2 положителен, то и ответ на вопрос 1 положителен; соответственно, отрицательный ответ на вопрос 1 приводит к отрицательному ответу на вопрос 2. То же относится и к вопросам 3 и 4. Покажем, как из известных результатов о связи между Int и QQL получить ответ на вопросы 1 и 2; в отношении же вопросов 3 и 4 ограничимся формулировкой гипотезы.
Формулу ф языка логики L будем называть перво-порядково определимой, если класс С(<р) определим с помощью формул языка логики предикатов, то есть если существует такая предикатная формула Ф, что С(<р) = С(Ф). Под проблемой первопорядковой определимости формул языка логики L будем понимать следующую задачу: по произвольной L-формуле ф выяснить, является ли ф первопорядково определимой. Для краткости первопорядково определимые формулы будем называть ППО-формулами.
Известен следующий результат для Int и QGL, доказанный в [16]: проблема первопорядковой определимости интуиционистских формул алгоритмически неразрешима, то есть не существует алгоритма, решающего эту задачу. Покажем, как из этого результата и сделанных выше наблюдений следует аналогичный результат для языков CTL и QGL.
Неразрешимость первопорядковой определимости CTL-формул
Пусть функция g определена для каждой интуиционистской формулы ф следующим образом: 9(<Р) = f(t((P)) Л refoTL Л trCTL.
Утверждение 5. Пусть ф - интуиционистская формула. Тогда С(ф) = С(д(ф)) П Сл.
Доказательство. Согласно следствию 3, имеем С(ф) = С(/(£(^))) П Скгл. По утверждению 4, С(дШ = aj(t(<p))) П С(ге^) П С(й^). Поскольку Ся = С(гс£с^) и Ст = С(йСлъ), получаем, что С(д(ф)) = С(/(£(<р))) П Си П Ст, следовательно, С(д(ф)) П Сл = С(/(£(<р))) П Си П Ст П Сл, то есть С(д(ф)) П Сл = С([(Ь(ф))) П Сятл. В итоге получаем С(ф) = С(д(ф)) П Сл, что и требовалось.
Утверждение доказано.
Следствие 4. Пусть ф - интуиционистская формула. Тогда, если д(ф) - ППО-формула, то ф -тоже ППО-формула.
Доказательство. Пусть Ф - формула языка логики предикатов, для которой выполнено равен-
ство С(д(ф)) = С(Ф). Согласно утверждению 5, С(ф) = С(д(ф)) П Ca. Класс Ca первопорядково определим, и тогда из утверждения 4 получаем, что класс С(Ф) П Ca тоже первопорядково определим. Поскольку он равен С(^), заключаем, что ф - ППО-формула.
Следствие доказано.
Следствие 5. Пусть ф - интуиционистская формула. Тогда, если ф - ППО-формула, то д(ф) -тоже ППО-формула.
Доказательство. Пусть Ф - формула логики предикатов, для которой С(ф) = С(Ф). Тогда, согласно утверждению 5, С(ф) = С(д(ф)) П Ca, отсюда получаем С(Ф) = С(д(ф)) П Ca. Шкалы класса С(ф) являются рефлексивными, транзитивными и антисимметричными, поэтому формула Ф должна, в частности, требовать выполнения каждого из этих условий. Формула д(ф) требует выполнения рефлексивности и транзитивности, но, вообще говоря, не антисимметричности.
Пусть Т = (W, R) - некоторая шкала из класса С(д(ф)). Поскольку С(д(ф)) = C(f(t(fp))) П Crt, получаем, что Т е C(/(t(^))) и Т е Crt. Из условия Т е Crt следует, что R* = R, а значит, Т* = Т. Из того, что Т* е C(/(t(^))), по утверждению 1 получаем, что Т е C(t(^)). Кроме того, из условия Т е Crt следует, что Т# е Crta. Но тогда, по утверждению 2, Т# е С(^). Шкала Т отличается от Т# лишь тем, что каждый сгусток в Т заменяется в Т# одной точкой. Пусть теперь Т\ е С(^). Тогда из сделанного наблюдения вытекает следующее: если Т - такая шкала, что Т# изоморфна шкале Т\, то Т е С(д(ф)). Следовательно, для описания шкал из класса С(д(ф)) достаточно в формуле Ф понимать переменные не как точки, а как сгустки. Заменим в Ф каждую подформулу вида xRy на формулу VuVv (xRu A uRx A yRv A vRy ^ uRv), где и и v -некоторые не входящие в Ф переменные; получившуюся предикатную формулу обозначим Ф#. Суть сделанной замены в том, что условие достижимости точки у из точки х заменяется на условие достижимость любой точки v е [у] из любой точки и е [х]. Тогда С(Ф#) = С(д(ф)), а значит, д(ф) -ППО-формула.
Следствие доказано.
Следующее утверждение вытекает из следствий 4 и 5.
Следствие 6. Для любой интуиционистской формулы ф справедлива следующая эквивалентность: ф - ППО-формула тогда и только тогда, когда g (ф) - ППО-формула.
Теперь можно доказать основной результат работы.
Теорема. Проблема первопорядковой определимости CTL-формул алгоритмически неразрешима.
Доказательство. Предположим, что это не так, то есть существует алгоритм <А, который по любой CTL-формуле ф находит ответ на вопрос о том, су-
ществует ли такая предикатная формула Ф, для которой выполнено равенство С(^) = С(Ф). Покажем, что в этом случае проблема первопорядковой определимости интуиционистских формул тоже должна быть алгоритмически разрешима, что противоречит упомянутому выше результату из [16].
Пусть (р - произвольная интуиционистская формула. Применим алгоритм <А к СТЬ-формуле д(ф). Если результат работы <А на ф будет положительным, то, согласно следствию 6, ф является ППО-формулой; если же результат будет отрицательным, то, снова по следствию 6, ф не является ППО-формулой. Таким образом, с помощью преобразования д и алгоритма <А можно решить проблему первопорядковой определимости интуиционистских формул, а это противоречит результату из [16]. Значит, такого алгоритма <А не существует.
Теорема доказана.
Заключение
При формулировке понятия первопорядковой определимости был установлен запрет на использование для описания классов шкал буквы Д*, соответствующей рефлексивно-транзитивному замыканию отношения достижимости в шкалах Крипке. Поэтому выясним, изменится ли что-нибудь, если разрешить использовать Д* для описания классов шкал. Такое расширение языка представляется естественным, поскольку при описании вычислений бывает важно не только то, что происходит на следующем шаге вычисления (этому соответствует Д), но и то, что может произойти когда-либо (этому соответствует Д*). Проблема определимости СТЬ-формул в таком обогащенном языке тоже будет алгоритмически неразрешимой. Достаточно заметить, что преобразование д строит формулу д(ф), требующую от отношения достижимости, чтобы оно было рефлексивным и транзитивным. Тогда, согласно утверждению 3, если существует такая формула Ф в языке с Д*, что С(Ф) = С(д(ф)), то существует и формула V в языке без Д*, для которой выполняется равенство С(^) = С(д(ф)).
Следующий уместный вопрос: какова ситуация с первопорядковой определимостью естественных фрагментов языка СТЬ, в частности, таких, в которых не будет модальности АС? Во-первых, заметим, что АС можно промоделировать, используя Еи: формула АСф эквивалентна в СТЬ формуле —ЕР—ф, при этом ЕРф эквивалентна в СТЬ формуле ТЕЦф. Во-вторых, в приведенных выше рассуждениях можно вообще обойтись без модальности АС и использовать только АХ. Для этого в определении функции [ надо заменить АС на АХ. Причем для полученной модификации [ уже не будет выполняться аналог утверждения 1; если же добавить конъюнктивные члены ге£СТЬ и 1тСТЬ, то аналог утверждения 1 будет справедлив.
Итак, согласно доказанной теореме, ответ на вопросы 1 и 2 отрицателен, причем даже для до-
вольно простых фрагментов языка логики CTL. Что касается вопросов 3 и 4, то ответ на них не получить так же просто, как это было сделано для решения вопросов 1 и 2 (хотя известно, что проблема определимости предикатных формул интуиционистскими алгоритмически неразрешима): в приведенном доказательстве авторы, по сути, лишь воспользовались тем, что интуиционистские связки можно промоделировать средствами CTL, но как сделать обратное - непонятно, поскольку язык логики CTL является более богатым по своим выразительным возможностям и подходящий перевод CTL-формул в интуиционистские неизвестен (и, видимо, невозможен). Таким образом, вопросы 3 и 4 требуют отдельного исследования и иных методов решения. Тем не менее, сформулируем предположение.
Гипотеза. Проблема CTL-определимости формул логики предикатов алгоритмически неразрешима.
Работа выполнена при поддержке РФФИ, гранты №№ 16-07-01272, 17-03-00818-ОГН и 18-011-00869.
Литература
1. Кларк Э.М., Грамберг О., Пелед Д. Верификация моделей программ: Model checking. М.: Изд-во МЦНМО, 2002, 416 с.
2. Карпов Ю.Г. Model checking: Верификация параллельных и распределенных программных систем. СПб: БХВ-Петер-бург, 2010, 560 с.
3. Emerson E.A., Halpern J.Y. Decision procedures and expressiveness in the temporal logic of branching time. J. of Comp. and Syst. Sc., 1985, vol. 30, no. 1, pp. 1-24. DOI: http://dx.doi.org/ 10.1016/0022-0000(85)90001-7.
4. Булос Дж., Джеффри Р. Вычислимость и логика. М.: Мир, 1994, 396 с.
5. Blackburn P., de Rijke M., Venema Y. Modal logic. Cambridge Univ. Press, 2002.
6. Chagrov A.V., Zakharyaschev M.V. Modal logic. Oxford Univ. Press, 1997.
7. Sahlqvist H.. Completeness and correspondence in the first and second order semantics for modal logic. Proc. 3rd Scandinavian Logic Symposium, Amsterdam, North-Holland, 1975, pp. 110-143. DOI: http://dx.doi.org/10.1016/S0049-237X(08)70728-6.
8. Kracht M. How completeness and correspondence theory got married. In: M. de Rijke (Ed.), Diamonds and Defaults, 1993, pp. 175-214. DOI: http://dx.doi.org/10.1007/978-94-015-8242-1_7.
9. Kracht M.. Tools and techniques in modal logic. Studies in Logic and the Foundations of Mathematics, Elsevier, 1999, vol. 142, 559 p.
10. Balbiani P., Kikot S. Sahlqvist theorems for precontact logics. Advances in Modal Logic, 2012, vol. 9, pp. 55-70.
11. Kikot S. A new generalization of Sahlqvist theorem. In Algebraic and Topological Methods in Non-classical Logics II, Univ. de Barcelona, 2005, pp. 40-41.
12. Kikot S. An extension of Kracht's theorem to generalized Sahlqvist formulas. J. of Applied Non-Classical Logic, 2009, vol. 19, no. 2, pp. 227-251. DOI: http://dx.doi.org/10.3166/jancl.19.227-251.
13. Kikot S. Semantic characterization of Kracht's formulas. Advances in Modal Logic. 2010, vol. 8, pp. 218-234.
14. Kikot S., Tsarkov D., Zakharyaschev M., Zolin E.. Query Answering via Modal Definability with FaCT++. In Proc. of DL, 2013.
15. Kikot S., Zolin E. Modal definability of first-order formulas with free variables and query answering. J. of Applied Logic, 2013, vol. 11, pp. 190-216. DOI: http://dx.doi.org/10.1016/jjal.2013.03.007.
16. Chagrova L.A. An undecidable problem correspondence theory. J. of Symbolic Logic, 1991, vol. 56, iss. 4, pp. 1261-1272. DOI: http://dx.doi.org/10.2307/2275473.
17. Мендельсон Э. Введение в математическую логику. М.: Наука, 1976, 320 с.
Software & Systems
DOI: 10.15827/0236-235X.031.3.591-597
Received 21.03.18 2018, vol. 31, no. 3, pp. 591-597
Algorithmic undecidability of the problem of first-order correspondence of computational tree logic formulas
M.N. Rybakov 1 2 3, Ph.D. (Physics and Mathematics), Associate Professor, Research Fellow, Software Engineer, m_rybakov@mail. ru
L.A. Chagrova 1, Ph.D. (Physics and Mathematics), Associate Professor, chagrovy@mail.ru
1 Tver State University, Tver, 170100, Russian Federation
2 University of the Witwatersrand, Johannesburg, 2001, South Africa
3 R&D Institute Centerprogramsystem, Tver, 170024, Russian Federation
Abstract. It is common to use the first-order language as a formal tool for describing properties of various (computational) structures. On the one hand, this language is well understood and easy to use; on the other, many questions that are important from the applications point of view related to this language are algorithmically undecidable, i.e., cannot be answered using a computer program.
These days, there exist various alternative languages that can be used for describing computational processes and their properties, for which the corresponding questions are, in contrast to the first-order language, algorithmically decidable. In this paper, we consider one of such languages, - the language of the Computational Tree Logic (CTL). It is commonly used for program verification as it is capable of describing properties of computational processes, - in particular, properties of the binary relation used in the Kripke semantics.
The authors investigate the possibility of finding algorithmically first-order formulas defining the same classes of Kripke frames as the formulas of the language of CTL. It is well known the problem of finding first-order correspondents of proposi-tional intuitionistic formulas is algorithmically undecidable. The authors reduce - using the Godel translation of intuitionistic formulas into modal ones, and subsequently a translation of resultant modal formulas into CTL-formulas - the first-order correspondence problem for propositional intuitionistic formulas to the first-order correspondence problem for CTL-formulas on Kripke frames. As a result of this reduction, they prove that the first-order correspondence problem for CTL-formulas is algorithmically undecidable.
In the conclusion, the authors discuss some possible modifications of their construction for fragments of the language of CTL as well as algorithmic decidability of the CTL correspondence problem for first-order formulas. Keywords: computational models, computational tree logic, first-order definability.
Acknowledgements. The work has been supported by RFBR, projects no. 16-07-01272, 17-03-00818, and 18-011-00869.
1. Clarke E.M., Grumberg O., Peled D. Model Checking. MIT Press, 1999, 314 p.
2. Karpov Yu.G. Model Checking: Vefification of Parallel and Distributive Software Systems. St. Petersburg, BHV-Peterburg Publ., 2010, 560 p.
3. Emerson E.A., Halpern J.Y. Decision procedures and expressiveness in the temporal logic of branching time. J. of Comp. and Syst. Sciences. 1985, vol. 30, no. 1, pp. 1-24.
4. Boolos G.S., Jeffrey R.C. Computability and Logic. 3rd ed. Cambrige Univ. Press, 1989.
5. Blackburn P., de Rijke M., Venema Y. Modal logic. Cambridge Univ. Press, 2002.
6. Chagrov A.V., Zakharyaschev M.V. Modal Logic. Oxford Univ. Press, 1997.
7. Sahlqvist H. Completeness and correspondence in the first and second order semantics for modal logic. Proc. 3rd Scandinavian Logic Symp. Amsterdam, North-Holland, 1975, pp. 110-143.
8. Kracht M. How completeness and correspondence theory got married. Diamonds and Defaults. M. de Rijke (Ed.). 1993, pp. 175-214.
9. Kracht M. Tools and Techniques in Modal Logic. Studies in Logic and the Foundations of Mathematics. Elsevier Publ., 1999, 142 p.
10. Balbiani P., Kikot S. Sahlqvist theorems for precontact logics. Advances in Modal Logic. 2012, vol. 9, pp. 55-70.
11. Kikot S. A new generalization of Sahlqvist theorem. Algebraic and Topological Methods in Non-classical Logics II. Barcelona, 2005, pp. 40-41.
12. Kikot S. An extension of Kracht's theorem to generalized Sahlqvist formulas. J. of Applied Non-Classical Logic. 2009, vol. 19, no. 2, pp. 227-251.
13. Kikot S. Semantic characterization of Kracht's formulas. Advances in Modal Logic, 2010, vol. 8, pp. 218-234.
14. Kikot S., Tsarkov D., Zakharyaschev M., Zolin E. Query Answering via Modal Definability with FaCT++: First Blood. Proc. of DL. 2013.
15. Kikot S., Zolin E. Modal definability of first-order formulas with free variables and query answering. J. of Applied Logic, vol. 11, 2013, pp. 190-216.
16. Chagrova L.A. An undecidable problem correspondence theory. J. of Symbolic Logic. 1991, vol. 56, iss. 4, pp. 1261-1272.
17. Mendelson E. Introduction to Mathematical Logic. Van Nostrand Reinhold Inc. Publ., 1964, 300 p.
References