Máquinas de Moore y Mealy para contar el número de substrings ‘ab’

Prerrequisito: Máquinas Mealy y Moore , Diferencia entre la máquina Mealy y la máquina Moore
Problema: Construcción de las máquinas que toman el conjunto de todas las strings sobre {a, b} como entrada y cuentan el número de substrings ‘ab’
Suponga,

Ε = {a, b} and 
Δ = {0, 1} 

donde Ε y Δ son el alfabeto de entrada y salida respectivamente.

Explicación:
La máquina de Moore requerida se construye a continuación.

En el diagrama anterior, el estado inicial ‘X’ al obtener ‘b’ como entrada permanece en el estado de sí mismo e imprime ‘0’ como salida y al obtener ‘a’ como entrada transita a un estado ‘Y ‘ e imprime ‘0’ como salida.

El estado ‘Y’ al obtener ‘a’ como entrada, permanece en el estado de sí mismo e imprime ‘0’ como salida y al obtener ‘b’ como entrada, transmite al estado ‘Z’ e imprime ‘1’ como salida. El estado ‘Z’ al obtener ‘a’ como entrada, transmite al estado ‘Y’ e imprime ‘0’ como salida y al obtener ‘b’ como entrada, transmite al estado ‘X’ e imprime ‘0 ‘ como salida.

Por lo tanto, finalmente, la máquina Moore anterior puede contar fácilmente el número de substring ‘ab’, es decir, al obtener ‘ab’ como entrada, da ‘1’ como salida, por lo tanto, al contar las salidas ‘1’, podemos contar fácilmente la substring ‘ab’ .

Conversión de máquina Moore a máquina Mealy:
arriba, la máquina Moore toma un conjunto de todas las strings sobre {a, b} como entrada e imprime ‘1’ como salida para cada aparición de ‘ab’ como substring. Ahora necesitamos transformar el diagrama de transición anterior de la máquina de Moore en el diagrama de transición de la máquina Mealy equivalente.

Los pasos para la conversión requerida se dan a continuación:

  • Paso 1: Formación de la tabla de transición de estado de la máquina de Moore anterior :

    en la tabla de transición anterior, los estados ‘X’, ‘Y’ y ‘Z’ se mantienen en la primera columna que al obtener ‘a’ como la entrada transita a los estados ‘Y’, ‘Y’ e ‘Y’ respectivamente, mantenidos en la segunda columna y al obtener ‘b’ como entrada, transita a los estados ‘X’, ‘Z’ y ‘X’ respectivamente, mantenidos en la tercera columna. En la cuarta columna bajo Δ, hay salidas correspondientes de los estados de la primera columna. En la tabla, una flecha (→) indica el estado inicial.
  • Paso 2: Formación de la tabla de transición para la máquina Mealy desde arriba Tabla de transición de la máquina Moore
    : la tabla de transición a continuación se formará con la ayuda de la tabla anterior y sus entradas simplemente usando la salida correspondiente de los estados de la primera columna y colocándolos en la segunda y tercera columna según corresponda.

    En la tabla anterior, los estados en la primera columna como ‘X’ al obtener ‘a’ como entrada, pasa al estado ‘Y’ y da ‘0’ como salida y al obtener ‘b’ como entrada. al estado ‘X’ y da ‘0’ como salida y así sucesivamente para los estados restantes en la primera columna. En la tabla, una flecha (→) indica el estado inicial.
  • Paso 3: Finalmente, podemos formar el diagrama de transición de estado de la máquina Mealy con la ayuda de la tabla de transición anterior.
    El diagrama requerido se muestra a continuación:

    la máquina Mealy anterior toma un conjunto de todas las strings sobre {a, b} como entrada e imprime ‘1’ como salida para cada aparición de ‘ab’ como una substring.

Nota: Al convertir de máquina Moore a Mealy, el número de estados sigue siendo el mismo para la máquina Moore y Mealy, pero en el caso de la conversión de Mealy a Moore, no da el mismo número de estados.

Publicación traducida automáticamente

Artículo escrito por Kanchan_Ray y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *