Um parâmetro gráfico possivelmente relacionado à largura da árvore

14

Estou interessado em gráficos em n vértices que podem ser produzidos através do processo a seguir.

  1. Comece com um gráfico arbitrário G em kn vértices. Rotule todos os vértices em G como não utilizados .
  2. Produzir um novo gráfico G pela adição de um novo vértice v , o qual está ligado a um ou mais não utilizados vértices em G , e não está ligado a nenhum usados vértices em G . Rotule v como não utilizado .
  3. Rotule um dos vértices em G ao qual v está conectado conforme usado .
  4. Defina G como G e repita do passo 2 até G conter n vértices.

Chame esses gráficos de "gráficos de complexidade k " (desculpas pela terminologia vaga). Por exemplo, se G é um gráfico de complexidade 1, G é um caminho.

Eu gostaria de saber se esse processo já foi estudado antes. Em particular, para arbitrário k, é NP-completo determinar se um gráfico tem complexidade k ?

Este problema aparece um pouco semelhante à questão de saber se G é um parcial k -trees , ou seja, tem treewidth k . Sabe-se que determinar se G tem largura de árvore k é NP-completo. No entanto, alguns gráficos (estrelas, por exemplo) podem ter uma largura de árvore muito menor que a medida de complexidade discutida aqui.

4 de outubro de 2012: pergunta postada no MathOverflow depois que não houve resposta conclusiva após uma semana (embora obrigado pelas informações sobre fluxos causais).

Ashley Montanaro
fonte

Respostas:

8

Embora tenhamos conversado sobre isso pessoalmente antes, acrescentarei isso na esperança de que isso permita que outra pessoa forneça uma resposta completa.

Em seu processo de adição de vértices, definir uma função parcial a partir de cada vértice v que é usado, para o vértice que foi adicionado quando v foi utilizada. Acontece que f é uma função de fluxo (causal) (p. 39), que é uma versão restrita de uma cobertura de caminho. De fato, sua descrição desses gráficos de "complexidade k " (dado um conjunto de vértices que devem ser os vértices inicialmente não utilizados e os vértices finais não utilizados) é precisamente a decomposição em estrela de uma "geometria" com um fluxo causal (p. 46 do artigo acima).f:V(G)V(G)vvf

Embora esses "fluxos causais" tenham sido estudados principalmente no contexto da computação quântica (com base em medidas) - onde são motivados por certas estruturas de circuitos unitários -, existem resultados teóricos sobre eles que são totalmente divorciados da computação quântica:

Pontos finais do módulo de exclusividade : os gráficos com "complexidade  " são precisamente aqueles para os quais existem (possivelmente interseções) os conjuntos S , T V ( G ) , ambos de tamanho k , de modo que G tem exatamente uma cobertura de caminho de tamanho k, cujos caminhos começar em S e terminam em T .kS,TV(G)kGkST

Gráficos extremos : Um gráfico em vértices com "complexidade k " tem no máximo k n - ( k + 1nk bordas.kn-(k+12)

Usando esses resultados, e considerando um par candidato de conjuntos , é possível determinar se eles "subtendam" uma cobertura de caminho única dessa maneira, que pode ser determinada no tempo O ( k 2 n ) ; mas descobrir se existem ou não esses conjuntos de pontos finais é a aparente dificuldade e o resultado extremal acima (que é apenas uma condição necessária) parece representar o estado da arte em critérios eficientes para determinar se esses conjuntos existem.S,TO(k2n)

Niel de Beaudrap
fonte
3

Todos os gráficos de complexidade têm largura de caminho no máximo k . A cada passo, o conjunto de nós não utilizados é um separador que separa os nós usados ​​daqueles já criados. Portanto, a cada passo, quando você adiciona um vértice, é possível criar um saco contendo esse vértice mais todos os vértices não utilizados e conectar o saco no final da decomposição do caminho. Esta será uma decomposição de caminho válida.kk

Por causa do "qual está conectado" nos pontos 3 e 2, a largura do caminho pode ser muito menor que k . Não tenho certeza sobre se G é uma complexidade k , mas como Niel diz, deve haver uma cobertura de caminho do tamanho k, mas não apenas uma cobertura de caminho, os caminhos precisam ser induzidos. E entre os caminhos, podemos ter esse padrão em zigue-zague. Podemos em f ( k ) p o l y ( n ) de tempo calcular uma decomposição caminho ideal, então podemos utilizar este decomposição para fazer a programação dinâmica mantendo a leitura dos diferentes segmentos de estes kvkGkf(k)poeuy(n)kcaminhos, a que caminho eles pertencem e a ordem dos segmentos pertencentes ao mesmo caminho. E para cada par de segmentos pertencentes a caminhos diferentes, precisamos apenas conhecer o primeiro e o último caminho do zig-zag.

Portanto, acho que podemos decidir se um gráfico tem complexidade no tempo f ( k ) p o l y ( n ) .kf(k)poeuy(n)

Martin Vatshelle
fonte