Manual Expresiones Regulares PDF

Title Manual Expresiones Regulares
Author JEAN PIERRE MAURICIO TERAN LOZANO
Course Teoria De Automatas Y Lenguajes Formales
Institution Universidad Nacional de Cajamarca
Pages 14
File Size 826.5 KB
File Type PDF
Total Downloads 66
Total Views 152

Summary

Apuntes de las clases, para examen de expresiones regulares...


Description

CURSO TEORIA DE LENGUAJES EJERCICIOS RESUELTOS EXPRESIONES REGULARES AUTOMATAS FINITOS

DOCENTE ING SANDRA RODRIGUES

TEORIA DE LENGUAJES UNC

2

EXPRESIONES REGULARES a) Unión alternativa { α | β } = { α } U { β } = (a | b)* =(a+b)* b) Concatenación α β={ α } { β } c) Cierre operación estrella { α *} = { λ , α , α α , α α α , α α α α … } d) Cierre positivo { α+ } = { α , α α , α α α , α α α α … } PROPIEDADES DE LAS EXPRESIONES REGULARES 1. α + (β + γ) = (α + β) + γ 2. α + β = β + α 3. α + Ø = α 4. α + α = α 5. α · λ = α 6. α · Ø = Ø 7. α · (β · γ) = (α · β) · γ 8. α · (β + γ) = αβ + αγ, (β + γ) · α = βα + γα 9. λ* = λ 1O. Ø* = λ 11. α · α* = α* · α= α* 12. α* = α* · α* = (α*)* = (α α*)* 13. α* = λ + α · α* 14. (α + β)* = (α* + β*)* 15. (α + β)* = (α* · β*)* = (α* · β)* · α* 16. α · (β · α)* = (α · β)* · α 17. Si λЄ L(a), entonces a+λ=a 18. ( λ |expresión regular)=(expresión regular)*

TEORIA DE LENGUAJES

TEORIA DE LENGUAJES UNC

3

EJERCICIOS DE EXPRESIONES REGULARES EJERCICIO 1: Sea el vocabulario V = { a , b } y la expresión regular aa*bb*. Indicar el lenguaje que denota y algunas cadenas de dicho lenguaje. SOLUCION PROPIEDAD

α · α* = α* La Expresión regular es : aa*bb*=a*b* Algunas cadenas: ab, aab , aaaab , abbbb , abb. El lenguaje que se describe es L= {cadenas que comienzan por una a y continúan con varias o ninguna a, y siguen con una b y continúan con varias o ninguna b}. L= a+ b+ EJERCICIO 2: Sea el vocabulario V = {0,1} Hallar una expresión regular que denota el conjunto de cadenas que empiezan por uno y van seguidas por (01) cualquier número de veces o ninguna. SOLUCION

Las tiras son: 1 101 10101 1010101 101010101... La Expresión regular es: 1(0 | 1)* EJERCICIO 3: Dada la expresión regular (a | b)*, el lenguaje que denota es el que puede formar con todas las cadenas compuestas por a y b incluida la cadena vacía. Hallar algunas cadenas de la expresión regular (a | b)*

TEORIA DE LENGUAJES

TEORIA DE LENGUAJES UNC

4

SOLUCION

Cadenas de la expresión regular (a | b)* λ aaa bbb aba abaaa abbaa EJERCICIO 4: Sea el vocabulario {1,2, 3 }, la expresión regular (1|2)*3 hallar el conjunto de todas las cadenas formada por los símbolos 1 y 2, sucediéndose cualquier Nº de veces (y en cualquier orden), y siempre terminando la cadena en el símbolo 3. SOLUCION

3 13 123 11113 22213 23 223 113 121211223 111212213

EJERCICIO 5: Hallar una Expresión regular para un lenguaje que tiene tiras a y bc SOLUCION

La Expresión regular de las tiras a y bc es: a│bc = { a , bc }

