24
Motivación Conjuntos Regulares y Expresiones Regulares Relación entre ER y CR Propiedades de las Expresiones Regulares Expresiones Regulares Una forma diferente de expresar un lenguaje Universidad de Cantabria Expresiones Regulares

Universidad de CantabriaPropiedades de las Expresiones Regulares Definición Definición (Expresiones Regulares) Sea un alfabeto finito. Llamaremos expresión regular sobre el alfabeto

  • Upload
    others

  • View
    7

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Universidad de CantabriaPropiedades de las Expresiones Regulares Definición Definición (Expresiones Regulares) Sea un alfabeto finito. Llamaremos expresión regular sobre el alfabeto

MotivaciónConjuntos Regulares y Expresiones Regulares

Relación entre ER y CRPropiedades de las Expresiones Regulares

Expresiones RegularesUna forma diferente de expresar un lenguaje

Universidad de Cantabria

Expresiones Regulares

Page 2: Universidad de CantabriaPropiedades de las Expresiones Regulares Definición Definición (Expresiones Regulares) Sea un alfabeto finito. Llamaremos expresión regular sobre el alfabeto

MotivaciónConjuntos Regulares y Expresiones Regulares

Relación entre ER y CRPropiedades de las Expresiones Regulares

Esquema

1 Motivación

2 Conjuntos Regulares y Expresiones Regulares

3 Relación entre ER y CR

4 Propiedades de las Expresiones Regulares

Expresiones Regulares

Page 3: Universidad de CantabriaPropiedades de las Expresiones Regulares Definición Definición (Expresiones Regulares) Sea un alfabeto finito. Llamaremos expresión regular sobre el alfabeto

MotivaciónConjuntos Regulares y Expresiones Regulares

Relación entre ER y CRPropiedades de las Expresiones Regulares

Motivación

El problema que se pretende resolver mediante la introducciónde las expresiones regulares es el de obtener algún tipo dedescriptores para los lenguajes generados por las gramáticasregulares.

Expresiones Regulares

Page 4: Universidad de CantabriaPropiedades de las Expresiones Regulares Definición Definición (Expresiones Regulares) Sea un alfabeto finito. Llamaremos expresión regular sobre el alfabeto

MotivaciónConjuntos Regulares y Expresiones Regulares

Relación entre ER y CRPropiedades de las Expresiones Regulares

Motivación

¿Cuales son los lenguajes más sencillos?Los conjuntos finitos,La concatenación de palabras de diferentes lenguajes,La repetición de elementos una y otra vez (operaciónestrella).

Expresiones Regulares

Page 5: Universidad de CantabriaPropiedades de las Expresiones Regulares Definición Definición (Expresiones Regulares) Sea un alfabeto finito. Llamaremos expresión regular sobre el alfabeto

MotivaciónConjuntos Regulares y Expresiones Regulares

Relación entre ER y CRPropiedades de las Expresiones Regulares

Motivación

¿Cuales son los lenguajes más sencillos?Los conjuntos finitos,La concatenación de palabras de diferentes lenguajes,La repetición de elementos una y otra vez (operaciónestrella).

Expresiones Regulares

Page 6: Universidad de CantabriaPropiedades de las Expresiones Regulares Definición Definición (Expresiones Regulares) Sea un alfabeto finito. Llamaremos expresión regular sobre el alfabeto

MotivaciónConjuntos Regulares y Expresiones Regulares

Relación entre ER y CRPropiedades de las Expresiones Regulares

Motivación

¿Cuales son los lenguajes más sencillos?Los conjuntos finitos,La concatenación de palabras de diferentes lenguajes,La repetición de elementos una y otra vez (operaciónestrella).

Expresiones Regulares

Page 7: Universidad de CantabriaPropiedades de las Expresiones Regulares Definición Definición (Expresiones Regulares) Sea un alfabeto finito. Llamaremos expresión regular sobre el alfabeto

MotivaciónConjuntos Regulares y Expresiones Regulares

Relación entre ER y CRPropiedades de las Expresiones Regulares

Ejemplo de operaciones

Supongamos que el alfabeto sobre el que definimos nuestrolenguaje Σ = {a,b} y tenemos estos lenguajes

L1 := aa,ab, L2 := ba,bb.

Podemos definir estos nuevos lenguajes:L1 ∪ L2 := {aa,ab,ba,bb},L1L2 := {aaba,abbb,abba,aabb},L∗

1 := {aa,ab,aaaa,aaab,abaa,abab, . . .}.

Expresiones Regulares

Page 8: Universidad de CantabriaPropiedades de las Expresiones Regulares Definición Definición (Expresiones Regulares) Sea un alfabeto finito. Llamaremos expresión regular sobre el alfabeto

MotivaciónConjuntos Regulares y Expresiones Regulares

Relación entre ER y CRPropiedades de las Expresiones Regulares

Ejemplo de operaciones

Supongamos que el alfabeto sobre el que definimos nuestrolenguaje Σ = {a,b} y tenemos estos lenguajes

L1 := aa,ab, L2 := ba,bb.

