SSL Guia de Ejercicios

Documentos relacionados
No todos los LRs finitos se representan mejor con ERs. Observe el siguiente ejemplo:

DEL AUTÓMATA FINITO A LA EXPRESIÓN REGULAR

DEFINICIONES BÁSICAS E INTRODUCCIÓN A LENGUAJES FORMALES

1. Cadenas EJERCICIO 1

Expresiones regulares, gramáticas regulares

Expresiones regulares, gramáticas regulares Unidad 3

CAPITULO 2: LENGUAJES

Fundamentos de Ciencias de la Computación Trabajo Práctico N 2 Lenguajes Libres del Contexto y Sensibles al Contexto Segundo Cuatrimestre de 2002

Una cadena sobre Σ es cualquier secuencia de elementos de longitud finita sobre Σ.

Ciencias de la Computación I

ESPECIFICACIÓN DE SÍMBOLOS

TEORIA DE AUTOMATAS.

PROGRAMACIÓN II AÑO 2009 TALLER 3: TEORÍA DE LENGUAJES Y AUTÓMATAS

Lenguajes y Compiladores Aspectos Formales (Parte 2) Compiladores

Alfabetos, cadenas y lenguajes

Nombre de la asignatura: Lenguajes y Autómatas I. Créditos: Aportación al perfil

EJERCICIOS del TEMA 3: Lenguajes independientes del contexto

LENGUAJES Y GRAMÁTICAS

MODELOS DE COMPUTACION I Preguntas Tipo Test. 1. El lema de bombeo puede usarse para demostrar que un lenguaje determinado es regular.

NOTAS PARA LA MATERIA LENGUAJES DE PROGRAMACIÓN

Tema 2. Análisis léxico

Autómatas de Estados Finitos

autómatas finitos y lenguajes regulares LENGUAJES FORMALES Y

Teoría de la Computación Lenguajes Regulares (LR) - Propiedades

Lenguajes Incontextuales

TEORÍA DE AUTÓMATAS Y LENGUAJES FORMALES Grado en Ingeniería Informática Online, Curso Universidad Rey Juan Carlos

ANÁLISIS LÉXICO Ing. Ronald Rentería Ayquipa

1. Define que es un Autómatas finitos determinanticos y cuáles son sus elementos constitutivos (explique cada uno de ellos).

Lenguajes y Gramáticas

GRAMÁTICAS y LENGUAJES INDEPENDIENTES DEL CONTEXTO

Máquinas Secuenciales, Autómatas y Lenguajes. Tema 4: Expresiones Regulares. Luis Peña

Introducción. Las gramáticas definen las reglas que definen a los lenguajes Las reglas pueden tener una diversa variedad de esquemas

Lenguajes formales y autómatas

OPERACIONES SOBRE LENGUAJES REGULARES LA UNIÓN DE LENGUAJES REGULARES

Conceptos previos. Revisión de Sistemas Lógicos Formatos Numéricos. Dpto. Ingeniería Electrónica y Comunicaciones

Modelos De Computación. Guía Modelos de Computación. Tema I: Lenguajes y Gramáticas

08 Análisis léxico IV

Compiladores e Intérpretes

Teoría de Lenguajes // 1er. cuatrimestre de er. Parcial

INTRODUCCIÓN A COMPILADORES Y LENGUAJES FORMALES LENGUAJES FORMALES

GRAMATICAS LIBRES DEL CONTEXTO

LENGUAJES Y GRAMÁTICAS

Curso Básico de Computación

GRAMÁTICAS LIBRES DE CONTEXTO

Escribir la expresión regular de un número entero que no acepte que el primer dígito sea cero salvo el número 0. Solución: 0 [1-9][0-9]*

EXÁMENES DE REPASO Teoría de Autómatas y Lenguajes Formales UNIVERSIDAD FRANCISCO DE VITORIA

EJERCICIOS. Algo de C CADENAS

Curso Básico de Computación Preliminares

Tema 4: Gramáticas independientes del contexto. Teoría de autómatas y lenguajes formales I