TEORIA DE LENGUAJES

TEORIA DE LENGUAJES UNC

5

EJERCICIO 6: Hallar una Expresión regular que denota el lenguaje compuesto por todas las cadenas cuya longitud es cero o un número par y están compuestas solamente por el símbolo a , el símbolo b o por símbolos a y b SOLUCION

La tira a no se considera porque nos piden tiras pares, por eso no se considera la tira a Tiras que forman el lenguaje

λ aa bb ab ba aaba bbbb La Expresión regular es: ( (a│b) (a│b) )* EJERCICIO 7: Hallar las tiras de la Expresión regular (a│b│ab)* SOLUCION

a b ab abab aab bbbbbab TEORIA DE LENGUAJES

TEORIA DE LENGUAJES UNC

6

EJERCICIO 8: Hallar una Expresión regular, formadas por las cadenas de longitud 2, formadas con las cadenas a y b SOLUCION

Las tiras que forman el lenguaje son aa ab ba bb

La Expresión regular es:

(a│b)(a│b)

EJERCICIO 9: SOLUCION

Sea la Expresión regular t = a + bc + b3a Cuál es el lenguaje descrito por t Que expresión regular corresponde al lenguaje universal sobre el alfabeto {a, b, c} SOLUCION

En primer lugar, esta no es estrictamente hablando una Expresión regular, ya que no se permite b3a Sin embargo, aceptamos como válida la expresión a + bc + b3a, como una simplificación de la Expresión regular a + bc + bbba En ese caso, L (t) = {a; bc; bbba }, que como vemos es un lenguaje finito sobre el alfabeto {a; b; c}. La Expresión regular es : (a + b + c)* EJERCICIO 10: Simplificar la Expresión regular t = a + a (b + aa) (b*aa)* b* + a (aa + b)* SOLUCION

Aplicando las propiedades de las expresiones regulares, podemos obtener una Expresión regular equivalente con tan solo 4 operadores: a + a (b + aa) (b*aa)* b* +a (aa + b)*

(Propiedad 15)

a + a (b + aa) (b + aa)* +a (aa + b)*

(Propiedad 8)

a( λ + (b + aa) (b + aa)* ) + a (aa + b)*

(Propiedad 13)

TEORIA DE LENGUAJES

TEORIA DE LENGUAJES UNC a( b + aa )* + a (aa + b)*

(Propiedad 2)

a(aa + b)* + a (aa + b)*

(Propiedad 4)

7

a(aa + b)* EJERCICIO 11: Simplificar la Expresión regular 1*01*0 (01*01*0 + 1)* 01* + 1* de forma que sólo aparezca un operador + SOLUCION

1*01*0 (01*01*0 + 1)* 01* + 1*

(Propiedad 15)

1*01*0 (1* • 01*01*0)* 1* • 01* + 1*

(Propiedad 16)

(1*01*0 • 1*0)* 1*01*01*01* + 1* ((1*01*01*0)* 1*01*01*0 + λ) 1* (1* • 01*01*0)* 1*

(Propiedad 8) (Propiedad 13) (Propiedad 15)

(1 + 01*01*0)* EJERCICIO 12: Hallar una expresión regular que tiene un Lenguaje formado por las cadenas que terminan en 01 SOLUCION

{0,1}*. {01} ({0} U {1})*. {01} Expresión regular es : (0+1)*01 EJERCICIO 13: Encontrar una expresión regular que represente el lenguaje de todas las palabras que no contienen la cadena bc, definido sobre el alfabeto V= {a, b, c}. SOLUCION

Expresión regular es

:

c*(b │ ac*)* EJERCICIO 14: Hallar una expresión regular que represente Lenguaje formado por palabras de longitud par sobre a’s y b’s SOLUCION

TEORIA DE LENGUAJES

TEORIA DE LENGUAJES UNC

8