Podemos definir estos nuevos lenguajes:L1 ∪ L2 := {aa,ab,ba,bb},L1L2 := {aaba,abbb,abba,aabb},L∗

1 := {aa,ab,aaaa,aaab,abaa,abab, . . .}.

Expresiones Regulares

Page 9: Universidad de CantabriaPropiedades de las Expresiones Regulares Definición Definición (Expresiones Regulares) Sea un alfabeto finito. Llamaremos expresión regular sobre el alfabeto

MotivaciónConjuntos Regulares y Expresiones Regulares

Relación entre ER y CRPropiedades de las Expresiones Regulares

Ejemplo de operaciones

Supongamos que el alfabeto sobre el que definimos nuestrolenguaje Σ = {a,b} y tenemos estos lenguajes

L1 := aa,ab, L2 := ba,bb.

Podemos definir estos nuevos lenguajes:L1 ∪ L2 := {aa,ab,ba,bb},L1L2 := {aaba,abbb,abba,aabb},L∗

1 := {aa,ab,aaaa,aaab,abaa,abab, . . .}.

Expresiones Regulares

Page 10: Universidad de CantabriaPropiedades de las Expresiones Regulares Definición Definición (Expresiones Regulares) Sea un alfabeto finito. Llamaremos expresión regular sobre el alfabeto

MotivaciónConjuntos Regulares y Expresiones Regulares

Relación entre ER y CRPropiedades de las Expresiones Regulares

Definición

Definición (Conjuntos regulares)

Sea Σ un alfabeto finito. Un conjunto regular es cualquierconjunto definido solamente a partir de concatenación, unión yla operación estrella sobre conjuntos regulares.

Expresiones Regulares

Page 11: Universidad de CantabriaPropiedades de las Expresiones Regulares Definición Definición (Expresiones Regulares) Sea un alfabeto finito. Llamaremos expresión regular sobre el alfabeto

MotivaciónConjuntos Regulares y Expresiones Regulares

Relación entre ER y CRPropiedades de las Expresiones Regulares

Definición

Definición (Expresiones Regulares)

Sea Σ un alfabeto finito. Llamaremos expresión regular sobreel alfabeto Σ a toda palabra sobre el alfabeto Σ1 definido por lasiguiente igualdad:

Σ1 := {∅, λ,+, ·, (, ),∗ } ∪ Σ,

conforme a las reglas siguientes:Son expresiones regulares ∅, λ, a para cualquier símboloa en el alfabeto Σ.Si α y β son expresiones regulares, también lo son:

(α + β) es una expresión regular,(α · β) es una expresión regular,(α)∗ es una expresión regular.

Expresiones Regulares

Page 12: Universidad de CantabriaPropiedades de las Expresiones Regulares Definición Definición (Expresiones Regulares) Sea un alfabeto finito. Llamaremos expresión regular sobre el alfabeto

MotivaciónConjuntos Regulares y Expresiones Regulares

Relación entre ER y CRPropiedades de las Expresiones Regulares

Ejemplo

Ejemplo

Tomemos el alfabeto Σ := {a,b}. Son expresiones regulareslas secuencias de símbolos (palabras) siguientes:

a · a + b∗a,ab∗ba, . . .

Expresiones Regulares

Page 13: Universidad de CantabriaPropiedades de las Expresiones Regulares Definición Definición (Expresiones Regulares) Sea un alfabeto finito. Llamaremos expresión regular sobre el alfabeto

MotivaciónConjuntos Regulares y Expresiones Regulares

Relación entre ER y CRPropiedades de las Expresiones Regulares

La Semántica de las Expresiones Regulares

DefiniciónSea Σ un alfabeto finito. A cada expresión regular sobre elalfabeto α le asignaremos un lenguaje formal L(α) ⊆ Σ∗

conforme a las siguientes reglas:Aplicando las reglas recursivas, si α y β son dos expresionesregulares sobre el alfabeto Σ usaremos las reglas siguientes:

L(α + β) = L(α) ∪ L(β),L(α · β) = L(α) · L(β),L(α∗) = L(α)∗.

También mencionamos que el operador ∗ tiene preferenciasobre · y éste sobre +.

Expresiones Regulares

Page 14: Universidad de CantabriaPropiedades de las Expresiones Regulares Definición Definición (Expresiones Regulares) Sea un alfabeto finito. Llamaremos expresión regular sobre el alfabeto

MotivaciónConjuntos Regulares y Expresiones Regulares

Relación entre ER y CRPropiedades de las Expresiones Regulares

Ejemplo

EjemploSea α := 0∗10∗ la expresión regular sobre el alfabetoΣ := {0,1}. Entonces,

L(0∗10∗) = L(0)∗ · L(1) · L(0)∗ = {0m10n : n,m ∈ N}.

Expresiones Regulares

Page 15: Universidad de CantabriaPropiedades de las Expresiones Regulares Definición Definición (Expresiones Regulares) Sea un alfabeto finito. Llamaremos expresión regular sobre el alfabeto