Analizador De léxico. V A R i : I N T E G E R ; \n...

Tema 5 Lenguajes independientes del contexto. Sintaxis

ANÁLISIS LÉXICO AUTÓMATAS FINITOS

2 Autómatas finitos y gramáticas regulares.

Máquinas de estado finito y expresiones regulares

UNIVERSIDAD NACIONAL DE EDUCACIÓN A DISTANCIA Escuela Técnica Superior de Ingeniería Informática Procesadores de Lenguajes. Tema 2.

Tema: Autómatas de Estado Finitos

TEORÍA DE AUTÓMATAS Y LENGUAJES

10 Análisis léxico VI Compiladores - Profr. Edgardo Adrián Franco Martínez

DEFINICIÓN FORMAL DE UN AFP

MANEJO DE EXPRESIONES REGULARES

Sumario: Máquinas Secuenciales, Autómatas y Lenguajes Formales. Tema 1: Conceptos básicos (parte 1) Tema 1: Conceptos básicos

Teoría de Lenguajes. Gramáticas incontextuales

Gramáticas tipo 0 o Estructura de frase En este tipo de gramáticas no hay restricción en su producciones y tienen la forma siguiente.

Procesadores de Lenguaje

Lenguajes (gramáticas y autómatas)

Tema 5: Autómatas a pila. Teoría de autómatas y lenguajes formales I

Capítulo 9. Introducción a los lenguajes formales. Continuar

Sistemas de numeración, operaciones y códigos.

TEORÍA DE AUTÓMATAS Y LENGUAJES FORMALES Práctica 5 - Simplificación de gramáticas incontextuales

Compiladores: Análisis Sintáctico. Pontificia Universidad Javeriana Cali Ingenieria de Sistemas y Computación Prof. Gloria Inés Alvarez V.

Análisis léxico. Formalización y desarrollo. Procesadores de Lenguajes. Ingeniería Técnica superior de Ingeniería Informática

Capítulo 1 Lenguajes formales 6

Máquinas Secuenciales, Autómatas y Lenguajes Tema 5: Propiedades de los Lenguajes Regulares. Luis Peña

Sintaxis y Semántica. Tema 3. Sintaxis y Semántica. Expresiones y Lenguajes Regulares. Dr. Luis A. Pineda ISBN:

Autómatas Deterministas. Ivan Olmos Pineda

Lenguaje Regular. Sumario. Lenguaje Regular. Autómatas y Lenguajes Formales. Capítulo 8: Propiedades de los Lenguajes Regulares

INAOE. Expresiones Regulares. Operadores y Operandos. Equivalencia de Lenguajes de FA y Lenguajes RE. Leyes Algebraicas de las. Expresiones Regulares

Proyecto Intermedio Algoritmo de Earley

TEORÍA DE CONJUNTOS.

Sumario: Teoría de Autómatas y Lenguajes Formales. Capítulo 2: Lenguajes Formales. Capítulo 2: Lenguajes Formales

Ciencias de la Computación I

Compiladores. Análisis Sintáctico Ascendente. Adrian Ulises Mercado Martínez. Facultad de Ingeniería, UNAM. 5 de septiembre de 2013

Otras propiedades de los lenguajes regulares

Ciencias de la Computación I

PREPARADOR DE CALCULO 11

Expresiones regulares y derivadas

Autómatas de Pila y Lenguajes Incontextuales

Tema 3: Gramáticas regulares. Teoría de autómatas y lenguajes formales I

Procesadores de lenguaje

09 Análisis léxico V Compiladores - Profr. Edgardo Adrián Franco Martínez

Introducción a la Teoría de Autómatas, Lenguajes y Computación

AUTÓMATAS DE PILA Y LENGUAJES INDEPENDIENTES DEL CONTEXTO

Máquinas de Turing, recordatorio y problemas

Interrogación 2. Pontificia Universidad Católica de Chile Escuela de Ingeniería Departamento de Ciencia de la Computación. Segundo Semestre, 2003

