Está en la página 1de 3

Compiladores Prctica 2 a Autmatas o Nombre Grupo

Jos Snchez Jurez e a a 26 de agosto de 2012

1.

Objetivo

Construir un AFN por medio de la construccin de Thompson, convertir un o AFN en AFD utilizando el algoritmo de subconjuntos.

2.

Teor a
Un AFD no tiene: o caracater vac o.

1. Transiciones

2. Dos transiciones marcadas identicamente hacia el mismo estado. De lo contrario se obtiene un AFN. Para representar las transiciones lo hacemos como, move(s, c) que signica el movimiento de un estado s a otro estado pasando por el s mbolo c. Las transiciones en un AFN son muchas veces transiciones lo cul se representa como move(s, ) estas transiciones se pueden a eliminar si consideramos la cerradura-epsilon. El concepto de cerradura-epsilon se dene como: Un conjunto extendido con todos los estados que pueden ser alcanzados desde el estado al que se le aplica la cerradura-epsilon por medio de un nmero u cualquiera de transiciones-epsilon. La cerradura- de un conjunto de estados M se representa como: cerradura- (M ).

Construir por medio de la construccin de Thompson el autmata de la siguo o iente expresin regular: o (a|b) ac Los siguientes movimientos son la aplicacin de el algoritmo de subconjuntos o para convertir un AFN en AFD. move(s0 , a) = cerradura- ({t|s {1, 2, 5, 6, 7} and sa t T }) = cerradura({3, 8}) = {3, 8, 1, 2, 5, 6, 7} = s1 move(s0 , b) = cerradura- ({t|s {1, 2, 5, 6, 7} and sb t T }) = cerradura({8}) = {8, 1, 2, 5, 6, 7} = s2 move(s0 , c) = cerradura- ({t|s {1, 2, 5, 6, 7} and sc t T }) = cerradura({}) = { }. La siguiente secuencia es: move(s1 , a) = cerradura- ({t|s {3, 8, 1, 2, 5, 6, 7} and sa t T }) = cerradura({3, 8}) = {3, 8, 1, 2, 5, 6, 7} = s1 move(s1 , b) = cerradura- ({t|s {3, 8, 1, 2, 5, 6, 7} and sb t T }) = cerradura({8}) = {8, 1, 2, 5, 6, 7} = s2 move(s1 , c) = cerradura- ({t|s {3, 8, 1, 2, 5, 6, 7} and sc t T }) = cerradura({4}) = {4 } = s3 . Ahora la secuencia es: move(s2 , a) = cerradura- ({t|s {8, 1, 2, 5, 6, 7} and sa t T }) = cerradura({3, 8}) = {3, 8, 1, 2, 5, 6, 7} = s1 move(s2 , b) = cerradura- ({t|s {8, 1, 2, 5, 6, 7} and sb t T }) = cerradura({8}) = {8, 1, 2, 5, 6, 7} = s2 move(s2 , c) = cerradura- ({t|s {8, 1, 2, 5, 6, 7} and sc t T }) = cerradura{} = { }. La ultima secuencia es: move(s3 , a) = cerradura- ({t|s {4} and sa t T }) = cerradura- ({}) = {} move(s3 , b) = cerradura- ({t|s {4} and sb t T }) = cerradura- ({}) = {} move(s3 , c) = cerradura- ({t|s {4} and sc t T }) = cerradura- ({}) = { }.

3.

Actividades
Realice las siguientes actividades:

1. Construya el autmata AFN de la expresin regular (a|b) ac. o o 2. Construya un AFD a partir del autmata AFN obtenido en el punto ano terior aplicando el algoritmo de subconjuntos.

4.

Cuestionario
Imprimir la prctica para entregar el cuestionario en este formato. a

1. Escriba la tabla de transiciones del AFN y presente el diagrama del autmao ta. 2. Escriba la tabla de transiciones del AFD y presente el diagrama del autmao ta obtenido al aplicar el algoritmo de subconjuntos. Si entrega cdigo de algn lenguaje de alto nivel entregarlo en dos columnas o u a la par con el pseudocdigo. Entregar el cuestionario con letra bien hecha. o