Your SlideShare is downloading. ×
0
Expresiones regulares y gramáticas
Expresiones regulares y gramáticas
Expresiones regulares y gramáticas
Expresiones regulares y gramáticas
Expresiones regulares y gramáticas
Expresiones regulares y gramáticas
Expresiones regulares y gramáticas
Expresiones regulares y gramáticas
Expresiones regulares y gramáticas
Expresiones regulares y gramáticas
Expresiones regulares y gramáticas
Expresiones regulares y gramáticas
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Expresiones regulares y gramáticas

212

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
212
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
9
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. EXPRESIONESREGULARES Y GRAMÁTICAS REGULARES MAXIMO DE LEON 10-1122 SAMIR GUERRERO 09-0793
  • 2. LENGUAJES REGULARESLos lenguajes regulares se llaman ası porque sus palabras contienen “regularidades” o repeticiones de los mismoscomponentes, como por ejemplo en el lenguaje L1 siguiente:• L1 = {cb, cbcb, cbcbcb, cbcbcbcb, . . .}• En este ejemplo se aprecia que las palabras de L1 son simplemente repeticiones de “cb” cualquier numero de veces. Aquí la “regularidad” consiste en que las palabras contienen “cb” algún numero de veces.• Otro ejemplo mas complicado serıa el lenguaje L2:L2 = {abc, cc, abab, abccc, ababc, . . .}• La regularidad en L2 consiste en que sus palabras comienzan con repeticiones de “ab”, seguidas de repeticiones de “c”. Similarmente es posible definir muchos otros lenguajes basados en la idea de repetir esquemas simples. Esta es la idea básica para formar los lenguajes Regulares.
  • 3. DEFINICIÓN FORMAL DE LENGUAJES REGULARES• Dentición: Un lenguaje L es regular si y solo si se cumple al menos una de las condiciones siguientes:• L 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.• L es la cerradura de Kleene de algún lenguaje regular, L = R∗Esta dentición nos permite construir expresiones en la notación de conjuntos que representan lenguajesregulares.
  • 4. EXPRESIONES REGULARES• La notación de conjuntos nos permite describir los lenguajes regulares, pero nosotros quisiéramos una notación en que las representaciones de los lenguajes fueran simplemente texto (cadenas de caracteres). Así las representaciones de los lenguajes regulares serıan simplemente palabras de un lenguaje (el de las representaciones correctamente formadas). Con estas ideas vamos a definir un lenguaje, el de las expresiones regulares, en que cada palabra va a denotar un lenguaje regular.Definicion.- Sea Σ un alfabeto. El conjunto ER de las expresiones regulares sobre Σ contiene las cadenas enel alfabeto Σ∪ {“∧”, “+”, “•”, “∗”, “(”, “)”, “Φ”} que cumplen con lo siguiente:1. “∧” y “Φ” ∈ ER2. Si σ ∈ Σ, entonces σ ∈ ER.3. Si E1, E2 ∈ ER, entonces “(”E1“+”E2“)” ∈ ER, “(”E1“•”E2“)” ∈ ER, “(”E1“)∗”∈ ER.
  • 5. SIGNIFICADO DE LAS ER• Las ER son simplemente formulas cuyo propósito es representar cada una de ellas un lenguaje. Así, el significado de una ER es simplemente el lenguaje que ella representa.
  • 6. METODOLOGÍA DE DISEÑO DE LAS ER• Al tratar de encontrar una ER para un lenguaje dado, mientras mas complejo sea el lenguaje es obvio que resulta mas difícil encontrar por pura intuición dicha ER. En estos casos puede ser conveniente trabajar en forma metódica. Una técnica que funciona en muchos casos consiste en determinar primero la estructura de la ER, dejando unos “huecos” pendientes para resolverse luego. Estos huecos, que llamaremos contextos, son también lenguajes para los que habrá que encontrar una ER.• Ejemplo.Obtener una ER para el lenguaje en el alfabeto {a, b, c} en que las palabras contienen exactamente una vezdos b contiguas. Por ejemplo, las palabras aabb, babba, pertenecen al lenguaje, pero no aaba, abbba nibbabb.
  • 7. EQUIVALENCIAS DE EXPRESIONES REGULARES• A continuacion damos una lista de las principales equivalencias de ER, clasificadas en 3 grupos:• . R + S = S + R, (R + S) + T = R + (S + T), R + Φ = Φ + R = R, R + R = R• R∗ = ∧ + RR∗• (R∗S)∗ = ∧ + (R + S)∗S, (RS∗)∗ = ∧ + R(R + S)∗
  • 8. EQUIVALENCIA DE EXPRESIONESREGULARES Y AUTOMATAS FINITOS
  • 9. GRAMATICAS REGULARES
  • 10. GRAMATICAS REGULARES• Nosotros nos vamos a interesar por el momento en las gram´aticas cuyas reglas son de la forma A → aB o bien A → a, donde A y B son variables, y a es un caracter terminal. A estas gram´aticas se les llama regulares.• 1. S → aA• 2. S → bA• 3. A → aB• 4. A → bB• 5. A → a• 6. B → aA• 7. B → bA
  • 11. AUTÓMATAS FINITOS Y GRAMÁTICASREGULARES• De manera similar a como hicimos en la sección anterior, aquí vamos a establecer la equivalencia entre las gramáticas regulares y los lenguajes regulares -y por ende los automatas finitos. Este resultado es establecido por el siguiente• Teorema.- La clase de los lenguajes generados por alguna gramática regular es exactamente la de los lenguajes regulares.

×