Universidad de Valladolid

07 Análisis léxico III

16 Análisis sintáctico I

CONJUNTOS REGULARES. Orlando Arboleda Molina. 19 de Octubre de Escuela de Ingeniería de Sistemas y Computación de La Universidad del Valle

Funcionamiento del A.L.

Transcripción:

1 SSL Guia de Ejercicios INTRODUCCIÓN A LENGUAJES FORMALES 1. Dado el alfabeto = {a, b, c}, escriba las palabras del lenguaje L = {x / x }. 2. Cuál es la cardinalidad del lenguaje L = {, a, aa, aaa}? 3. Describa, mediante una frase en castellano, el lenguaje del Ejercicio 2. 4. Escriba todas las palabras del lenguaje L = {a 2n+1 / 1 n 4}. 5. Describa, mediante una frase en castellano, el lenguaje del Ejercicio (4). 6. Sea el lenguaje L = {, a, ba, abc}. Cuál es el mínimo alfabeto sobre el que se puede construir este lenguaje? 7. Sea el lenguaje L = {0, 00, 01, 010}. Escriba una concatenación de dos palabras que produce otra palabra de este lenguaje. 8. Sea el lenguaje anterior. Escriba una concatenación de dos palabras que produce una cadena que no es palabra del lenguaje. 9. Sea el lenguaje del Ejercicio (7). Escriba tres sublenguajes de L, de distinta cardinalidad. 10. Sea el lenguaje L = {(ab) 2n / 0 n 100}. Escriba las tres palabras de menor longitud de este lenguaje. 11. Sea el lenguaje del Ejercicio (10). Es cerrado bajo concatenación? 12. Describa, mediante una frase en castellano, el lenguaje del Ejercicio (10). 13. Describa, mediante una frase en castellano, el lenguaje L = {a n b n / 1 n 3000}. 14. Sea = {a, b} y sea el lenguaje *. Cuántas palabras de longitud 3 tiene este lenguaje? Y cuántas de longitud 4? 15. Sea el lenguaje infinito L = {ab n / n 1}. Escriba las tres palabras de menor longitud. 16. Sea el lenguaje infinito L = {(ab) n / n 1}. Escriba las tres palabras de menor longitud. 17. Sea el alfabeto = {0, 1}. Describa, por comprensión, un lenguaje infinito L sobre (que no sea *). 18. Describa, mediante una frase en castellano, el lenguaje definido en el ejercicio anterior. GRAMÁTICAS FORMALES Y JERARQUÍA DE CHOMSKY 1. Sea el LF L = {aa, ab, aba}. Describa la Definición Formal de dos GFs que generen este LF: una debe ser una 2. GR y la otra una GIC (no GR). 3. Sea el LF infinito L = {a n bc n / n 1}. Describa la Definición Formal de una GIC que genere este LF. 4. Dada la GIC construida en el punto anterior, utilice DERIVACIÓN para determinar si las siguierntes cadenas 5. son o no palabras del LF generado: a) aaabccc b) aabbcc c) aaabcc d) aabccc e) aaaccc LENGUAJES REGULARES E INTRODUCCIÓN A BNF 1. Escriba reglas en BNF que definan la sintaxis del siguiente lenguaje: Todos los números binarios que comienzan con una cantidad impar de 1s y terminan con un 0.

