Является ли «перестановка p автоморфизмом графа в моем множестве?» NP-полной?

13

Предположим, у нас есть множество S графов (конечных графов, но их бесконечное число) и группа перестановок P, которая действует на S.

Экземпляр: перестановка p в P.

Вопрос: существует ли граф g в S, который допускает автоморфизм p?

Является ли эта задача NP-полной для некоторых множеств S?

Было бы легко проверить, что граф допускает перестановку p (то есть сертификат). Более того, легко найти примеры S, где проблема не является NP-полной, например, S является множеством полных графов, откуда ответ всегда да.

Примечание: меня не очень интересует тип графиков; если хотите, они могут быть непростыми, направленными, цветными и т. д.

ДОБАВЛЕНИЕ: Проблема, которую я сейчас рассматриваю, заключается в классификации того, какие изотопизмы являются автотопизмами латинских квадратов (что также можно интерпретировать как специальный тип автоморфизма графов).

Учитывая латинский квадрат L (i, j), мы можем построить граф следующим образом:

  • Набор вершин представляет собой набор ячеек (i, j) в матрице и
  • Существует грань между различными (i, j) и (i ', j') всякий раз, когда i = i 'или j = j' или L (i, j) = L (i ', j').

Такой график называется графиком латинского квадрата (см., Например, эту статью Бэйли и Кэмерон http://designtheory.org/library/encyc/topics/lsee.pdf ). Мы можем интерпретировать автотопизм латинского квадрата как автоморфизм графа латинского квадрата. Итак, пусть S будет множеством графов латинских квадратов, образованных из латинских квадратов порядка n. Итак, вопрос, который меня интересует, таков:

При заданной перестановке p является ли автоморфизм одного (или нескольких) графов в S?

Мне кажется, что на этот вопрос в целом сложно ответить - в настоящее время я пишу статью на 30 с лишним страниц по этому вопросу (с двумя соавторами). На самом деле, в большинстве случаев это легко (в большинстве случаев это «нет»), но есть некоторые сложные случаи.

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

Дуглас С. Стоунс
источник
Я не уверен, правильно ли я понимаю проблему. Можете ли вы привести пример S и P (и групповое действие P на S)? Пример, который делает проблему нетривиальной (ни все-да, ни все-нет), поможет понять проблему.
Цуёси Ито
2
В примере полных графов я не понимаю, как перестановка в k точках действует на полный граф в n точках, где k ≠ n (особенно, если k> n).
Цуёси Ито
Мне удалось обмануть себя и подумать, что я понял проблему, но теперь я решил, что не понимаю. Действует ли группа перестановок S на графах в семействе P или только потенциально действует на графы в семействе P?
Ниль де Бодрап,
1
Одна из проблем здесь заключается в том, что нам нужно выбрать набор для которого тестирование членства проводится в NP. S
Эмиль
1
Я добавил немного больше фона в ответ. На самом деле, в общем, меня не волнует, действует ли группа на S, пока мы можем ответить: «Является ли эта перестановка автоморфизмом этого графа?» В случае латинских квадратов мы можем интерпретировать это как групповое действие.
Дуглас С. Стоунс

Ответы:

14

Возьмем любой язык (который состоит из двоичных строк). Построим множество S графов следующим образом:LS

  • Для каждой строки с | х | = П , мы имеем граф G х = ( V х , Е X ) в S , с множеством узлов V х = { 1 , 2 , . , , , 3 п } и следующие ребра: если бит я из х является 0 , то узлы 3 я - 2 и 3xL|x|=nGx=(Vx,Ex)SVx={1,2,...,3n}ix03i2 являются смежными, в противном случае 3 i - 2 и 3 i являются смежными. Других краев нет.3i13i23i

Пусть теперь будет перестановка { 1 , 2 , . , , , 3 н } . Предположим , что р есть автоморфизм некоторого графа в S . То есть, р есть автоморфизм G у для некоторого у L . Пусть I { 1 , 2 , . , , , n } . Давайте рассмотрим следующие два случая:p{1,2,...,3n}pSpGyyLi{1,2,...,n}

  • , p ( 3 i - 1 ) = 3 i - 2 , p ( 3 i ) = 3 i . Тогда у нас должен быть бит i of y, равный 0 .p(3i2)=3i1p(3i1)=3i2p(3i)=3iiy0
  • , p ( 3 i - 1 ) = 3 i - 1 , p ( 3 i ) = 3 i - 2 . Тогда у нас должен быть бит i of y, равный 1 .p(3i2)=3ip(3i1)=3i1p(3i)=3i2iy1

Следовательно, если мы можем решить вопрос «является ли данный автоморфизмом некоторого G S », мы также можем решить вопрос «является ли заданная строка y в L ». Более того, если мы можем сделать первое, скажем, за полиномиальное время в | р | , мы можем сделать последнее за полиномиальное время в | у | также.pGSyL|p||y|

Теперь вы можете просто позволить быть вашей любимой NP-трудной проблемой. Или проблема остановки ...L

Юкка Суомела
источник
И чтобы фактически ответить на первоначальный вопрос: пусть - NP-полная задача, и у вас будет S, такая что задача автоморфизма NP-полная. Сертификат на ответ «да» является G уS такой , что р является автоморфизм G у , плюс сертификат у L . LSGySpGyyL
Юкка Суомела
5
@Jukka: Один из способов приблизить вопрос к исходной мотивации графов латинских квадратов - это потребовать, чтобы множество графов было замкнуто относительно изоморфизма. Это тоже вполне естественное ограничение. Множество S, которое вы строите из произвольного языка L , не замкнуто при изоморфизме и, в этом очень специфическом смысле, немного неестественно. Я не вижу, как изменить вашу конструкцию, чтобы удовлетворить это ограничение, но я думаю, что было бы очень интересно, если бы это можно было сделать. SSL
Джошуа Грохов
1
@ Джошуа: Я думаю, что можно изменить конструкцию, например, следующим образом: и графики, и перестановки, которые мы используем в запросах, состоят из непересекающихся циклов . Более подробно, содержит цикл длиной 2 i + a + 1, если бит i из x равен a . Аналогично, чтобы определить, является ли y L , построить перестановку p, которая содержит цикл длиной 2 i + a + 1, если бит i из y равенGx2i+a+1ixayLp2i+a+1iy . (Возможно, я упустил некоторые детали, но я думаю, что основная идея должна работать ...)a
Юкка Суомела
@Jukka: Отлично. Я считаю, что новая конструкция работает как написано (при условии, что мы разрешаем действовать только на графы с ровно n вершинами, а не на графы с более чем n вершинами). pSnnn
Джошуа Грохов
@ Джошуа: Я думаю, что возможность применения к графам с более чем n узлами не имеет значения, если мы предположим, что язык L использует код без префиксов? pSnnL
Юкка Суомела