{ aa , ab , ba , bb }* ( {aa} U {ab} U {ba} U {bb} )* Expresión regular es : (aa+ab+ba+bb)* EJERCICIO 15: Hallar una expresión regular que denote el lenguaje consistente de: al menos dos ceros precedidos por cualquier número de 0’s seguidos por cualquier número de 1’s. SOLUCION

Primero podemos desarrollar una Expresión regular para 0 y para 0 que denotan los lenguajes {0} y {0} respectivamente. Si concatenamos las dos expresiones 00, obtenemos el lenguaje {00}. Veamos ahora como construir el resto, cualquier número de 0’s lo podemos escribir como 0 y lo mismo para cualquier número de 1’s , 1 y ahora debemos describir la concatenación 0 1 La Expresión regular es: 0*1* 00

EJERCICIOS DE AUTOMATAS 1.Para los lenguajes dados sobre Te = {a, b} construir una expresión regular de él y un Autómata Finito que lo acepte: a) b) c) d) e) f)

L = { w|w tiene un numero par de a′s } L = { w|w tiene un numero impar de a′s } L = { w|w tiene un numero múltiplo de 3 de a′s } L = { w| toda a en w está entre dos b′s } L = { w| no hay dos a′s consecutivas en w } L = { w| w no contiene la subpalabra aa ni bb }

SOLUCION a) Una expresión regular que represente el lenguaje L es b∗(ab∗ab∗)∗ El diagrama de transición de un Autómata Finito es:

TEORIA DE LENGUAJES

TEORIA DE LENGUAJES UNC

9

b) Una expresión regular para este lenguaje es: b∗ab∗(ab∗ab∗)∗. El diagrama de transición de un Autómata Finito es:

TEORIA DE LENGUAJES

TEORIA DE LENGUAJES UNC

10

c) Una expresión regular para este lenguaje es: b∗(ab∗ab∗a)∗. El diagrama de transición de un Autómata Finito es:

d) Una expresión regular para este lenguaje es: b ∗ ∪ b+(ab+) ∗. El diagrama de transición de un Autómata Finito es:

e) Una expresión regular para este lenguaje es: b ∗(ab+)∗ ∪ b∗a(b+a) ∗. El diagrama de transición de un Autómata Finito es:

TEORIA DE LENGUAJES

TEORIA DE LENGUAJES UNC

11

f) Una expresión regular para este lenguaje es: ǫ ∪ (b + ǫ)(ab) ∗ ∪ (a + ǫ)(ba) ∗. El diagrama de transición de un Autómata Finito es:

2.Para los lenguajes dados sobre Te= {a,b} construir un AFD que lo acepte: a) L = { w| w contiene un número impar de a′s y un número par de b′s } b) L = { w| w contiene un número par de a′s y un número par de b′s } c) L = { w| w contiene un número impar de a′s y un número impar de b′s } d ) L = { w| w contiene un ab o ba como subpalabras } e) L = { w| w contiene un ab y ba como subpalabras } f ) L = { w| w contiene un ab ó ba como subpalabras, pero no ambas } TEORIA DE LENGUAJES

TEORIA DE LENGUAJES UNC

12

SOLUCION a) Un diagrama de transición del autómata finito es:

b)Cambiando el estado de aceptación del autómata representado arriba obtenemos el au tómata:

TEORIA DE LENGUAJES

TEORIA DE LENGUAJES UNC

13

c) De nuevo cambiando el estado de aceptación obtenemos el autómata correspondiente

d)A continuación un diagrama de transición de un autómata finito determinista que ace pta el lenguaje cuyas palabras contienen las subpalabras ab o ba o ambas

e) Este autómata acepta las palabras que contienen las subpalabras ab y ba

TEORIA DE LENGUAJES

TEORIA DE LENGUAJES UNC

14

f) Este autómata acepta las palabras que contienen las subpalabras ab ó ba, pero no ambas

TEORIA DE LENGUAJES...


Similar Free PDFs