2 2. Sea un LP cuyos identificadores deben comenzar con dos letras en el rango A..F, y que a continuación pueden tener (no obligatoriamente) dígitos decimales en el rango 1..4. Escriba reglas en BNF que describan este LR. 3. Sea un LP cuyos números reales son sin signo y están formados por uno o más dígitos (parte entera), un punto y uno o más dígitos (parte fraccionaria). Escriba reglas en BNF que describan este LR. LAS EXPRESIONES REGULARES (ERs) 1. Escriba una ER que represente al LR Todas las palabras que comienzan con una a, seguida de dos o tres bes. 2. Escriba una ER que represente al LR Todas las palabras de longitud 5 que comienzan con una a y terminan con una b. 3. Escriba una ER que represente al LR La palabra vacía y todas las palabras de longitud 5 que comienzan con aa o con bb, y que terminan con aa o con bb. 4. Compruebe que las ERs 1(0+1)(0+1)1 y 1001+1011+1101+1111 son equivalentes. 5. Describa, mediante una frase, al LR del ejercicio anterior. 6. Escriba, por enumeración, el LR +(a+b) 3. 7. Sea la ER 101101+1001101+1001. Obtenga una ER más compacta, que sea equivalente a esta expresión. Ayuda: utilice las factorizaciones que crea conveniente. 8. Describa, mediante una frase, al lenguaje representado por la ER ab 10 (a + b) 6. 9. Explique por qué las ERs a* y a + no son equivalentes. 10. Verifique si el lenguaje asociado a la expresión a + es un subconjunto del lenguaje asociado a la ER a*. 11. Describa, mediante una frase, al LR representado por la ER a + b + y escriba sus tres palabras de menor longitud. 12. Describa, mediante una frase, al LR representado por la ER a + a y escriba sus tres palabras de menor longitud. 13. Compruebe que la ER a* + b* representa un LR que es un subconjunto del LR denotado por la ER a*b*. 14. Escriba una ER que represente a Todas las palabras sobre el alfabeto {0,1} que tienen exactamente tres 0s. 15. Compruebe que la ER a* + b* no denota el mismo lenguaje que (a + b)*. 16. Explique la diferencia que existe entre a*b*, (ab*)* y (a*b)*. Escriba las palabras comunes a los tres LRs. 17. Describa, mediante una frase, al lenguaje denotado por la ER ab* + (ba)*. 18. Escriba una ER que represente al lenguaje Todas las palabras sobre el alfabeto {0, 1} que comienzan con un 1 y terminan con un 0. 19. Escriba una ER que represente al lenguaje Todos los números binarios que comienzan con una cantidad impar de 1s o que solo tienen 1s. 20. Escriba una ER que represente al lenguaje Todas las palabras sobre el alfabeto {a, b, c} que comienzan con aa y terminan con cc, o que comienzan con un número impar de bes, o que solo tienen ces. 21. Escriba una ER que represente al lenguaje Todas las palabras sobre el alfabeto {a, b, c} que terminan con doble letra, o que comienzan con a y tienen un número impar de aes en total. 22. Escriba una ER que denote el lenguaje Todos los números binarios que terminan con doble 1, o que terminan con un triple 0, o que comienzan con una cantidad de 1s que es múltiplo de cuatro y terminan con 010. 23. Escriba una Definición Regular que represente al lenguaje de comentarios en C. 24. Escriba una Definición Regular que represente al lenguaje de los números reales en C (reales en punto fijo y reales en punto flotante, sin signo). 25. Escriba una Definición Regular que represente al lenguaje Todas las palabras sobre {a, b} que terminan con abb, o que comienzan con ba y terminan con bba.

