Diferença entre os idiomas aceitos por dois DFAs com diferentes estados iniciais / estados de aceitação?

9

Recentemente, fiz uma pergunta no Math SE. Nenhuma resposta ainda. Esta questão está relacionada a essa pergunta, mas mais detalhes técnicos sobre ciência da computação.

Dado dois DFAs e que o conjunto de estados, o alfabeto de entrada e a função de transição de e são iguais, os estados iniciais e os estados finais (de aceitação) podem ser diferentes. Seja e os idiomas aceitos por e , respectivamente.B = ( Q , Σ , δ , q 2 , F 2 )A=(Q,Σ,δ,q1,F1)B=(Q,Σ,δ,q2,F2)B L 1 L 2 A BABL1L2AB

Existem quatro casos:

  1. q1=q2 e .F1=F2
  2. q1q2 e .F1=F2
  3. q1=q2 e .F1F2
  4. q1q2 e .F1F2

Minha pergunta é

Quais são as diferenças entre e nos casos 2, 3 e 4?L 2L1L2

Eu tenho uma pergunta mais específica nessa linha,

O monóide de transição de um autômato é o conjunto de todas as funções no conjunto de estados induzido por seqüências de entrada. Veja a página para mais detalhes. O monóide de transição pode ser considerado como um monóide atuando no conjunto de estados. Veja esta página do Wiki para mais detalhes.

Em muitas literaturas, um autômato é chamado fortemente conectado quando a ação monóide é transitiva, ou seja, sempre há pelo menos uma transição (sequência de entrada) de um estado para outro.

Se e B são autômatos fortemente conectados, quais são as diferenças entre L 1 e L 2 nos casos 2, 3 e 4 acima?ABL1L2

Alguma literatura discutindo essas questões em detalhes?

Pesquisei muitos livros e artigos e não encontrei nada útil até agora. Acredito que ainda não tenho as palavras-chave apropriadas. Assim, estou procurando ajuda. Quaisquer indicações / referências serão muito apreciadas.

scaaahu
fonte
O que você quer dizer com "quais são as diferenças"? Você quer saber se e L 2 podem / devem diferir nos casos 2,3,4? L1L2
precisa
@HendrikJan Se você ler a resposta que Shaull forneceu abaixo, entenderá que e L 2 podem ser diferentes. (Ele usou L ( A ) e L ( B ) ). Não sei se devem diferir. Isso faz parte da minha pergunta. Eu perguntei "quais são as diferenças?". Não sugeri que devessem diferir. L1L2L(A)L(B)
Scaaahu 25/03

Respostas:

8

Como estão fortemente conectados, então, se q 1q 2 , existem palavras p 1 , p 2 de modo que δ ( q 1 , p 1 ) = q 2 e δ ( q 2 , p 2 ) = q 1 .A,Bq1q2p1,p2δ(q1,p1)=q2δ(q2,p2)=q1

Considere o caso 2, então sse p 2 w L ( B ) , e x L ( B ) sse p 1 x L ( A ) . Então você pode adicionar um prefixo para alternar entre idiomas.wL(A)p2wL(B)xL(B)p1xL(A)

Considere o caso 3 e, em seguida, novamente - por forte conectividade, no máximo palavras s 1 , . . . , s k tal que para cada q iF 1 você tenha aquele δ ( q i , s i ) F 2 e da mesma forma para a outra direção (de B para A ).|F1|s1,...,skqiF1δ(qi,si)F2BA

Assim, você pode compor sufixos para alternar entre idiomas.

Combinando isso, você pode caracterizar as diferenças usando prefixos e sufixos. Por exemplo, no caso 4, sse p 1 w s i na G ( A ) para alguns s i em um conjunto finito predeterminado.wL(B)p1wsiL(A)si

De fato, você pode até dizer algo interessante sobre essas palavras: defina como DFA, onde q 1 é o estado inicial e q 2 é o estado final; no caso 2, você tem L ( B ) = L ( C ) L ( A ) (e da mesma forma para a outra direção).Cq1q2L(B)=L(C)L(A)

Quanto aos sufixos, as coisas estão mais envolvidas, pois você não pode predeterminar em qual estado final você terminará. Não tenho certeza se você pode escrever isso como uma concatenação, mas você pode escrever onde A q é o DFA obtido de A estar definindo F = { q } e E q é um DFA que começa em q com os estados finais F 2 .L(B)=qF1L(Aq)L(Eq)AqAF={q}EqqF2

Para o caso 4, você pode combinar os dois.

Você pode estar preocupado com o fato de que essa não é uma resposta real, mas apenas uma caracterização de propriedades usando palavras em vez de estados, mas essa é uma resposta típica nesse campo (semelhante ao teorema de Myhill-Nerode).

Shaull
fonte
Eu entendo sua resposta. Meu problema é, por exemplo, tal não é único, ou seja, existem muitos p 1 tais que δ ( q 1 , p 1 ) = q 2 . Portanto, existem muitos prefixos na diferença entre L ( A ) e L ( B ) . Temos respostas mais precisas? p1p1δ(q1,p1)=q2L(A)L(B)
Scaaahu 24/03
Editei a resposta com algumas informações mais precisas.
Shaull
Eu realmente gosto da idéia de que DFA . Acho que tenho uma idéia aproximada de como lidar com os casos 3 e 4. Muito obrigado. Vou esperar um pouco antes de aceitar esta resposta. C
Scaaahu 24/03
Observe edições adicionais na postagem.
Shaull
11
Boa ideia. Você está assumindo um estado final de cada vez, e depois o sindicato. Espero que minha interpretação esteja correta.
Scaaahu 24/03