Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.

Expresiones regularesfinal

  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Expresiones regularesfinal

  1. 1. Robín Peña 12-0914Noel Gutiérrez 12-0723
  2. 2. Lenguajes RegularesLos lenguajes regulares se llaman así porque sus palabras contienen regularidades” orepeticiones de los mismos componentes, como por ejemplo en el lenguaje L1 siguiente:L1 = {ab, abab, ababab, abababab, . . .}Un lenguaje L es regular si y sólo si se cumple al menos una de las condiciones siguientes: • Es finito.L { • • Es la unión o la concatenación de otros lenguajes regulares R1 y R2, L = R1 [ R2 o L = R1R2 respectivamente. Es la cerradura de Kleene de algún lenguaje regular, L = R.
  3. 3. Expresiones RegularesEl conjunto ER de las expresiones regulares sobre Σ contiene las cadenas en el alfabeto Σ∪{“∧”, “+”, “•”, “∗”, “(”, “)”, “Φ”} que cumplen con lo siguiente: • “∧” y “Φ” ∈ ER.{ • • Si σ ∈ Σ, entonces σ ∈ ER. Si E1, E2 ∈ ER, entonces “(”E1“+”E2“)” ∈ ER, “(”E1“•”E2“)” ∈ ER, “(”E1“)∗” ∈ ER Nota: Las comillas “ ” enfatizan el hecho de que estamos definiendo cadenas de texto, no expresiones matemáticas
  4. 4. Significados de las ERLas ER son simplemente formulas cuyo propósito es representar cada una de ellas unlenguaje. Así, el significado de una ER es simplemente el lenguaje que ella representa.Por ejemplo, la ER “” representa el conjunto vacío {}.1. L(“”) = ; (el conjunto vacío)2. L(“^”) = {"}3. L(“”) = {}, 2 .4. L(“(”R“•”S“)” ) = L(R)L(S),R, S 2 ER5. L( “(”R“+”S“)” ) = L(R) [ L(S),R, S 2 ER6. L( “(”R“)” ) = L(R),R 2 ER
  5. 5. Metodología de diseño de las ERAl tratar de encontrar una ER para un lenguaje dado, mientras más complejo sea ellenguaje es obvio que resulta más difícil encontrar por pura intuición dicha ER. En estoscasos puede ser conveniente trabajar en forma metódica.Una técnica que funciona en muchos casos consiste en determinar primero la estructurade la ER, dejando unos “huecos” pendientes para resolverse luego. Estos huecos, quellamaremos contextos, son también lenguajes para los que habrá que encontrar una ER. EjemploObtener una ER para el lenguaje en el alfabeto {a, b, c} en que las palabras contienenexactamente una vez dos b contiguas. Por ejemplo, las palabras aabb, babba, pertenecenal lenguaje, pero no aaba, abbba ni bbabb.
  6. 6. Equivalencias de Expresiones Regulares1. R + S = S + R, (R + S) + T = R + (S + T), R + = + R = R, R + R = R2. R • ^ = ^ • R = R, R • = • R = , (R • S) • T = R • (S • T)3. R • (S + T) = R • S + R • T, (S + T) • R = S • R + T • R4. R = R • R = (R) = (^ + R), = ^ = "5. R = ^ + RR6. (R + S) = (R + S) = (RS) = (RS)R = R(SR) 6= R + S7. RR = RR, R(SR) = (RS)R8. (RS) = ^ + (R + S)S, (RS) = ^ + R(R + S)9. R = SR + T ssi R = ST, R = RS + T ssi R = TS
  7. 7. Limites de las representaciones textualesNOTA: Un lenguaje puede tener varias representantes, sin embargo, se desea que unacadena de caracteres no pueda representar mas de un lenguaje, pues de otro modo nosabríamos a cual de ellos representa.
  8. 8. Limites de las representaciones textualesPor ejemplo, el conjunto de todas las palabras formadas por a’s y b’s, que es el conjuntoinfinito {", a, b, ab, ba, aaa, aab, . . .}, puede ser representado mediante la cadena decaracteres “{a, b}”, que es una palabra formada por caracteres del alfabeto {“a”,“b”,“{”,“}”,“”,“,” }.Como vemos en este ejemplo, una cadena de caracteres de 6 caracteres puederepresentar todo un lenguaje infinito. TeoremaEl conjunto de los lenguajes en un alfabeto finito es incontable.
  9. 9. Equivalencia de Expresiones Regulares y Autómatas FinitosAún cuando por varios ejemplos hemos visto que lenguajes representados porexpresiones regulares son aceptados por autómatas finitos, no hemos probado que paracualquier expresión regular exista un autómata finito equivalente, y viceversa.Esto se establece en el siguiente… Teorema de KleeneUn lenguaje es regular si y solo si es aceptado por algún autómata finito.
  10. 10. Conversión de ER a AFUna posible solución es el uso de las graficas de transición. Estas últimas sonesencialmente AFN en que las etiquetas de las flechas tienen expresiones regulares, enlugar de palabras. Las graficas de transición (GT) son por lo tanto quíntuplos (K,,, s, F)en donde 2 K × ER × K.Los AFN son un subconjunto propio de las GT, puesto que las palabras en las etiquetasde un AFN pueden ser vistas como expresiones regulares que se representan así mismas.
  11. 11. Conversión de AF a ERLa prueba de la parte “si” del teorema consiste en dar un procedimiento para transformaren forma sistemática un autómata finito en una expresión regular equivalenteUn procedimiento para hacerlo consiste en ir eliminando gradualmente nodos de una GT,que inicialmente es el AFN que se quiere transformar, hasta que únicamente queden unnodo inicial y un nodo final.
  12. 12. Conversión de AF a ER1- El primer paso en este procedimiento consiste en añadir alautómata finito un nuevo estado inicial i, mientras que elantiguo estado inicial q0 deja de ser inicial, y un nuevo estado final f, mientras que los antiguos estados finales qi ∈ F dejan de serfinales;2- El segundo paso consisteen eliminar nodos intermedios en la GT.
  13. 13. Conversión de AF a EREjemplo: Obtener una ER para el AFD de la figura siguiente: Por lo que finalmente la ER buscada es (bb∗a) ∗a(a + b) ∗ + (bb∗a)∗ bb∗.
  14. 14. Gramáticas FormalesUna gramática es un conjunto de reglas para formar correctamente las frases de unlenguaje; así tenemos la gramática del español, del francés, etcUna regla es una expresión de la forma α → β, en donde tanto α como β son cadenas desímbolos en donde pueden aparecer tanto elementos del alfabeto Σ como unos nuevossímbolos, llamados variables.Los símbolos que no son variables son constantes.
  15. 15. Gramáticas Regulares DefiniciónUna gramática regular es un cuádruplo (V, Σ, R, S) en donde:V es un alfabeto de variables,Σ es un alfabeto de constantes,R, el conjunto de reglas, es un subconjunto finito de V × (ΣV ∪ Σ).S, el símbolo inicial, es un elemento de V
  16. 16. Autómatas finitos y Gramáticas RegularesTeorema: La clase de los lenguajes generados por alguna gramática regular esexactamente la de los lenguajes regulares. Limitaciones de los Lenguajes RegularesLos AF están limitados a los estados de que disponen como único medio para “recordar”la serie de símbolos recibidos hasta un momento dado.
  17. 17. El teorema de Bombeo TeoremaSi L es un lenguaje regular infinito, entonces existen cadenas x, y, z tales quey 6= ε, y xynz ∈ L, para algún n ≥ 0.¿Qué?Lo que este resultado establece es que, suponiendo que cierto lenguaje esregular, entonces forzosamente dicho lenguaje debe contener palabras en que unasubcadena se repite cualquier número de veces.

×