3 INTRODUCCIÓN AL DISEÑO DE AUTÓMATAS FINITOS 1. Dibuje el Diagrama de Transiciones de un Autómata Finito que reconoce al lenguaje a*bb. 2. Dibuje el Diagrama de Transiciones de un Autómata Finito que reconoce al lenguaje bba*. 3. Dibuje el Diagrama de Transiciones de un Autómata Finito que reconoce al lenguaje a (a + b)*. 4. Dibuje el Diagrama de Transiciones de un Autómata Finito que reconoce al lenguaje a(ab)*. AFDs Y AFNs 1. Sea el lenguaje Todos los números binarios que contienen el grupo 00 por lo menos una vez. Dibuje el DT de un AFN que lo reconozca. 2. Dscriba la descripción formal del AFN diseñado en el ejercicio anterior. 3. Sea el lenguaje Todas las palabras sobre el alfabeto {a, b, c} que terminan con b. Dibuje el DT de un AFN que lo reconozca. 4. Escriba la descripción formal del AFN diseñado en el ejercicio anterior. 5. Describa formalmente los AFDs diseñados en los ejemplos del capítulo 4. 6. Dibuje el diagrama de transiciones de un AFN que acepte el lenguaje 101* + 1*00. 7. Escriba la descripción formal del AFN diseñado en el ejercicio anterior. 8. Describa formalmente a los AFDs de un solo estado sobre el alfabeto {a, b}, completos y no completos. 9. Describa formalmente a los AFDs de un solo estado sobre el alfabeto {a, b, c}, completos y no completos. 10. Describa formalmente a los AFDs de dos estados sobre el alfabeto {a, b}, completos y no completos. 11. Elija tres AFNs de dos estados de cada uno, sobre el alfabeto {a, b}, y descríbalos formalmente. 12. Encuentre un Lenguaje Regular que no contenga la palabra vacía, que no pueda ser aceptado por un AFD con un solo estado final. Escriba la Expresión Regular del lenguaje hallado. DE LA EXPRESIÓN REGULAR AL AUTÓMATA FINITO 1. Obtenga, por Thompson, el AFN que reconoce a la Expresión Regular a +. 2. Obtenga, por Thompson, el AFN que reconoce a la Expresión Regular (a + ba) +. 3. Obtenga un autómata por Semi Thompson que reconozca la expresión (a + ba) +. 4. Obtenga, por Thompson, el AFN que reconoce a la Expresión Regular (a + ba) +. 5. Obtenga un autómata por Semi Thompson que reconozca la expresión (a + ba) +. 6. Obtenga, por Thompson, el AFN que reconoce a la Expresión Regular a*ba + aba*. 7. Obtenga un autómata por Semi Thompson que reconozca la expresión a*ba + aba*. 8. Obtenga, por Thompson, el AFN que reconoce a la Expresión Regular (a + b + ab)*. 9. Obtenga un autómata por Semi Thompson que reconozca la expresión (a + b + ab)*. 10. Obtenga, por Thompson, el AFN que reconoce a la Expresión Regular (a + b)* aa (a + b)*. 11. Obtenga un autómata por Semi Thompson que reconozca la expresión (a + b)* aa (a + b)*. 12. Obtenga, por Thompson, el AFN que reconoce a la Expresión Regular (aa)* (a + b)*. 13. Obtenga un autómata por Semi Thompson que reconozca la expresión (aa)* (a + b)*. 14. Obtenga, por Thompson, el AFN que reconoce a la Expresión Regular (a + b) + (bb) +. 15. Obtenga un autómata por Semi Thompson que reconozca la expresión (a + b) + (bb) +. 16. Obtenga, por Thompson, el AFN que reconoce a la Expresión Regular (a* + b*)* a. 17. Obtenga un autómata por Semi Thompson que reconozca la expresión (a* + b*)* a. 18. Obtenga, por Thompson, el AFN que reconoce a la Expresión Regular a*b(c*a)*.

