Na ciência da computação teórica , notadamente na teoria dos autômatos e na teoria da computabilidade , uma máquina de Moore ou autômato de Moore (proposto por Edward F. Moore ) é um transdutor finito (ou seja, um autômato finito com uma saída) para o qual as saídas dependem apenas do Estado atual. Isso significa que cada estado possui uma letra de saída. A carta é emitida quando o status é alcançado. Em particular, o comprimento da palavra de saída é igual ao comprimento da palavra de entrada.
Essa definição é mais restritiva do que a das máquinas Mealy, para as quais os valores de saída dependem do estado atual e da letra de entrada. No entanto, para cada máquina Moore existe uma máquina Mealy equivalente e vice- versa.
As máquinas de Moore são a família mais simples de transdutores acabados .
Uma máquina de Moore é uma 6 tupla
feito de :
É conveniente observar o status por e o símbolo de saída por . A função de transição e a função de saída são estendidas às palavras de por indução, para e , por
Em outras palavras, a saída produzida pela palavra , lida do estado , é a palavra produzida pela palavra , lida do estado , seguida pela letra associada ao estado alcançado após a leitura .
A função desempenhada pelo autômato de Moore é a aplicação definida por:
É, portanto, a função que a uma palavra de , lida a partir do estado inicial , associa a palavra on obtida pela concatenação das letras associadas aos estados de chegada das transições percorridas.
Às vezes, uma máquina de Moore tem um conjunto finito de estados terminais . A função executada é então restrita a palavras de linguagem racional no alfabeto de entrada reconhecido pelo autômato. A linguagem das palavras produzidas pela função é então uma linguagem racional .
Normalmente, a função de transição é total; quando é parcial, a ausência de transição resulta no bloqueio do PLC.
O exemplo acima tem quatro estados. A função de transição é parcialmente definida no estado Tomando como estado inicial, o PLC produz, para a palavra de entrada , a palavra de saída . A carta nunca é produzida porque não há transição terminando em .
A transformação de um autômato de Moore em um autômato de Mealy equivalente é muito simples. Acrescentamos a uma transição a carta de saída do estado de chegada. No exemplo, o resultado é o seguinte:
Em seu artigo referenciado, Moore considera máquinas do tipo ( n ; m ; p ). Eles são autômatos com n estados, m símbolos de entrada e p símbolos de saída. Na seção Problemas adicionais no final de seu artigo, ele sugere estudar o seguinte problema: "Melhorando os limites dados nos Teoremas 8 e 9". O Teorema 8 é o seguinte:
Teorema 8 - Dada uma máquina do tipo ( n ; m ; p ) tal que quaisquer dois de seus estados são distinguíveis, existe um experimento de comprimento que determina o estado no final do experimento.
Anatolii Alexevich Karatsuba resolveu o problema de Moore de melhorar o terminal acima, provando, em 1957, enquanto ele era um estudante na Faculdade de Mecânica da Universidade Estadual de Moscou Lomonosov , o seguinte resultado:
Teorema - Dada uma máquina do tipo ( n ; m ; p ) tal que quaisquer dois de seus estados são distinguíveis, há um experimento de comprimento que determina o estado no final do experimento. Além disso, esse limite é atingido.
Este resultado foi publicado em 1960.