“A permutação é um automorfismo de um gráfico no meu conjunto?” NP-complete?


13

Suponha que temos um conjunto S de gráficos (gráficos finitos, mas um número infinito deles) e um grupo P de permutações que atua em S.

Instância: Uma permutação p em P.

Pergunta: Existe um gráfico g em S que admite o automorfismo p?

Esse problema é NP-completo para alguns conjuntos S?

Seria fácil verificar se um gráfico admite a permutação p (isto é, certificado). Além disso, é fácil encontrar exemplos de S onde o problema não é NP-completo, como S sendo o conjunto de gráficos completos, de onde a resposta é sempre sim.

Nota: Não estou realmente interessado em que tipo de gráficos são; se você quiser, pode ser não simples, direcionado, colorido etc.

ADENDO: O problema que estou vendo atualmente é classificar quais isotopismos são autotopismos de quadrados latinos (que também podem ser interpretados como um tipo especial de automorfismo de gráfico).

Dado um quadrado latino L (i, j), podemos construir um gráfico da seguinte maneira:

  • O conjunto de vértices é o conjunto de células (i, j) na matriz e
  • Existe uma aresta entre distintas (i, j) e (i ', j') sempre que i = i 'ou j = j' ou L (i, j) = L (i ', j').

Esse gráfico é chamado de gráfico quadrado latino (veja, por exemplo, este artigo de Bailey e Cameron http://designtheory.org/library/encyc/topics/lsee.pdf ). Podemos interpretar um autotopismo de um quadrado latino como um automorfismo do gráfico de quadrados latinos. Então, S seja o conjunto de gráficos quadrados latinos formados a partir dos quadrados latinos da ordem n. Portanto, a pergunta na qual estou interessado é:

Dada uma permutação p, p é um automorfismo de um (ou mais) dos gráficos em S?

Meu sentimento é que é uma pergunta difícil de responder em geral - atualmente estou escrevendo um artigo com mais de 30 páginas sobre o assunto (com 2 co-autores). Na verdade, na maioria das vezes é fácil (na maioria das vezes é "não"), mas existem alguns casos difíceis.

Então, eu estou interessado em encontrar problemas de decisão que estariam relacionados à "classificação de simetria". Eles realmente não precisam estar relacionados aos quadrados latinos, só espero usar essas técnicas para responder à pergunta dos quadrados latinos.


Não tenho certeza se entendi o problema corretamente. Você pode dar um exemplo de S e P (e a ação de grupo de P em S)? Um exemplo que torna o problema não trivial (nem tudo sim ou tudo não) ajudará a entender o problema.
Tsuyoshi Ito

2
No exemplo de gráficos completos, o que eu não entendo é como uma permutação em k pontos atua no gráfico completo em n pontos, onde k ≠ n (especialmente se k> n).
Tsuyoshi Ito

Consegui me enganar pensando que havia entendido o problema, mas agora decidi que não. O grupo de permutações S atua nos gráficos da família P, ou apenas potencialmente atua nos gráficos da família P?
Niel de Beaudrap 9/10/10

1
Uma questão aqui é que precisamos escolher um conjunto para o qual o teste de associação está no NP. S
Emil

1
Adicionei um pouco mais de experiência na resposta. Na verdade, em geral, eu realmente não me importo se o grupo age ou não em S, desde que possamos responder "essa permutação é um automorfismo desse gráfico?" No caso dos quadrados latinos, podemos interpretá-lo como uma ação de grupo.
Douglas S. Stones

Respostas:


14

Escolha qualquer idioma (que consiste em cadeias binárias). Construa o conjunto S dos gráficos da seguinte maneira:LS

  • Para cada string com | x | = N , temos o gráfico G x = ( V x , E x ) em S , com o conjunto de nodos V x = { 1 , 2 , . . . , 3 n } e as seguintes arestas: se o bit i de x for 0 , os nós 3 i - 2 e 3xL|x|=nGx=(Vx,Ex)SVx={1,2,...,3n}Eux0 03i2 são adjacentes, caso contrário 3 i - 2 e 3 i são adjacentes. Não há outras arestas.3i13i23i

Agora vamos ser uma permutação de { 1 , 2 , . . . , 3 n } . Assume-se que p é um automorphism de alguns gráfico em S . Ou seja, p é um automorfismo de L y por algum y L . Vamos i { 1 , 2 , . . . , n } . Vamos considerar os dois casos a seguir:p{1,2,...,3n}pSpGyyeui{1,2,...,n}

  • , p ( 3 i - 1 ) = 3 i - 2 , p ( 3 i ) = 3 i . Então devemos ter o bit i de y igual a 0 .p(3i2)=3i1p(3i1)=3i2p(3i)=3iiy0 0
  • , p ( 3 i - 1 ) = 3 i - 1 , p ( 3 i ) = 3 i - 2 . Então devemos ter o bit i de y igual a 1 .p(3i2)=3ip(3i1)=3i1p(3i)=3i2iy1

Portanto, se podemos resolver a questão "é um dado automorphism de alguma G S ", também podemos resolver a questão "é uma string dada y em L ". Além disso, se pudermos fazer o primeiro em, digamos, tempo polinomial em | p | , podemos fazer o último em tempo polinomial em | y | também.pGSyL|p||y|

Agora você pode deixar ser o seu problema NP-difícil favorito. Ou o problema da parada ...L


E para realmente responder à pergunta original: Seja um problema completo de NP, e você terá um S tal que o problema de automorfismo seja NP completo. O certificado para uma resposta "sim" é um L yS tal que p é o automorphism de L y , mais o certificado para y L . LSGySpGyyL
Jukka Suomela 10/10/10

5
@Jukka: Uma maneira de aproximar a questão da motivação original dos gráficos quadrados latinos é exigir que o conjunto de gráficos seja fechado sob isomorfismo. Essa também é uma restrição bastante natural. O conjunto S que você constrói a partir de uma linguagem arbitrária L não é fechado sob isomorfismo e, nesse sentido muito específico, é um pouco artificial. Não vejo como modificar sua construção para satisfazer essa restrição, mas acho que seria muito interessante se isso pudesse ser feito. SSL
Joshua Grochow 12/10

1
@ Josué: Eu acho que é possível modificar a construção, por exemplo, da seguinte forma: os gráficos e as permutações que usamos nas consultas consistem em ciclos separados . Mais detalhadamente, contém um ciclo de comprimento 2 i + a + 1 se o bit i de x for igual a a . Da mesma forma, para determinar se y L , construa uma permutação p que contenha um ciclo de comprimento 2 i + a + 1 se o bit i de y for igual aGx2i+a+1ixayLp2i+a+1iy . (Eu poderia ter esquecido alguns detalhes, mas eu acho que a idéia básica deve funcionar ...)a
Jukka Suomela

@Jukka: Legal. Acredito que a nova construção funcione como está escrita (assumindo que apenas permitimos que atue em gráficos com exatamente n vértices, e não em gráficos com mais de n vértices). pSnnn
Joshua Grochow

@ Josué: Eu acho que a possibilidade de aplicar em gráficos com mais de n nós não importa, se assumirmos que a linguagem L usa um código sem prefixo? pSnnL
Jukka Suomela 13/10/10
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.