4 19. Obtenga un autómata por Semi Thompson que reconozca la expresión a*b(c*a)*. 20. Obtenga, por Thompson, el AFN que reconoce a la Expresión Regular cb* + a +. 21. Obtenga un autómata por Semi Thompson que reconozca la expresión cb* + a +. 22. Obtenga, por Thompson, el AFN que reconoce a la Expresión Regular a + ac (a + b)* + c (a + b + c)*. 23. Obtenga un autómata por Semi Thompson que reconozca a + ac (a + b)* + c (a + b + c)*. DEL AFN AL AFD 1. Diseñe un AFN que tenga 4 transiciones-, 2 ciclos y 3 estados finales; luego, aplique la Construcción de Subconjuntos para hallar un AFD equivalente. 2. Sea el AFN con las siguiente TTs: estado a b 0- {1,3} {1} {1,2} 1 - {1,2} {1} 2 - {1,3} {1} 3+ {3} {1,2,3} - Construya el AFD equivalente. 3. Sea el AFN del ejercicio anterior, pero sin las transiciones-. Construya el AFD equivalente. OBTENCIÓN DEL AFD MÍNIMO 4. Dibuje el DT y describa formalmente al AFD mínimo para cada uno de los siguientes lenguajes: (i) (a+b+c)*acb*; (ii) a*ba* + a*b*aa; (iii) (a+b)*a(a+b). 5. Compruebe que las siguientes Expresiones Regulares son equivalentes: (i) (a*+b*)*; (ii) (( +a)b*)*. 6. Verifique si las siguientes expresiones son equivalentes: (i) a(b+ab*a)*(ab*+ ); (ii) a(a+b)*. 7. Obtenga el DT y la descripción formal del AFD mínimo para el autómata que tiene estado inicial A, estado final D, y las siguientes transiciones: A => 0 => B y A => 1 => A, B => 0 => A y B => 1 => C, C => 0 => D y C => 1 => B, D => 0 => D y D => 1 => A, E => 0 => D y E => 1 => F, F => 0 => G y F => 1 => E, G => 0 => F y G => 1 => G, H => 0 => G y H => 1 => D. 8. Cuáles de los siguientes AFDs son equivalentes? x a b x a b x a b x a b x a b 0-1 0 0-1 5 0-5 1 0-2 1 0-1 2 1+ 2 3 1 2 4 1 4 2 1 2 1 1 1 4 2+ 1 4 2 3 4 2 3 2 2+ 3 4 2+ 3 1 3 4 5 3 2 4 3+ 4 2 3+ 2 4 3+ 2 1 4 3 5 4 5 3 4+ 5 1 4 4 1 4 2 1 9. 5 1 5 5+ 5 1 5+ 3 0 5 5 0 10. Sea el AFN con la siguiente Tabla de Transiciones: x a b c 0- {1} {1} - - 1 {2,3} - {3} {4,5} 2 {2} - {4} {5} 3+ - - {1,2} {5} 4 {4,5} {0,2} - - 5+ - {3,4} - - Obtenga el AFD mínimo.

5 11. Determine, por medio de los respectivos AFDs mínimos, si los siguientes pares de ERs son equivalentes: (i) a(ba)* + c(a* + b)* y c(a*b)*a* + (ab)*a (ii) (a*bbb)*a* y a*(bbba*)* (iii) ((a + bb)*aa)* y + (a + bb)*aa (iv) a(aa)*( + a)b + b y a*b. DEL AUTÓMATA FINITO A LA EXPRESIÓN REGULAR 1. Si se parte de un AFN: el método sufre alguna modificación? En caso afirmativo, explíquelo. 2. Sea el lenguaje: Todas las palabras sobre {a, b} que contienen, por lo menos, tres aes consecutivas, o que terminan con b. Obtenga una ER que denote este lenguaje, partiendo de un autómata que lo reconozca. La ambigüedad del lenguaje natural posibilita que la frase que describe al lenguaje pueda ser interpretada de varias formas; si es así, obtenga la ER solicitada para cada lenguaje que se le ocurra. 3. Sea un AF de cinco estados, con estas características: el estado inicial es 0; los estados finales son 1 y 2; las transiciones son 0 => a => 1, 0 => b => 1, 0 => b => 0, 1 => a => 2, 2 => a => 3, 2 => b => 2, 3 => b => 3, 4 => a => 1. Obtenga una ER que represente al lenguaje reconocido por este autómata. Ayuda: no se olvide de la depuración. 4. Sea el lenguaje: Todos los números binarios que terminan con 11 y cuya cantidad total de 1s es múltiplo de cuatro. Obtenga una ER para este lenguaje. 5. Sea el AFN con la siguiente TT: x a b 0- {0,1} - - 1 - - {2,4} 2 - {3} - 3+ {3} - - 4 {3} - - Obtenga la ER del lenguaje reconocido. 6. Sea la ER a*bc + a(b + c)*c. Obtenga el AFD mínimo y, a partir de él, la ER del lenguaje que reconoce. Compare las dos ERs. OPERACIONES CON AUTÓMATAS FINITOS 1. Describa formalmente al AFD que reconoce al lenguaje Todas las palabras sobre {a, b} que no contienen la subcadena bab. A partir de este AFD, halle una ER que denota al lenguaje definido. 2. Dados los siguientes pares de ERs, obtenga el AFD intersección para cada caso y, a partir de él, una ER del LR intersección. Además, describa cada lenguaje mediante una frase. a. (a+b)*a y b(a+b)*; b. (a+b)*a y (a+b)*aa(a+b)* c. (a+b)*a y (a+b)*b d. (b+ab)*(a+ ) y (a+b)*aa(a+b)* e. (ab*)* y b(a+b)* 3. Sea el lenguaje L 1 : Todas las palabras sobre {a, b} de longitud impar y sea el lenguaje L 2 : Todas las palabras sobre {a, b} con una cantidad impar de aes en total. Obtenga el AFD intersección y la ER del lenguaje intersección. Describa, mediante una frase, el LR hallado. 4. Sea el lenguaje L 1 : Todas las palabras sobre {a, b} de longitud par y sea el lenguaje L 2 : Todas las palabras sobre {a, b} con una cantidad impar de bes en total. Obtenga el AFD intersección y la Expresión Regular del lenguaje intersección. Describa, mediante una frase, al lenguaje hallado.

