Зафиксируем конечную группу . Меня интересует следующая проблема решения: входными данными являются некоторые элементы группы с частичным порядком на них, и вопрос заключается в том, существует ли перестановка элементов, которая удовлетворяет порядку и такова, что композиция элементов в этом порядок дает нейтральный элемент группы .G e
Формально задача теста заключается в следующем, где группа фиксирована:
- Входные данные : конечное частично упорядоченное множество с функцией маркировки от до .μ P G
- Вывод: существует ли линейное расширение (т. Е. Полный порядок такой, что для всех , подразумевает ), такой, что, записывая элементы( P , < ′ ) x , y ∈ P x < y следуя полному порядку при x 1 , … , x n , имеем μ ( x 1 ) ⋅ ⋯ ⋅ μ ( x n ) = e .
Для любой группы , то G -TEST проблема явно в НП. Мой вопрос: существует ли группа G такая, что задача G- теста является NP-трудной?
Несколько замечаний об эквивалентных постановках задач:
- Язык множеств и линейных расширений можно эквивалентно заменить языком DAG и топологическими порядками. То есть, если вы предпочитаете, вы можете думать о входных данных как о группе обеспечения доступности баз данных с вершинами, помеченными элементами группы, и как о выходных данных, спрашивая, достигает ли некоторый топологический вид входной группы обеспечения доступности баз данных .
- Вместо этого можно было бы рассмотреть более сложную задачу, в которой нам дано множество и g ∈ G , и спросить, можно ли реализовать g (а не e ). Фактически, более сильная проблема сводится к вышесказанному: мы можем спросить, можно ли реализовать e с помощью ( P ′ , < ) , где P ′ - P, но с элементом, помеченным как g - 1, который меньше всех остальных. Отсюда естественный выбор e в приведенном выше определении.
Теперь о моих попытках решить проблему:
- Конечно, если группа коммутативна, проблема G- теста явно в PTIME, поскольку все линейные расширения достигают одного и того же элемента группы, поэтому мы можем просто выбрать любое из них по топологической сортировке и проверить, является ли оно e или нет. Так что интересный случай некоммутативен G . В более общем случае, если G имеет гомоморфизм некоторой нетривиальной коммутативной группе (например, сигнатуре для перестановок), необходимым, но недостаточным условием является рассмотрение проблемы через гомоморфизм и проверка ее в PTIME коммутативным образом. , Я не понимаю, может ли это быть обобщением для схемы разложения для всех конечных групп.
- Если отношение порядка пусто (т. Е. Нам дан мультимножество элементов в и мы можем использовать любую перестановку), проблему можно решить с помощью динамического программирования, где состояния - это число вхождений каждого элемента в G , которые все еще не используется (помните , что G фиксирована, так что число состояний , то многочлен на входе).
- Для входных данных, которые представляют собой множества постоянной ширины, мы можем использовать динамический алгоритм, следующий за разложением цепочки. Поэтому, если твердость сохраняется, она должна использовать входные множества, которые являются произвольно широкими. Обратите внимание, что для широких полетов число возможных «состояний» в подходе динамического программирования было бы числом сбоев в наборе, которое в целом является экспоненциальным, а не полиномиальным, так что этот подход не работает напрямую.
- Та же проблема может быть изучена для моноидов, а не групп, но для моноидов я уже знаю, что это трудно, по достаточно запутанному аргументу, который включает переходный моноид автомата и сводится к варианту предыдущего вопроса теории CS . Полное доказательство этого содержится в этом препринте , приложениях D.1.3 и D.1.4, хотя терминология сильно отличается. Следовательно, когда тестирование является PTIME, оно должно использовать обратимость групповых элементов.
- Если мы спросим, все ли линейные расширения реализуют (а не то, что делают некоторые ), то я знаю, что проблема в PTIME (см. Приложение D.2 того же препринта), хотя я также знаю, что эта другая проблема будет coNP- трудно для моноидов, а не групп (D.1.3 и D.1.4).
Если -test трудно для некоторого G , конечно, естественный вопрос , имеет ли какое - то раздвоение, и какие критерии будут отличать послушный G и не-послушное G . На самом деле этот вопрос можно задать более широко, когда мы используем конечные автоматы вместо групп. (Формально: зафиксируем конечный алфавит Σ и конечный детерминированный конечный автомат (DFA) A на Σ , и рассмотрим задачу A -test, заданную набором, помеченным элементами из Σ , проверки того, образует ли некоторое линейное расширение слово, принятое A. ) Конечно, я понятия не имею об этих более сложных вопросах.
Ответы:
Я покажу ниже , что -test задача является NP-трудной для некоторых простых , но бесконечной группы G . Конечный случай все еще открыт.G G
доказательство
Определите следующие функции: и g a ( x ) = x + a .f(x)=−x ga(x)=x+a
Затем возьмите за группу, сгенерированную f, и g a с композицией в качестве операции.G f ga
Заметим, что элементами группы являются { f ∘ g a | a ∈ Z } ∪ { g a | a ∈ Z } , так что на самом деле это довольно простая группа.G {f∘ga|a∈Z}∪{ga|a∈Z}
Тогда проблема теста является NP-трудной по сокращению от разбиения.G
Проблема раздела запрашивает заданную последовательность целых чисел 1 , 2 , . , , , П существует ли разбиение этой последовательности на две части равной суммы.a1,a2,...,an
Для любой такой последовательности мы берем наше множество состоящее из n + 2 элементов без наложенного порядка. Два из этих элементов f . Остальной п элементы г я для я = 1 , . , , , П .P n+2 f n gai i=1,...,n
Обратите внимание , что , и что ф ∘ г р ∘ ф = г - р . Используя только эти факты, мы видим, что состав элементов в P в любом порядке всегда будет равен g ∑ i ∉ I a i - ∑ i ∈ I a i, где I - множество индексов, для которых g a i был расположен между два вхождения еgp∘gq=gp+q f∘gp∘f=g−p P g∑i∉Iai−∑i∈Iai I gai f , Так как тождество , упорядочение Р составляет в тождество тогда и только тогда , когда в соответствии с этим упорядочением Σ я ∉ я я - Σ я ∈ Я я = 0 , или, другими словами , если и только если Σ я ∉ я a i = ∑ i ∈ I a i .g0 P ∑i∉Iai−∑i∈Iai=0 ∑i∉Iai=∑i∈Iai
Тогда этот экземпляр задачи имеет решение тогда и только тогда, когда существует такое I , что ∑ i ∉ I a i = ∑ i ∈ I a i ; это именно то условие, при котором экземпляр раздела имеет решение.G I ∑i∉Iai=∑i∈Iai
Таким образом, это сокращение сохраняет ответ. Поскольку это также явно полиномиальное время (при условии разумного кодирования элементов ), задача G- теста является NP-полной.G G
источник
Вместе с моим соавтором мы только что опубликовали препринт, в котором эта проблема рассматривается более широко для обычных языков. В случае конечных групп мы утверждаем, что задача поддается решению (в NL) в случае, когда частичный порядок на элементах состоит из объединения цепей: см. Теорему 6.2. Мы предположили бы, что проблема для общих групп доступности баз данных также в NL, и есть некоторая надежда на расширение техники до этого параметра, но нам не хватает ингредиента для этого, связанного с этим вопросом - подробности см. В препринте, раздел 6, пункт «Ограничения» в конце, второе ограничение.
источник