Multigrafias dirigidas como autômatos mínimos

9

Dada uma linguagem regular no alfabeto , seu autômato determinístico mínimo pode ser visto como um gráfico múltiplo direcionado com constante grau externoe um estado inicial marcado (esquecendo rótulos de transições, estados finais). Mantemos o estado inicial porque cada vértice deve ser acessível a partir dele.euUMA|UMA|

O inverso é verdadeiro? Ou seja, dado um multigrafo conectado direcionado com constante grau externo e estado inicial de tal modo que todo vértice é acessível a partir dele, sempre existe uma linguagem tal que é o gráfico subjacente do autômato mínimo de ?GeuGeu

Por exemplo, se for verdade, pois o gráfico deve ser um "laço" com um prefixo de tamanho um loop de tamanho , e corresponde ao autômato mínimo de .|UMA|=1 1Eujeu={umaEu+nj | nN}

A motivação vem de um problema relacionado encontrado em uma redução de decidibilidade, onde a solução é mais fácil: a partir de um gráfico simples não orientado e com mais operações permitidas, como a adição de sumidouros. Mas eu queria saber se alguém já tinha olhado para essa pergunta mais natural.

As únicas coisas remotamente conectadas que pude encontrar na literatura são documentos como Complexidade da coloração de estradas com palavras de redefinição prescritas , onde o objetivo é colorir uma multigráfica para que o autômato resultante tenha uma palavra sincronizada. No entanto, a minimalidade não parece ser considerada.

Atualização : Pergunta de acompanhamento após a resposta de Klaus Draeger: qual é a complexidade de decidir se um gráfico tem esse formato? Podemos adivinhar a rotulagem e verificar polinomialmente a minimalidade do autômato, assim é no NP, mas podemos dizer mais?

Denis
fonte

Respostas:

8

Qualquer nó absorvente precisará aceitar ou não (para que tudo ou nada seja aceito depois que for inserido). Se o gráfico tiver mais de dois nós de absorção, alguns deles serão equivalentes a qualquer escolha de conjunto de rotulagem e aceitação.nn

De maneira mais geral, para qualquer gráfico fortemente conectado, existe apenas um número finito de diferentes rotulações possíveis e subconjuntos aceitáveis; se o seu gráfico tiver mais de terminal componentes fortemente conectados equivalentes a (digamos nas folhas de uma árvore), ele não poderá corresponder a nenhum autômato mínimo.Hn(H)n(H)H

EDIT, referente à pergunta de acompanhamento: isso parece complicado. Uma abordagem sugerida pelo meu argumento pode ser assim:

  • Partição em SCCs. Isso é barato; usando o algoritmo de Tarjan.GO(|V|+|E|)
  • Classifique os SCCs em classes de isomorfismo. Infelizmente gráfico isomorfismo não é conhecido por ser em .P
  • Para cada classe de isomorfismo do terminal, determine o número de sub-autômatos correspondentes permitidos e falhe se não houver um número suficiente deles. Observe que nem todas as combinações de aceitar rotulagem de subconjunto e borda são permitidas: por exemplo, suponha que nosso alfabeto seja e um componente tenha dois nós, cada um com um auto-loop e uma borda para o outro nó. Fazer com que ambos os nós aceitem e rotulem os dois loops com (e as outras arestas com ) fornece um autômato que é bisimilar a um único estado de absorção, violando a minimalidade.{uma,b}umab
  • Trate os SCCs restantes no DAG da mesma forma, levando em consideração os inferiores; Estou um pouco confuso com os detalhes desta parte.

Esse é um passo cuja complexidade é famosa em aberto e outro que parece exigir tempo exponencial (já que pode haver exponencialmente muitas partições em classes de bisimilaridade a serem excluídas ao determinar autômatos permitidos). Podemos fazer melhor?

Klaus Draeger
fonte
Certo, obrigado. Uma questão de acompanhamento natural é a complexidade de decidir se um gráfico é induzido por um autômato mínimo. Está em NP, mas podemos dizer mais?
Denis