6 5. Para los lenguajes intersección hallados en los dos ejercicios anteriores, obtenga los AFDs que reconocen a los respectivos lenguajes complemento. Para cada uno de ellos, deduzca una Expresión Regular a partir del AFD y descríbalo mediante una frase. 6. Sea el AFD M 1 dado por la siguiente Tabla de Transiciones: x a b 0-1 - 1+ - 0 y sea el AFD M 2 descripto mediante la siguiente Tabla de Transiciones: x a b 2-3 - 3 4 2 4+ - - Obtenga los siguientes AFDs, y, a partir de ellos, una Expresión Regular que describa al correspondiente lenguaje: a. M 1 M 2 ; (b) M 1 M 2 ; (c) M 2 M 1 ; (d) M 1 *; (e) M 2 *; (f) M + 1 ; (g) M + 2 ; (h) M c 1 ; (i) M c 2 ; (j) M 1 M 2. 7. Sea el lenguaje Todas las palabras sobre {a, b, c} que: (i) comienzan con a y terminan con c, o (ii) no tienen dos o más bs consecutivas y comienzan con un número impar de cs. Diseñe el AFD mínimo que reconoce a este lenguaje y halle, a partir de él, una Expresión Regular para el lenguaje descripto. 8. Sea el lenguaje Todas las palabras sobre {a, b, c} que no contienen triple aes y no contienen la subcadena abc. Diseñe el AFD mínimo que reconoce a este lenguaje y halle, a partir de él, una Expresión Regular para el lenguaje descripto. VALIDACIÓN DE CADENAS En cada caso, escriba un programa ANSI C que pruebe la implementación realizada. 1. Diseñe e implemente un AFD que convierta cadenas que representan números binarios, a su valor en base 10, sobre el alfabeto ASCII (alfabeto completo). 2. Diseñe e implemente un AFD que convierta cadenas que representan números en hexadecimal, a su valor en base 10, sobre el alfabeto ASCII (alfabeto completo). Implemente el Algoritmo para los ejercicios anteriores. ANALIZADORES LÉXICOS Supongamos un lenguaje de programación muy básico e inefectivo, constituído solo por identificadores, el operador de asignación (=), el carácter punto y coma (;) que actúa como terminador de una sentencia, y espacios que actúan como separadores. 1. Incremente el Lenguaje de Programación descripto con las palabras reservadas if y while, los caracteres de puntuación paréntesis izquierdo ( ( ) y paréntesis derecho ( ) ), y los operadores mayor ( >) y menor o igual (<=). Diseñe e implemente el Analizador Léxico que reconoce los lexemas para este nuevo LP. 2. Agregue el reconocimiento de números enteros con signo.