teoría de autómatas y lenguajes formales con jflap
DESCRIPTION
Teoría de Autómatas y Lenguajes Formales con JFLAPTRANSCRIPT
-
Teora de Autmatas y Lenguajes FormalesPrctica Nmero 4 con JFLAP*
Expresiones Regulares
1. Expresiones Regulares con JFLAPJFLAP nos permite trabajar con expresiones regulares mediante una noticin
muy parecida a la estndar que usted ya conoce. En particular, las operacionesde unin y clausura de Kleene se representan de la misma forma (+, ), mientrasque el encadenamiento se representa por la yuxtaposicin de smbolos. Para ac-tivar el modo de trabajo con expresiones regulares ejecutamos JFLAP y pulsamosel botn
que nos activa una ventana como la siguiente
* cAntonio Tomeu
1
-
Trabajando con Expresiones Regulares
donde podemos editar la expresin regular que deseemos de acuerdo a lasconvenciones notacionales ya establecidas. Por ejemplo, el lenguaje L = {0n1 :n 0} est representado por la expresin 01. Dla como entrada y gurdela enun fichero con el nombre que prefiera. El item de men Convert permite conectara las expresiones regulares con los autmatas finitos a travs del algoritmo deThompson que usted ya conoce. Si convierte la expresin regular indicada ypulsa el botn Do All obtendr el autmata con transiciones que reconoce allenguaje en cuestin.
AFND- equivalente
Si ahora desea eliminar transiciones debe exportarlo mediante el botn
2
-
Export y a continuacin en la nueva ventana obtenida escoger Convert to DFA.Finalmente complete el trabajo pulsando el botn Complete en la subventanaderecha del nuevo entorno que se obtiene, y llegar a
AFD mnimo equivalente
que es la representacin finita determinista mnima que reconoce el mismolenguaje que la expresin regular de partida representaba.El paso inverso tambin es posible. D ahora como entrada el siguiente AFND
a JFLAP
3
-
Autmata No Determinista
que representa a un posible reconocedor de elementos pertenecientes a algnhipottico lenguajes de programacin. Escoja ahora la opcin del men Convertrotulada con Convert FA to RE. Se requieren algunas transiciones nulas adi-cionales. Pulse el botn Do it. Siga ahora las instrucciones que el entorno detrabajo le proporciona para obtener
Autmata Intermedio
Finalmente pulse el botn Export para obtener la expresin regular equiva-lente.
4
-
ER equivalente
2. EjerciciosPractiquemos a continuacin el algoritmo de Thompson, verificando el traba-
jo que realizamos utilizando JFLAP. En consecuencia, para cada uno de las sigu-ientes expresiones regulares, realice las siguientes operaciones: obtenga (man-ualmente) el AFND- equivalente. Compare resultados.
(a) (0 + 1)
(b) 00(0 + 1) + (1)
(c) L = {string, int, boolean, float, double}(d) Imagine el conjunto de palabras reservadas que conforman el conjunto de
estructuras de control del lenguaje C. Aada a ello signos de puntuacintales como la coma, el punto y coma, separadores, parntesis, etc. Escribaahora una expresin regular que represente a tal lenguaje. Utilice JFLAPpara obtener el AFD equivalente.
(e) Escriba una expresin regular que represente a los nmeros reales en no-tacin de coma flotante (por ejemplo 2,3E3) incluyendo naturales, en-teros y reales sin mantisa. Utilice JFLAP para obtener un AFD equivalente.
A continuacin transfrmelo directamente con JFLAP en el AFD equiva-lente. Para cada uno de ellos, introduza cadenas de prueba pertenecientes y
5
-
no pertenecientes al lenguaje. Guarde cada AFD obtenido en un fichero llama-do prac4_x,donde x representar a a, b, c, d e.Comprima todos los ficheros prac4_x en un fichero .zip con la siguiente
nomenclatura:Nombre_Apellido1_Apellido_2.zip
y envelo al profeor mediante el correo electrnico que incorpora el CampusVirtual Web-CT en un fichero ligado cuyo asunto ser JFLAP4.
6