Каковы подходящие изоморфизмы между формальными языками?

9

Формальный язык над алфавитом является подмножеством , то есть, набор слов в этом алфавите. Два формальных языка и равны, если соответствующие множества экстенсивно равны как подмножества . Можно использовать языки в теории сложности, чтобы формализовать понятие «проблемы». Можно было бы пожаловаться на то, что «в общем» равенство экстенсионально неразрешимо, но я считаю, что это будет ошибочным.LΣΣ*LL'LL'

Некоторое время я размышляю над следующей проблемой: два языка и над алфавитами и (где , , иLL'Σзнак равно{a,б}Σ={c,d}abcdэто разные буквы), никогда не могут быть равными, даже если они описывают "точно" одну и ту же "проблему" Но они должны быть изоморфными, если они действительно описывают «точно» одну и ту же «проблему». Что я хотел бы знать, так это возможные понятия изоморфизма, подходящие для теории сложности. Сначала я думал, что слабый в вычислительном отношении «переводчик», такой как конечный автомат, может быть использован для определения разрешенных изоморфизмов, но это, похоже, уже сломано для тривиальных синтаксических переводов между эквивалентными логическими формулами. (См., Например, эту таблицу с синтаксическим определением двойного в линейной логикеA .)

Сегодня у меня возникла следующая идея: определение языка, соответствующего определенной «проблеме решения», часто состоит из двух частей: (1) кодирование допустимых экземпляров проблемы в виде конечных строк символов и (2) определение « принимаются «проблемные экземпляры, которые относятся к языку. Если проверка того, является ли данная конечная строка символов кодировкой разрешенного экземпляра проблемы, уже требует вычислительно более сильной машины, чем конечно-конечная машина, то эту более сильную машину также следует использовать для определения разрешенных изоморфизмов.

Вопросы: Есть ли у этой линии рассуждения какой-либо шанс «решить» мою проблему? Моя проблема уже решена, так что мне просто нужно прочитать правильные ссылки? Имеет ли смысл сама моя проблема, или это так же ошибочно, как жаловаться на неразрешимость равенства экстенсиональности?


Редактировать (пока не ответ) Я заметил, что «(1) Кодировка разрешенных экземпляров проблемы в виде конечных строк символов» уже содержит (скрытое) предположение о нормализованном вводе. Без этого предположения две разные конечные строки могут соответствовать одному и тому же экземпляру задачи. Вместо проверки допустимости заданной конечной строки проверка может привести к нормализованному вводу (и отобразить недопустимые строки в специальную строку).

Этот параметр имеет то преимущество, что машина, выполняющая проверку / нормализацию, уже оснащена средствами для преобразования конечных строк в другие конечные строки. Разрешенная машина (класс сложности) для этой задачи может быть частью определения задачи, и морфизмы (iso) будут использовать ту же машину (класс сложности). (Предложение о сокращении «многократного многозначного числа» из комментария Рафаэля действительно могло бы стать одной из возможных проблем в .)P

Недостатком является то, что этот способ спецификации может быть применим только для детерминированных машин. Для недетерминированных машин могут потребоваться более гибкие способы указать / решить, соответствуют ли две входные строки одному и тому же экземпляру проблемы.

Томас Климпел
источник
1
Все бесконечные языки (над конечными алфавитами) изоморфны (так как они счетны). Вы должны уточнить, что вы хотите. Кроме того, по какой мере вы говорите, что две проблемы "одинаковы"? Можно утверждать, что многократное сокращение многократного времени дает вам отображение, как вы хотите, но они отображают «разные» (но одинаково сложные) проблемы друг на друга.
Рафаэль
@ Рафаэль Меня слегка смущает ваш комментарий: «Вам нужно уточнить то, что вы хотите». Этот вопрос как раз о том, какое понятие изоморфизма я мог бы «хотеть» использовать. Иногда трудно понять, чего ты действительно хочешь! Для прохождения вопроса, говорящего о языках, описывающих «точно» одну и ту же «проблему», я в основном просто думал о случае, когда отождествление с и с сделало бы и равными. Продолжение этой линии рассуждений - это то, что изначально заставило меня рассматривать конечные автоматы как «переводчиков», что в конечном итоге не решило мою проблему. c b d L L acbdLL
Томас Климпел
@ Рафаэль Я полагаю, что для большинства задач многократные сокращения многократного времени слишком мощны в вычислительном отношении для изоморфизмов, которые я имею в виду. Я не хочу, чтобы изоморфизм вычислял решение для меня или сводил теоретико-графовую задачу к задаче логической выполнимости. Я просто хочу, чтобы он идентифицировал две немного разные, но по существу эквивалентные кодировки одного и того же проблемного экземпляра. У меня нет проблем, если это понятие изоморфизма должно также отождествлять некоторые (кодировки) теоретико-графовых задач с определенными (кодированиями) задачами логической выполнимости.
Томас Климпел
примерно, сложность, связанная с сокращениями, используется для этой цели. менее сильное сокращение, чем время P, например, сокращение пространства журнала, время и т. д.O(nc)
vzn

Ответы:

6

Моя проблема уже решена, так что мне просто нужно прочитать правильные ссылки?

Теория абстрактного семейства языков актуальна. Например, морфизмы, определенные датчиками конечного состояния, приводят к семейству конусов . Короткий доклад Эйленберга на ICM 1970 года прекрасно объясняет эту структуру, см. Также главу 11 «Свойства замыкания семейств языков» из « Введение в теорию автоматов, языков и вычислений» (1-е изд.) Дж. Хопкрофта и Дж. Уллмана из 1979 г. Однако только недетерминированные языки вписываются в эту структуру 1 . В конце концов, книга « Теория кодов » Дж. Берстеля и Д. Перрина 1985 года помогла мне найти разумные решения для моей проблемы. Коды и автоматыJ. Berstel, D. Perrin и C. Reutenauer с 2009 года представляют собой крупный пересмотр этой книги с гораздо более широким охватом.

Есть ли у этой линии рассуждения хоть какой-то шанс "разрешить" мою проблему? Имеет ли моя проблема смысл, или это так же ошибочно, как ...?

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

Вот три интересные категории, связанные с сокращениями «многие-один», которые будут упоминаться как общие , частичные и реляционные . Объектами категорий являются пары конечного алфавита Σ и язык L Σ слов над Σ . Для общей сложности , морфизмы между исходным объектом ( Е , L ) и целевой объект ( Σ ' , L ' ) являются полными функциями F(Σ,L)ΣLΣΣ(Σ,L)(Σ,L) с L = f - 1 ( L ) . Длячастичныхморфизмы являются частичными функциями f : Σ Σ с L = f - 1 ( L ) , где две частичные функции f , g считаются равными (как морфизмы), если f ( x ) = g ( x) )f:ΣΣL=f1(L)f:ΣΣL=f1(L)fgf(x)=g(x)для всех . Для реляционных морфизмы представляют собой отношения R Σ × Σ с L = R - 1 ( L ) , и любые два морфизма между одним и тем же источником и целью считаются равными. Набор разрешенных функций или отношений может быть ограничен различными простыми «переводчиками» для получения категорий с интересными изоморфизмами.xLRΣ×ΣL=R1(L)

  • Гомоморфизмы моноидов от до Σ дают очень основную общую категорию. Изоморфизмы этой категории являются в основном просто биекциями между Σ и Σ . Любое разумное семейство языков должно лучше уважать эти изоморфизмы, т.е. быть замкнутым при обратных гомоморфизмах.ΣΣΣΣ
  • Частичные функции, определенные детерминированными лог-пространствами машинных переводчиков Тьюринга, дают вполне естественную частичную категорию. Он способен выполнять множество тривиальных синтаксических преобразований (например, применяя законы Де Моргана для перемещения отрицаний к атомам), включает в себя морфизм, определенный функциональными преобразователями конечного состояния 1 , а также может сортировать. Тем не менее, он не идентифицирует два совершенно не связанных между собой языка как изоморфные, потому что равенство композиции двух морфизмов с морфизмом идентичности является гораздо более строгим требованием, чем просто существование сокращений «многие-один» в обоих направлениях.
  • Отношения, определяемые недетерминированным лог-пространством машинных переводчиков Тьюринга, дают интересную категорию отношений . SAT изоморфен HORNSAT в этой категории, но остается открытым вопрос, является ли TAUTOLOGY или любая другая совместная NP-полная проблема изоморфной HORNSAT.

