Amanhã é a minha apresentação e quero esclarecer meus conceitos ...
Eu li no DFA: "Para cada estado, a transição em todos os símbolos possíveis (alfabeto) deve ser definida".
Para cada estado, a transição de todos os símbolos possíveis é obrigatória no DFA? Se não, por favor, dê alguns exemplos?
Respostas:
Um DFA é especificado pelos seguintes dados:
Como você pode ver na assinatura de , ele especifica uma transição em cada estado para cada símbolo.δ
fonte
Suponha que um DFA tenha transições ausentes. O que acontece se você encontrar um símbolo que não possui uma transição definida para ele? O resultado é indefinido. Isso parece violar a característica "determinística" de um DFA.
No entanto, é trivial transformar um DFA incompleto em um DFA completo. Basta adicionar um novo estado
illegal
e mapear quaisquer transições indefinidas para oillegal
estado. Por fim, adicione transições para cada símbolo doillegal
estado de volta para si mesmo. Esseillegal
estado geralmente é chamado de estado de coletor , porque quando os dados caem no coletor, não há como sair.Portanto, de uma perspectiva prática, é meio discutível, desde que você tenha uma maneira bem definida de lidar com as transições ausentes.
fonte
Uma palavra é aceita por um NFA se ele tiver uma execução de aceitação. Um autômato determinístico tem no máximo uma execução. Um autômato completo possui pelo menos uma execução.
Alguns autores definem autômatos de aparar como aqueles em que cada estado está em algum caminho de um estado inicial para um estado final. Para determinados idiomas, você não pode ter autômatos que são aparados e completos. Nesses casos, é conveniente manter o requisito de completude fora da definição de autômato determinístico.
fonte