Dado um grupo de permutações em [ n ] = { 1 , ⋯ , n } , e dois vectores de u , v ∈ Γ n onde Γ é um alfabeto finito que não é muito relevante aqui, a questão é se existe algum ¸ ∈ G tal que π ( u ) = v onde π ( u ) significa aplicar a permutação π em u de uma maneira esperada.
Suponha ainda que seja dado, como entrada, por um conjunto finito S de geradores. Qual é a complexidade do problema? Em particular, é em NP?
Respostas:
Seja onde S n é o grupo de permutação em n elementos. Teste se g ∈ ⟨ g 1 , ... , g k ⟩ pode ser feito em NC ⊆ P por [1]. Seja u , v ∈ Γ n , então simplesmente adivinhe g ∈ S n , teste em tempo polinomial se g ∈ Gg1,…,gk,g∈Sn Sn n g∈⟨g1,…,gk⟩ NC ⊆ P u , v ∈ y-n g∈ Sn g∈ G e se . Isso gera um limite superior NP .g( u ) = v NP
Para complementar esta resposta:
[1] L. Babai, EM Luks e A. Seress. Grupos de permutação em NC. Proc. simpósio ACM anual sobre Teoria da computação, pp. 409-420, 1987.19º
fonte
Seu problema é conhecido como ( -) string G- isomorfismo. É em uma classe bastante estreita de problemas em torno Gráfico Isomorfismo: é pelo menos tão duro como GI, e é em N P ∩ c o Uma M .Γ G NP∩coAM
Redução do IG: seja , e sejaG≤SNa ação induzida deSnnos pares.N=(n2) G≤SN Sn
Protocolo A M : Arthur escolhe aleatoriamente um elemento de G (não tenho certeza se isso pode ser feito exatamente de maneira uniforme, mas acho que os algoritmos conhecidos se aproximam o suficiente para se uniformizarem para esse resultado) e o aplicam a u e v . Com probabilidade 1/2, ele troca u e v , depois os apresenta a Merlin e pergunta qual foi qual.coAM G u v u v
fonte
Apesar dos meus comentários, também adicionarei uma resposta.
No caso, os dois espectros dados são conhecidos por serem uma permutação um do outro (e a permutação é conhecida / assumida como estando no grupo ). Então a permutação que transforma v → u pode ser encontrada no tempo linear como tal:G v→u
Alinhe os 2 vetores um sob o outro
A permutação é encontrada partindo do 1º elemento de que é transformado no 1º elemento de uv u
Obtenha a posição do elemento na etapa anterior (de em v ) e repita a etapa (2), então esse é o segundo elemento da permutação e assim por diante, até que todos os elementos sejam percorridos.u v
Quando se sabe-se que os dois vetores não são positivamente a permutação um do outro (ou para casos mais gerais em que pode haver várias transformações, como, por exemplo, um jogo de sudoku), verifique o Outro Problema de Solução, que geralmente é difícil para NP. Isso requer o uso de algumas transformações de simetria (por exemplo, permutações) que satisfaçam as restrições de um determinado problema para gerar outra solução do problema, dada uma solução inicial.
Além disso, isso faz parte dos problemas conhecidos como problemas inversos (a-la Jaynes)
fonte