Descrevo uma abordagem ao isomorfismo gráfico que provavelmente tem falsos positivos e estou curioso para saber se há literatura indicando que ele não funciona.
Dadas duas matrizes de adjacência , um método reconhecidamente ingênuo de verificar se há isomorfismo é verificar se, para cada linha de , existe uma linha de que é uma permutação da linha , denotada por . Um pouco mais rigorosa é a questão, existe um "isomorfismo local" para o qual para todas as linhas. A produção de um isomorfismo local pode ser feita em tempo polinomial, construindo uma matriz com ; então eu G v G u G [ u ] ∼ H [ v ] π G [ u ] ∼ H [ π ( u ) ] n × n A A [ u , v ] = ( G [ u ] ∼ H [ v ] ) G Hsão localmente isomórficas se tem uma cobertura de ciclo e toda cobertura de ciclo é um isomorfismo local.
Todos os gráficos regulares enganam esse método, obviamente, portanto, uma abordagem um pouco menos ingênua é calcular os poderes das matrizes e verificar se há isomorfismo local, explorando o fato que você tem várias matrizes configurando quando encontrar uma potência tal que e verificando a cobertura do ciclo apenas no final. Uma abordagem ainda menos ingênua é encontrar um conjunto de polinômios, de fato um conjunto de circuitos aritméticos, e definir A [u, v] = 0 quando encontramos qualquer polinômio p com p (G) [u] \ u \ sim \ ( H) [v] .Um [ u , v ] = 0A [ u , v ] = 0p ( G ) [ u ] ≁ p ( H ) [ v ]
Isso me parece uma abordagem incrivelmente ingênua do isomorfismo de grafos, por isso tenho certeza de que alguém já o investigou e provou um teorema como
Thm Para infinitamente muitas existem nonisomorphic matrizes e uma permutação de tal modo que para cada polinio , e são localmente isomorfo pelo que permutação: .
Pergunta: Existe tal teorema? Eu olhei na literatura e não consigo encontrá-lo.
Se existe um limite no grau que é polinomial em tal que para cada duas matrizes não isomórficas, o isomorfismo local é refutado calculando , ou se houver uma família de polinômios facilmente computável , cada um com comprimento delimitado polinomialmente, mas possivelmente com grau exponencial, então temos um algoritmo P para isomorfismo de gráfico. Se tais polinômios (ou circuitos aritméticos) são fáceis de adivinhar, então temos um algoritmo coRP . Se sempre existe uma (família de) circuitos aritméticos para testemunhar isomorfismo não local, isso gera um algoritmo coNP .n G 1 , H 1 , … , G p o l y ( n ) , H p o l y ( n ) p 1 , … , p k
Observe que podemos evitar o problema de as entradas de matrizes de alta potência aumentarem muito computando os polinômios em campos pequenos, por exemplo, computando-os modulos pequenos primos. Em um algoritmo coNP , o provador pode fornecer esses números primos.