MotivaciónConjuntos Regulares y Expresiones Regulares

Relación entre ER y CRPropiedades de las Expresiones Regulares

No Unicidad

Un conjunto regular puede estar definido por dos expresionesregulares, como por ejemplo 1∗ y (1∗)∗.

Expresiones Regulares

Page 16: Universidad de CantabriaPropiedades de las Expresiones Regulares Definición Definición (Expresiones Regulares) Sea un alfabeto finito. Llamaremos expresión regular sobre el alfabeto

MotivaciónConjuntos Regulares y Expresiones Regulares

Relación entre ER y CRPropiedades de las Expresiones Regulares

Equivalencia

DefiniciónDiremos que dos expresiones regulares α y β sontautológicamente equivalentes (o, simplemente, equivalentes)si se verifica:

L(α) = L(β).

Escribamos α ≡ β para indicar equivalencia tautológica.

Expresiones Regulares

Page 17: Universidad de CantabriaPropiedades de las Expresiones Regulares Definición Definición (Expresiones Regulares) Sea un alfabeto finito. Llamaremos expresión regular sobre el alfabeto

MotivaciónConjuntos Regulares y Expresiones Regulares

Relación entre ER y CRPropiedades de las Expresiones Regulares

Propiedades de las Expresiones Regulares

Las expresiones regulares tienen varias propiedades quepermiten operar y, a veces, reducir expresiones regulares.

Expresiones Regulares

Page 18: Universidad de CantabriaPropiedades de las Expresiones Regulares Definición Definición (Expresiones Regulares) Sea un alfabeto finito. Llamaremos expresión regular sobre el alfabeto

MotivaciónConjuntos Regulares y Expresiones Regulares

Relación entre ER y CRPropiedades de las Expresiones Regulares

Propiedades de las Expresiones Regulares

Asociativa:

α · (β · γ) ≡ (α · β) · γ, α + (β + γ) = (α + β) + γ.

Expresiones Regulares

Page 19: Universidad de CantabriaPropiedades de las Expresiones Regulares Definición Definición (Expresiones Regulares) Sea un alfabeto finito. Llamaremos expresión regular sobre el alfabeto

MotivaciónConjuntos Regulares y Expresiones Regulares

Relación entre ER y CRPropiedades de las Expresiones Regulares

Propiedades de las Expresiones Regulares

Conmutativa (sólo para +)

α + β ≡ β + α.

Expresiones Regulares

Page 20: Universidad de CantabriaPropiedades de las Expresiones Regulares Definición Definición (Expresiones Regulares) Sea un alfabeto finito. Llamaremos expresión regular sobre el alfabeto

MotivaciónConjuntos Regulares y Expresiones Regulares

Relación entre ER y CRPropiedades de las Expresiones Regulares

Propiedades de las Expresiones Regulares

Elementos Neutros:

α + ∅ ≡ α, α · λ ≡ α, α · ∅ ≡ ∅.

Expresiones Regulares

Page 21: Universidad de CantabriaPropiedades de las Expresiones Regulares Definición Definición (Expresiones Regulares) Sea un alfabeto finito. Llamaremos expresión regular sobre el alfabeto

MotivaciónConjuntos Regulares y Expresiones Regulares

Relación entre ER y CRPropiedades de las Expresiones Regulares

Propiedades de las Expresiones Regulares

Idempotencia:α + α ≡ α.

Expresiones Regulares

Page 22: Universidad de CantabriaPropiedades de las Expresiones Regulares Definición Definición (Expresiones Regulares) Sea un alfabeto finito. Llamaremos expresión regular sobre el alfabeto

MotivaciónConjuntos Regulares y Expresiones Regulares

Relación entre ER y CRPropiedades de las Expresiones Regulares

Propiedades de las Expresiones Regulares

Distributivas:α · (β + γ) ≡ α · β + α · γ.

(α + β) · γ ≡ α · γ + β · γ.

Expresiones Regulares

Page 23: Universidad de CantabriaPropiedades de las Expresiones Regulares Definición Definición (Expresiones Regulares) Sea un alfabeto finito. Llamaremos expresión regular sobre el alfabeto

MotivaciónConjuntos Regulares y Expresiones Regulares

Relación entre ER y CRPropiedades de las Expresiones Regulares

Propiedades de las Expresiones Regulares

Invariantes para ∗:

λ∗ ≡ λ, ∅∗ ≡ ∅, (α∗)∗ = α∗

Expresiones Regulares

Page 24: Universidad de CantabriaPropiedades de las Expresiones Regulares Definición Definición (Expresiones Regulares) Sea un alfabeto finito. Llamaremos expresión regular sobre el alfabeto

MotivaciónConjuntos Regulares y Expresiones Regulares

Relación entre ER y CRPropiedades de las Expresiones Regulares

Propiedades de las Expresiones Regulares

La notación α+:α∗ · α ≡ α · α∗ ≡ α+.

α∗ = λ+ α+

y la relación de ∗ con la suma:

(α + β)∗ ≡ (α∗β∗)∗.

Expresiones Regulares