Alfabetos, Cadenas y Lenguajes

22
Alfabetos, Cadenas y Lenguajes Un alfabeto es un conjunto finito no vacío cuyos elementos se llaman símbolos. Denotamos un alfabeto arbitrario con la letra Σ. Una cadena o palabra sobre un alfabeto es cualquier sucesión finita de elementos e Σ. Existencia de la cadena λ. Ing. Franz Polanco Compiladores umg Xela

description

compiladores

Transcript of Alfabetos, Cadenas y Lenguajes

Page 1: Alfabetos, Cadenas y Lenguajes

Alfabetos, Cadenas y Lenguajes Un alfabeto es un

conjunto finito no vacío cuyos elementos se llaman símbolos. Denotamos un alfabeto arbitrario con la letra Σ.

Una cadena o palabra sobre un alfabeto es cualquier sucesión finita de elementos e Σ.

Existencia de la cadena

λ.

Ing. Franz PolancoCompiladores

umg Xela

Page 2: Alfabetos, Cadenas y Lenguajes

Alfabetos, Cadenas y Lenguajes

¿Cual es el alfabeto de los lenguajes de programación?

Page 3: Alfabetos, Cadenas y Lenguajes

Alfabetos, Cadenas y Lenguajes

Page 4: Alfabetos, Cadenas y Lenguajes

Operaciones entre Cadenas Concatenación.

Page 5: Alfabetos, Cadenas y Lenguajes

Operaciones entre Cadenas Potencias de una cadena.

Longitud de una cadena.

Page 6: Alfabetos, Cadenas y Lenguajes

Operaciones entre Cadenas Reflexión o inversa

Page 7: Alfabetos, Cadenas y Lenguajes

Operaciones entre Cadenas Sub-cadena

Prefijo

Sufijo

Page 8: Alfabetos, Cadenas y Lenguajes

Prefijos y Sufijos

Page 9: Alfabetos, Cadenas y Lenguajes

Lenguajes

Page 10: Alfabetos, Cadenas y Lenguajes

Ejemplos de Lenguajes

Page 11: Alfabetos, Cadenas y Lenguajes

Operaciones entre Lenguajes Concatenación

Page 12: Alfabetos, Cadenas y Lenguajes

Operaciones entre Lenguajes Potencia

Page 13: Alfabetos, Cadenas y Lenguajes

Clausura de Klenne de un Lenguaje

Page 14: Alfabetos, Cadenas y Lenguajes

Clausura Positiva de un Lenguaje

Page 15: Alfabetos, Cadenas y Lenguajes

Lenguajes Regulares Definición: Los Lenguajes Regulares sobre Σ son el conjunto de

expresiones más pequeña, incluyendo:

R = {λ}| {a}| R + R| RR| R*

Page 16: Alfabetos, Cadenas y Lenguajes

Lenguajes Regulares LR Básicos

LR Recursivos

Page 17: Alfabetos, Cadenas y Lenguajes

Ejemplos: Lenguajes Regulares

Page 18: Alfabetos, Cadenas y Lenguajes

Ejercicio:

Page 19: Alfabetos, Cadenas y Lenguajes

Expresiones Regulares ER Básicas

Si R y S son ER sobre Σ, también lo son:

Page 20: Alfabetos, Cadenas y Lenguajes

Expresiones Regulares Definición: Los Lenguajes Regulares sobre Σ son el conjunto de

expresiones más pequeña, incluyendo:

R = λ| ‘a’ | R + R| RR| R*

5 Construcciones- Dos casos base

- λ y 1-carácter- Tres exp. comp.

- Union, concatenacion e iteración.

Page 21: Alfabetos, Cadenas y Lenguajes

Relación entre ER y LR Expresiones Regulares especifican a los Lenguajes

Regulares, ER = Sintaxis y los LR son un conjunto de cadenas.

Ejemplo: [0-9]+ = {0,…,9}+ cadenas de dígitos

Page 22: Alfabetos, Cadenas y Lenguajes

Ejercicios: El Lenguaje A de todas las cadenas que comienzan con

b sobre Σ = {a,b}. El Lenguaje B de todas las cadenas que contienen la

cadena ba sobre Σ = {a,b}. El Lenguaje C de todas las cadenas que comienzan con

b y terminan con a. El Lenguaje D de todas las cadenas que contienen un

número par de símbolos sobre Σ = {a,b}. El Lenguaje E de todas las cadenas que contienen un

número par de 0 sobre Σ = {1,0}.