Два языка и L над алфавитами Σ = { a , b } и Σ = { c , d } (где a , b , c и d - разные буквы) никогда не могут быть равны, даже если они описывают «точно» та же проблема." Но они должны быть изоморфными, если они действительно описывают «точно» одну и ту же «проблему».LLΣ={a,b}Σ={c,d}abcd

Описанная выше базовая общая категория решает эту проблему.

Проблема становится более интересной, если «точно такой же» заменить на «почти одинаковый для большинства практических целей»: пусть - язык над Σ = { U , C , A , G } и L - язык над Σ = { 0 , 1 }, полученный из L заменой U 00 , C 01 , A 10 и G 11LΣ={U,C,A,G}LΣ={0,1}LU00C01A10G11, Отметим, что в любой общей категории и L не изоморфны при L = Σ . То же самое будет верно для частичных категорий, если часть «где две частичные функции f , g считаются равными (как морфизмы), если f ( x ) = g ( x ) для всех x L » была исключена из определения.LLL=Σfgf(x)=g(x)xL

LL

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

Можно использовать языки в теории сложности, чтобы формализовать понятие «проблемы».

Еще до того, как я узнал о теории категорий, я задался вопросом о том, существуют ли «более точные» способы формализации понятия «проблема». Познакомившись с теорией категорий, я иногда пытался найти возможные решения, но всегда быстро сдавался на первом камне преткновения (потому что в любом случае это никого не волнует). Я знаю, что Юрий Гуревич решил некоторые смежные вопросы, но его решения практически применимы, тогда как я больше искал что-то хорошее и абстрактное, не зависящее от практической применимости.

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

Может быть трудно оценить эти (связанные с кодом) категории, не видя проблем более очевидных категорий. Общая проблема заключается в том, что замыкание под композицией может затруднить определение хорошо ограниченного класса частичных функций. Другая проблема связана с тем фактом, что сложение единицы (или умножение на константу) является «простой для вычисления функцией», если цифры числа даны в младшем порядке, но не если цифры даны в большом порядковый порядок


O(n)O(1)

2 Однозначный датчик конечного состояния - это недетерминированный датчик конечного состояния с не более чем одним принимающим трактом для каждого входа. Он реализует частичную функцию, следовательно, он также является функциональным датчиком конечных состояний. Можно решить, является ли данный конечный датчик состояния однозначным.

RΣ×ΣL=R1(L)R1(ΣL)и любые два морфизма между одним и тем же источником и целью считаются равными.

Томас Климпел
источник