• No se han encontrado resultados

aylfm161p02

N/A
N/A
Protected

Academic year: 2020

Share "aylfm161p02"

Copied!
100
0
0

Texto completo

(1)

Autómatas y Lenguajes Formales 2016-1

Maestría en Ciencia e Ingeniería de la Computación UNAM Tema 2: Lenguajes regulares y autómatas finitos

Dr. Favio Ezequiel Miranda Perea

[email protected]

Facultad de Ciencias UNAM

(2)

Lenguajes Regulares

Lenguajes Regulares

Definición

Un lenguajeL⊆Σ? es regular si es generado a partir de los lenguajes

básicos∅,{ε},{a}(dondea∈Σ) mediante las operaciones de unión,

concatenación y estrella de Kleene.

Recursivamente:

∅y{ε}son lenguajes regulares.

Sia∈Σentonces{a}es regular.

SiL,Mson regulares entoncesL∪M,LM yL?son regulares.

(3)

Lenguajes Regulares

Lenguajes Regulares

Definición

Un lenguajeL⊆Σ? es regular si es generado a partir de los lenguajes

básicos∅,{ε},{a}(dondea∈Σ) mediante las operaciones de unión,

concatenación y estrella de Kleene. Recursivamente:

∅y{ε}son lenguajes regulares.

Sia∈Σentonces{a}es regular.

SiL,Mson regulares entoncesL∪M,LM yL?son regulares.

(4)

Lenguajes Regulares

Lenguajes Regulares

Definición

Un lenguajeL⊆Σ? es regular si es generado a partir de los lenguajes

básicos∅,{ε},{a}(dondea∈Σ) mediante las operaciones de unión,

concatenación y estrella de Kleene. Recursivamente:

∅y{ε}son lenguajes regulares.

Sia∈Σentonces{a}es regular.

SiL,Mson regulares entoncesL∪M,LM yL?son regulares.

(5)

Lenguajes Regulares

Lenguajes Regulares

Definición

Un lenguajeL⊆Σ? es regular si es generado a partir de los lenguajes

básicos∅,{ε},{a}(dondea∈Σ) mediante las operaciones de unión,

concatenación y estrella de Kleene. Recursivamente:

∅y{ε}son lenguajes regulares.

Sia∈Σentonces{a}es regular.

SiL,Mson regulares entoncesL∪M,LM yL?son regulares.

(6)

Lenguajes Regulares

Lenguajes Regulares

Definición

Un lenguajeL⊆Σ? es regular si es generado a partir de los lenguajes

básicos∅,{ε},{a}(dondea∈Σ) mediante las operaciones de unión,

concatenación y estrella de Kleene. Recursivamente:

∅y{ε}son lenguajes regulares.

Sia∈Σentonces{a}es regular.

(7)

Lenguajes Regulares

Ejemplos

Lenguajes regulares

Cualquier lenguaje finito es regular.

En efecto siL={w1, . . . ,wn} ⊆Σ? entoncesL=L1∪L2∪. . .∪Ln conLi ={wi}. Cada lenguajeLi es regular puesto que si

wi =a1. . .aki conaj ∈ΣentoncesLi ={a1}{a2}. . .{aki}y cada {aj}es regular por definición.

(8)

Lenguajes Regulares

Ejemplos

Lenguajes regulares

Cualquier lenguaje finito es regular.

En efecto siL={w1, . . . ,wn} ⊆Σ? entoncesL=L1∪L2∪. . .∪Ln conLi ={wi}. Cada lenguajeLi es regular puesto que si

wi =a1. . .aki conaj ∈ΣentoncesLi ={a1}{a2}. . .{aki}y cada {aj}es regular por definición.

(9)

Lenguajes Regulares

Ejemplos

Lenguajes regulares

Cualquier lenguaje finito es regular.

En efecto siL={w1, . . . ,wn} ⊆Σ? entoncesL=L1∪L2∪. . .∪Ln conLi ={wi}. Cada lenguajeLi es regular puesto que si

wi =a1. . .aki conaj ∈ΣentoncesLi ={a1}{a2}. . .{aki}y cada {aj}es regular por definición.

(10)

Lenguajes Regulares

Ejemplos

Lenguajes regulares

Sobre el alfabetoΣ ={a,b}tenemos los siguientes lenguajes

regulares infinitos:

I L1={w ∈Σ?|wempieza conb}={b}Σ?

I L2={w ∈Σ?|wcontiene exactamente unaa}={b}?{a}{b}?

I L3={w ∈Σ?|wcontiene la subcadenaba}= Σ?{ba}Σ?

I L4={w ∈Σ?|wcontiene exactamente dos bes}=

{a}?{b}{a}?{b}{a}?

I L5={w ∈Σ?|wcontiene un número par de aes}=

{b}?∪ {b}?{a}{b}?{a}{b}??

(11)

Lenguajes Regulares

Ejemplos

Lenguajes regulares

Sobre el alfabetoΣ ={a,b}tenemos los siguientes lenguajes

regulares infinitos:

I L1={w∈Σ?|wempieza conb}={b}Σ?

I L2={w ∈Σ?|wcontiene exactamente unaa}={b}?{a}{b}?

I L3={w ∈Σ?|wcontiene la subcadenaba}= Σ?{ba}Σ?

I L4={w ∈Σ?|wcontiene exactamente dos bes}=

{a}?{b}{a}?{b}{a}?

I L5={w ∈Σ?|wcontiene un número par de aes}=

{b}?∪ {b}?{a}{b}?{a}{b}??

(12)

Lenguajes Regulares

Ejemplos

Lenguajes regulares

Sobre el alfabetoΣ ={a,b}tenemos los siguientes lenguajes

regulares infinitos:

I L1={w∈Σ?|wempieza conb}={b}Σ?

I L2={w∈Σ?|wcontiene exactamente unaa}={b}?{a}{b}?

I L3={w ∈Σ?|wcontiene la subcadenaba}= Σ?{ba}Σ?

I L4={w ∈Σ?|wcontiene exactamente dos bes}=

{a}?{b}{a}?{b}{a}?

I L5={w ∈Σ?|wcontiene un número par de aes}=

{b}?∪ {b}?{a}{b}?{a}{b}??

(13)

Lenguajes Regulares

Ejemplos

Lenguajes regulares

Sobre el alfabetoΣ ={a,b}tenemos los siguientes lenguajes

regulares infinitos:

I L1={w∈Σ?|wempieza conb}={b}Σ?

I L2={w∈Σ?|wcontiene exactamente unaa}={b}?{a}{b}?

I L3={w∈Σ?|wcontiene la subcadenaba}= Σ?{ba}Σ?

I L4={w ∈Σ?|wcontiene exactamente dos bes}=

{a}?{b}{a}?{b}{a}?

I L5={w ∈Σ?|wcontiene un número par de aes}=

{b}?∪ {b}?{a}{b}?{a}{b}??

(14)

Lenguajes Regulares

Ejemplos

Lenguajes regulares

Sobre el alfabetoΣ ={a,b}tenemos los siguientes lenguajes

regulares infinitos:

I L1={w∈Σ?|wempieza conb}={b}Σ?

I L2={w∈Σ?|wcontiene exactamente unaa}={b}?{a}{b}?

I L3={w∈Σ?|wcontiene la subcadenaba}= Σ?{ba}Σ?

I L4={w∈Σ?|wcontiene exactamente dos bes}=

{a}?{b}{a}?{b}{a}?

I L5={w ∈Σ?|wcontiene un número par de aes}=

{b}?∪ {b}?{a}{b}?{a}{b}??

(15)

Lenguajes Regulares

Ejemplos

Lenguajes regulares

Sobre el alfabetoΣ ={a,b}tenemos los siguientes lenguajes

regulares infinitos:

I L1={w∈Σ?|wempieza conb}={b}Σ?

I L2={w∈Σ?|wcontiene exactamente unaa}={b}?{a}{b}?

I L3={w∈Σ?|wcontiene la subcadenaba}= Σ?{ba}Σ?

I L4={w∈Σ?|wcontiene exactamente dos bes}=

{a}?{b}{a}?{b}{a}?

I L5={w∈Σ?|wcontiene un número par de aes}=

{b}?∪ {b}?{a}{b}?{a}{b}??

(16)

Lenguajes Regulares

Ejemplos

Lenguajes regulares

Sobre el alfabetoΣ ={a,b}tenemos los siguientes lenguajes

regulares infinitos:

I L1={w∈Σ?|wempieza conb}={b}Σ?

I L2={w∈Σ?|wcontiene exactamente unaa}={b}?{a}{b}?

I L3={w∈Σ?|wcontiene la subcadenaba}= Σ?{ba}Σ?

I L4={w∈Σ?|wcontiene exactamente dos bes}=

{a}?{b}{a}?{b}{a}?

(17)

Lenguajes Regulares

Problemas de interés acerca de lenguajes regulares

Dado un lenguaje regularL⊆Σ? existen diversas problemas de

decisión (es decir, problemas cuya respuesta es sí o no) acerca deL,

enunciamos algunos de ellos que tienen solución algorítmica.

1 Problema de vacuidad: ¿ EsLel lenguaje vacío ?

2 Problema de finitud: ¿ EsLfinito ?

3 Problema de la pertenencia: Dadaw Σ?, ¿w L?

(18)

Lenguajes Regulares

Problemas de interés acerca de lenguajes regulares

Dado un lenguaje regularL⊆Σ? existen diversas problemas de

decisión (es decir, problemas cuya respuesta es sí o no) acerca deL,

enunciamos algunos de ellos que tienen solución algorítmica.

1 Problema de vacuidad: ¿ EsLel lenguaje vacío ?

2 Problema de finitud: ¿ EsLfinito ?

3 Problema de la pertenencia: Dadaw Σ?, ¿w L?

(19)

Lenguajes Regulares

Problemas de interés acerca de lenguajes regulares

Dado un lenguaje regularL⊆Σ? existen diversas problemas de

decisión (es decir, problemas cuya respuesta es sí o no) acerca deL,

enunciamos algunos de ellos que tienen solución algorítmica.

1 Problema de vacuidad: ¿ EsLel lenguaje vacío ?

2 Problema de finitud: ¿ EsLfinito ?

3 Problema de la pertenencia: Dadaw ∈Σ?, ¿w ∈L?

(20)

Lenguajes Regulares

Problemas de interés acerca de lenguajes regulares

Dado un lenguaje regularL⊆Σ? existen diversas problemas de

decisión (es decir, problemas cuya respuesta es sí o no) acerca deL,

enunciamos algunos de ellos que tienen solución algorítmica.

1 Problema de vacuidad: ¿ EsLel lenguaje vacío ?

2 Problema de finitud: ¿ EsLfinito ?

3 Problema de la pertenencia: Dadaw ∈Σ?, ¿w ∈L?

(21)

Lenguajes Regulares Expresiones Regulares

Expresiones regulares

Definición

Un mecanismo de suma importancia para denotar lenguajes regulares es por medio de las llamadas expresiones regulares, definidas

recursivamente como sigue:

∅es una expresión regular.

εes una expresión regular.

Sia∈Σentoncesaes una expresión regular.

Siα, β son expresiones regulares entoncesαβ, α+β, α? son

expresiones regulares.

(22)

Lenguajes Regulares Expresiones Regulares

Expresiones regulares

Definición

Un mecanismo de suma importancia para denotar lenguajes regulares es por medio de las llamadas expresiones regulares, definidas

recursivamente como sigue:

∅es una expresión regular.

εes una expresión regular.

Sia∈Σentoncesaes una expresión regular.

Siα, β son expresiones regulares entoncesαβ, α+β, α? son

expresiones regulares.

(23)

Lenguajes Regulares Expresiones Regulares

Expresiones regulares

Definición

Un mecanismo de suma importancia para denotar lenguajes regulares es por medio de las llamadas expresiones regulares, definidas

recursivamente como sigue:

∅es una expresión regular.

εes una expresión regular.

Sia∈Σentoncesaes una expresión regular.

Siα, β son expresiones regulares entoncesαβ, α+β, α? son

expresiones regulares.

(24)

Lenguajes Regulares Expresiones Regulares

Expresiones regulares

Definición

Un mecanismo de suma importancia para denotar lenguajes regulares es por medio de las llamadas expresiones regulares, definidas

recursivamente como sigue:

∅es una expresión regular.

εes una expresión regular.

Sia∈Σentoncesaes una expresión regular.

Siα, β son expresiones regulares entoncesαβ, α+β, α? son

expresiones regulares.

(25)

Lenguajes Regulares Expresiones Regulares

Expresiones regulares

Definición

Un mecanismo de suma importancia para denotar lenguajes regulares es por medio de las llamadas expresiones regulares, definidas

recursivamente como sigue:

∅es una expresión regular.

εes una expresión regular.

Sia∈Σentoncesaes una expresión regular.

Siα, β son expresiones regulares entoncesαβ, α+β, α? son

expresiones regulares.

(26)

Lenguajes Regulares Expresiones Regulares

Significado de una ER

Expresiones Regulares

Dada una expresión regularα, su significado es un lenguaje regular,

denotadoL(α), definido como sigue:

L(∅) =∅

L(ε) =ε

L(a) ={a} siα∈Σ L(αβ) =L(α)L(β)

L(α+β) =L(α)∪L(β)

(27)

Lenguajes Regulares Expresiones Regulares

Significado de una ER

Expresiones Regulares

Dada una expresión regularα, su significado es un lenguaje regular,

denotadoL(α), definido como sigue:

L(∅) =∅

L(ε) =ε

L(a) ={a} siα∈Σ L(αβ) =L(α)L(β)

L(α+β) =L(α)∪L(β)

(28)

Lenguajes Regulares Expresiones Regulares

Significado de una ER

Expresiones Regulares

Dada una expresión regularα, su significado es un lenguaje regular,

denotadoL(α), definido como sigue:

L(∅) =∅

L(ε) =ε

L(a) ={a} siα∈Σ

L(αβ) =L(α)L(β)

L(α+β) =L(α)∪L(β)

(29)

Lenguajes Regulares Expresiones Regulares

Significado de una ER

Expresiones Regulares

Dada una expresión regularα, su significado es un lenguaje regular,

denotadoL(α), definido como sigue:

L(∅) =∅

L(ε) =ε

L(a) ={a} siα∈Σ L(αβ) =L(α)L(β)

L(α+β) =L(α)∪L(β)

(30)

Lenguajes Regulares Expresiones Regulares

Significado de una ER

Expresiones Regulares

Dada una expresión regularα, su significado es un lenguaje regular,

denotadoL(α), definido como sigue:

L(∅) =∅

L(ε) =ε

L(a) ={a} siα∈Σ L(αβ) =L(α)L(β)

L(α+β) =L(α)∪L(β)

(31)

Lenguajes Regulares Expresiones Regulares

Significado de una ER

Expresiones Regulares

Dada una expresión regularα, su significado es un lenguaje regular,

denotadoL(α), definido como sigue:

L(∅) =∅

L(ε) =ε

L(a) ={a} siα∈Σ L(αβ) =L(α)L(β)

L(α+β) =L(α)∪L(β)

(32)

Lenguajes Regulares Expresiones Regulares

Lenguajes y Expresiones Regulares

Se cumple la siguiente relación entre lenguajes y expresiones regulares:

Proposición

Un lenguaje M ⊆Σ?es regular si y sólo si existe una expresión regularαtal que M =L(α).

Demostración.

La dirección⇐es directa. Para la otra dirección hacemos inducción

(33)

Lenguajes Regulares Expresiones Regulares

Lenguajes y Expresiones Regulares

Se cumple la siguiente relación entre lenguajes y expresiones regulares:

Proposición

Un lenguaje M ⊆Σ?es regular si y sólo si existe una expresión regularαtal que M =L(α).

Demostración.

La dirección⇐es directa. Para la otra dirección hacemos inducción

(34)

Lenguajes Regulares Expresiones Regulares

Equivalencia de Expresiones regulares

Definición

(35)

Lenguajes Regulares Propiedades

Propiedades

Expresiones Regulares

α+ (β+γ) = (α+β) +γ α+β =β+α

α+∅=α α+α=α

αε=α α∅=∅

(36)

Lenguajes Regulares Propiedades

Propiedades

Expresiones Regulares

α+ (β+γ) = (α+β) +γ α+β =β+α

α+∅=α α+α=α

αε=α α∅=∅

(37)

Lenguajes Regulares Propiedades

Propiedades

Expresiones Regulares

α+ (β+γ) = (α+β) +γ α+β =β+α

α+∅=α α+α=α

αε=α α∅=∅

(38)

Lenguajes Regulares Propiedades

Propiedades

Expresiones Regulares

α+ (β+γ) = (α+β) +γ α+β =β+α

α+∅=α α+α=α

αε=α α∅=∅

(39)

Lenguajes Regulares Propiedades

Propiedades

Expresiones Regulares

α(β+γ) =αβ+αγ (β+γ)α=βα+γα

ε? =ε ∅? =ε

αα?=α?α α? =α?α? = (α?)?

α? =ε+αα? (α+β)? = (α?+β?)?

(40)

Lenguajes Regulares Propiedades

Propiedades

Expresiones Regulares

α(β+γ) =αβ+αγ (β+γ)α=βα+γα

ε? =ε ∅? =ε

αα?=α?α α? =α?α? = (α?)?

α? =ε+αα? (α+β)? = (α?+β?)?

(41)

Lenguajes Regulares Propiedades

Propiedades

Expresiones Regulares

α(β+γ) =αβ+αγ (β+γ)α=βα+γα

ε? =ε ∅? =ε

αα? =α?α α? =α?α? = (α?)?

α? =ε+αα? (α+β)? = (α?+β?)?

(42)

Lenguajes Regulares Propiedades

Propiedades

Expresiones Regulares

α(β+γ) =αβ+αγ (β+γ)α=βα+γα

ε? =ε ∅? =ε

αα? =α?α α? =α?α? = (α?)?

α? =ε+αα? (α+β)? = (α?+β?)?

(43)

Lenguajes Regulares Propiedades

Propiedades

Expresiones Regulares

α(β+γ) =αβ+αγ (β+γ)α=βα+γα

ε? =ε ∅? =ε

αα? =α?α α? =α?α? = (α?)?

α? =ε+αα? (α+β)? = (α?+β?)?

(44)

Lenguajes Regulares Propiedades de Cerradura

Propiedades de cerradura

Lenguajes regulares

Las propiedades de cerradura nos permiten construir nuevos

lenguajes regulares a partir de lenguajes ya conocidos por medio de algunas operaciones entre lenguajes.

SiL,Mson lenguajes regulares entonces:

L∪M es regular.

LM es regular.

L? es regular.

L+es regular.

Les regular

L∩M es regular.

(45)

Lenguajes Regulares Propiedades de Cerradura

Propiedades de cerradura

Lenguajes regulares

Las propiedades de cerradura nos permiten construir nuevos

lenguajes regulares a partir de lenguajes ya conocidos por medio de algunas operaciones entre lenguajes.

SiL,Mson lenguajes regulares entonces:

L∪M es regular.

LM es regular.

L? es regular.

L+es regular.

Les regular

L∩M es regular.

(46)

Lenguajes Regulares Propiedades de Cerradura

Propiedades de cerradura

Lenguajes regulares

Las propiedades de cerradura nos permiten construir nuevos

lenguajes regulares a partir de lenguajes ya conocidos por medio de algunas operaciones entre lenguajes.

SiL,Mson lenguajes regulares entonces:

L∪M es regular.

LM es regular.

L? es regular.

L+es regular.

Les regular

L∩M es regular.

(47)

Lenguajes Regulares Propiedades de Cerradura

Propiedades de cerradura

Lenguajes regulares

Las propiedades de cerradura nos permiten construir nuevos

lenguajes regulares a partir de lenguajes ya conocidos por medio de algunas operaciones entre lenguajes.

SiL,Mson lenguajes regulares entonces:

L∪M es regular.

LM es regular.

L? es regular.

L+es regular.

Les regular

L∩M es regular.

(48)

Lenguajes Regulares Propiedades de Cerradura

Propiedades de cerradura

Lenguajes regulares

Las propiedades de cerradura nos permiten construir nuevos

lenguajes regulares a partir de lenguajes ya conocidos por medio de algunas operaciones entre lenguajes.

SiL,Mson lenguajes regulares entonces:

L∪M es regular.

LM es regular.

L? es regular.

L+es regular.

Les regular

L∩M es regular.

(49)

Lenguajes Regulares Propiedades de Cerradura

Propiedades de cerradura

Lenguajes regulares

Las propiedades de cerradura nos permiten construir nuevos

lenguajes regulares a partir de lenguajes ya conocidos por medio de algunas operaciones entre lenguajes.

SiL,Mson lenguajes regulares entonces:

L∪M es regular.

LM es regular.

L? es regular.

L+es regular.

Les regular

L∩M es regular.

(50)

Lenguajes Regulares Propiedades de Cerradura

Propiedades de cerradura

Lenguajes regulares

Las propiedades de cerradura nos permiten construir nuevos

lenguajes regulares a partir de lenguajes ya conocidos por medio de algunas operaciones entre lenguajes.

SiL,Mson lenguajes regulares entonces:

L∪M es regular.

LM es regular.

L? es regular.

L+es regular.

Les regular

(51)

Lenguajes Regulares Propiedades de Cerradura

Propiedades de cerradura

Lenguajes regulares

Las propiedades de cerradura nos permiten construir nuevos

lenguajes regulares a partir de lenguajes ya conocidos por medio de algunas operaciones entre lenguajes.

SiL,Mson lenguajes regulares entonces:

L∪M es regular.

LM es regular.

L? es regular.

L+es regular.

Les regular

L∩M es regular.

(52)

Lenguajes Regulares Propiedades de Cerradura

Aplicaciones de las expresiones regulares

Búsqueda y sustitución en editores de texto (vi, emacs, etc.)

Caza de patrones (pattern matching) y procesamiento de textos y conjuntos de datos, por ejemplo en minería de datos (grep, sed, awk, perl, etc.)

(53)

Lenguajes Regulares Propiedades de Cerradura

Aplicaciones de las expresiones regulares

Búsqueda y sustitución en editores de texto (vi, emacs, etc.)

Caza de patrones (pattern matching) y procesamiento de textos y conjuntos de datos, por ejemplo en minería de datos (grep, sed, awk, perl, etc.)

(54)

Lenguajes Regulares Propiedades de Cerradura

Aplicaciones de las expresiones regulares

Búsqueda y sustitución en editores de texto (vi, emacs, etc.)

Caza de patrones (pattern matching) y procesamiento de textos y conjuntos de datos, por ejemplo en minería de datos (grep, sed, awk, perl, etc.)

(55)

Lenguajes Regulares Propiedades de Cerradura

¿Cuando no es

L

regular?

Lenguajes Regulares

No todos los lenguajes son regulares, por ejemplo:

L={anbn|n≥1}

no es definible mediante una expresión regular.

¿Cómo decidir cuando un lenguaje no es regular?

Mediante propiedades de cerradura.

(56)

Lenguajes Regulares Propiedades de Cerradura

¿Cuando no es

L

regular?

Lenguajes Regulares

No todos los lenguajes son regulares, por ejemplo:

L={anbn|n≥1}

no es definible mediante una expresión regular.

¿Cómo decidir cuando un lenguaje no es regular?

Mediante propiedades de cerradura.

(57)

Lenguajes Regulares Propiedades de Cerradura

¿Cuando no es

L

regular?

Lenguajes Regulares

No todos los lenguajes son regulares, por ejemplo:

L={anbn|n≥1}

no es definible mediante una expresión regular.

¿Cómo decidir cuando un lenguaje no es regular?

Mediante propiedades de cerradura.

(58)

Lenguajes Regulares Propiedades de Cerradura

¿Cuando no es

L

regular?

Lenguajes Regulares

No todos los lenguajes son regulares, por ejemplo:

L={anbn|n≥1}

no es definible mediante una expresión regular.

¿Cómo decidir cuando un lenguaje no es regular?

Mediante propiedades de cerradura.

(59)

Autómatas Finitos

Autómatas

Introducción

Un autómata es una representación abstracta de una máquina.

Los aspectos relevantes para nosotros son diseño y especificación de autómatas.

(60)

Autómatas Finitos

Autómatas

Introducción

Un autómata es una representación abstracta de una máquina.

Los aspectos relevantes para nosotros son diseño y especificación de autómatas.

(61)

Autómatas Finitos

Autómatas

Introducción

Un autómata es una representación abstracta de una máquina.

Los aspectos relevantes para nosotros son diseño y especificación de autómatas.

(62)

Autómatas Finitos

Autómatas

Aplicaciones

Diseño de circuitos digitales.

Analizadores léxicos para compiladores.

Búsqueda de palabras clave en internet.

Verificación de sistemas de estados finitos. (por ejemplo protocolos de comunicación).

(63)

Autómatas Finitos

Autómatas

Aplicaciones

Diseño de circuitos digitales.

Analizadores léxicos para compiladores.

Búsqueda de palabras clave en internet.

Verificación de sistemas de estados finitos. (por ejemplo protocolos de comunicación).

(64)

Autómatas Finitos

Autómatas

Aplicaciones

Diseño de circuitos digitales.

Analizadores léxicos para compiladores.

Búsqueda de palabras clave en internet.

Verificación de sistemas de estados finitos. (por ejemplo protocolos de comunicación).

(65)

Autómatas Finitos

Autómatas

Aplicaciones

Diseño de circuitos digitales.

Analizadores léxicos para compiladores.

Búsqueda de palabras clave en internet.

Verificación de sistemas de estados finitos. (por ejemplo protocolos de comunicación).

(66)

Autómatas Finitos

Autómatas

Aplicaciones

Diseño de circuitos digitales.

Analizadores léxicos para compiladores.

Búsqueda de palabras clave en internet.

(67)

Autómatas Finitos Tipos de Autómatas

Tipos de Autómatas

Autómatas finitos: deterministas, no deterministas.

Autómatas de Pila.

Autómatas Linealmente Acotados.

Máquinas de Turing.

(68)

Autómatas Finitos Tipos de Autómatas

Tipos de Autómatas

Autómatas finitos: deterministas, no deterministas.

Autómatas de Pila.

Autómatas Linealmente Acotados.

Máquinas de Turing.

(69)

Autómatas Finitos Tipos de Autómatas

Tipos de Autómatas

Autómatas finitos: deterministas, no deterministas.

Autómatas de Pila.

Autómatas Linealmente Acotados.

Máquinas de Turing.

(70)

Autómatas Finitos Tipos de Autómatas

Tipos de Autómatas

Autómatas finitos: deterministas, no deterministas.

Autómatas de Pila.

Autómatas Linealmente Acotados.

Máquinas de Turing.

(71)

Autómatas Finitos Tipos de Autómatas

Tipos de Autómatas

Autómatas finitos: deterministas, no deterministas.

Autómatas de Pila.

Autómatas Linealmente Acotados.

Máquinas de Turing.

(72)

Autómatas Finitos Tipos de Autómatas

Tipos de Autómatas

¿Cómo se diferencian?

Detalles particulares del modelo.

Complejidad.

Funciones que pueden calcular.

(73)

Autómatas Finitos Tipos de Autómatas

Tipos de Autómatas

¿Cómo se diferencian?

Detalles particulares del modelo.

Complejidad.

Funciones que pueden calcular.

(74)

Autómatas Finitos Tipos de Autómatas

Tipos de Autómatas

¿Cómo se diferencian?

Detalles particulares del modelo.

Complejidad.

Funciones que pueden calcular.

(75)

Autómatas Finitos Tipos de Autómatas

Tipos de Autómatas

¿Cómo se diferencian?

Detalles particulares del modelo.

Complejidad.

Funciones que pueden calcular.

(76)

Autómatas Finitos Modelo General

Modelo General

Autómatas

(77)

Autómatas Finitos Modelo General

Lectura y unidad de control

Autómatas

Las cadenas de entrada se escriben sobre una cinta potencialmente infinita hacia la izquierda dividida en casillas y posee una unidad de

control ocabeza lectoraque lee desde la primera casilla y puede

(78)

Autómatas Finitos Autómatas Deterministas

Autómatas Finitos Deterministas

Definición

Un autómata finito determinista (AFD) es una quintupla

M =hQ,Σ, δ,q0,Fi

donde

Qes un conjunto finito de estados.

Σes el alfabeto de entrada.

δ :Q×Σ→Q es la función de transición.

q0∈Qes el estado inicial.

(79)

Autómatas Finitos Autómatas Deterministas

Autómatas Finitos Deterministas

Definición

Un autómata finito determinista (AFD) es una quintupla

M =hQ,Σ, δ,q0,Fi

donde

Qes un conjunto finito de estados.

Σes el alfabeto de entrada.

δ :Q×Σ→Q es la función de transición.

q0∈Qes el estado inicial.

(80)

Autómatas Finitos Autómatas Deterministas

Autómatas Finitos Deterministas

Definición

Un autómata finito determinista (AFD) es una quintupla

M =hQ,Σ, δ,q0,Fi

donde

Qes un conjunto finito de estados.

Σes el alfabeto de entrada.

δ :Q×Σ→Q es la función de transición.

q0∈Qes el estado inicial.

(81)

Autómatas Finitos Autómatas Deterministas

Autómatas Finitos Deterministas

Definición

Un autómata finito determinista (AFD) es una quintupla

M =hQ,Σ, δ,q0,Fi

donde

Qes un conjunto finito de estados.

Σes el alfabeto de entrada.

δ :Q×Σ→Qes la función de transición.

q0∈Qes el estado inicial.

(82)

Autómatas Finitos Autómatas Deterministas

Autómatas Finitos Deterministas

Definición

Un autómata finito determinista (AFD) es una quintupla

M =hQ,Σ, δ,q0,Fi

donde

Qes un conjunto finito de estados.

Σes el alfabeto de entrada.

δ :Q×Σ→Qes la función de transición.

q0∈Qes el estado inicial.

(83)

Autómatas Finitos Autómatas Deterministas

Autómatas Finitos Deterministas

Definición

Un autómata finito determinista (AFD) es una quintupla

M =hQ,Σ, δ,q0,Fi

donde

Qes un conjunto finito de estados.

Σes el alfabeto de entrada.

δ :Q×Σ→Qes la función de transición.

q0∈Qes el estado inicial.

(84)

Autómatas Finitos Autómatas Deterministas

Autómatas Finitos Deterministas

Ejemplo

Σ ={a,b} Q={q0,q1,q2}

q0:estado inicial

F ={q0,q2}, estados de aceptación.

Función de transiciónδ:

δ a b

q0 q0 q1

q1 q1 q2

δ(q0,a) =q0 δ(q0,b) =q1

δ(q1,a) =q1 δ(q1,b) =q2

(85)

Autómatas Finitos Autómatas Deterministas

Determinismo

Autómatas finitos

Los autómatas finitos descritos arriba se denominanautómatas

finitos deterministasya que para cada estadoq y para cada símbolo

a∈Σ, la función de transiciónδ(q,a)siempre está definida. Es decir,

la función de transiciónδ determina unívocamentela acción que el

autómata realiza cuando el control finito se encuentra en un estadoq

(86)

Autómatas Finitos Autómatas Deterministas

Lenguaje de aceptación

Autómatas Finitos

Dado un autómataM, ellenguaje aceptado o reconocidoporMse

denotaL(M)y se define por

L(M) := {u ∈Σ∗ :Mse detiene al procesar

(87)

Autómatas Finitos Diagramas de Estados

Diagrama de estados

Autómatas finitos

Un autómata finito se puede representar por medio de un grafo dirigido y etiquetado.

El grafo de un autómata se obtiene como sigue:

Los vértices o nodos son los estados del autómata.

El estadoqse representa por:

(88)

Autómatas Finitos Diagramas de Estados

Diagrama de estados

Autómatas finitos

Un autómata finito se puede representar por medio de un grafo dirigido y etiquetado. El grafo de un autómata se obtiene como sigue:

Los vértices o nodos son los estados del autómata.

El estadoqse representa por:

(89)

Autómatas Finitos Diagramas de Estados

Diagrama de estados

Autómatas finitos

Un autómata finito se puede representar por medio de un grafo dirigido y etiquetado. El grafo de un autómata se obtiene como sigue:

Los vértices o nodos son los estados del autómata.

El estadoqse representa por:

(90)

Autómatas Finitos Diagramas de Estados

Diagrama de estados

Autómatas finitos

Un autómata finito se puede representar por medio de un grafo dirigido y etiquetado. El grafo de un autómata se obtiene como sigue:

Los vértices o nodos son los estados del autómata.

El estadoqse representa por:

(91)

Autómatas Finitos Diagramas de Estados

Diagrama de estados

Autómatas finitos

Un estado finalqse representa por:

(92)

Autómatas Finitos Diagramas de Estados

Diagrama de estados

Autómatas finitos

Un estado finalqse representa por:

(93)

Autómatas Finitos Diagramas de Estados

Diagrama de estados

Ejemplo

Σ ={a,b} Q={q0,q1,q2}

q0:estado inicial

F ={q0,q2}, estados de aceptación.

Función de transiciónδ:

δ a b

q0 q0 q1

q1 q1 q2

(94)

Autómatas Finitos Diagramas de Estados

Estado de error

Diagrama de estados

Para autómatas deterministas se adopta la siguiente convención adicional con respecto a los diagramas de estados:

Se asume que las aristas no dibujadas explícitamente conducen a un estado de no-aceptación llamado estado de error.

(95)

Autómatas Finitos Diagramas de Estados

Estado de error

Diagrama de estados

Para autómatas deterministas se adopta la siguiente convención adicional con respecto a los diagramas de estados:

Se asume que las aristas no dibujadas explícitamente conducen a un estado de no-aceptación llamado estado de error.

(96)

Autómatas Finitos Diagramas de Estados

Estado de error

Diagrama de estados

Para autómatas deterministas se adopta la siguiente convención adicional con respecto a los diagramas de estados:

Se asume que las aristas no dibujadas explícitamente conducen a un estado de no-aceptación llamado estado de error.

(97)

Autómatas Finitos Problemas Importantes

Problemas de interés

Autómatas finitos

Los problemas que nos interesa resolver son:

Dado un autómataM determinar el lenguaje aceptado porM.

Dado un lenguaje regularLdiseñar un autómata finito

deterministaM que acepte o reconozca aL, es decir, tal que

L(M) =L.

Más adelante se demostrará que estos problemassiempretienen

(98)

Autómatas Finitos Problemas Importantes

Problemas de interés

Autómatas finitos

Los problemas que nos interesa resolver son:

Dado un autómataM determinar el lenguaje aceptado porM.

Dado un lenguaje regularLdiseñar un autómata finito

deterministaM que acepte o reconozca aL, es decir, tal que

L(M) =L.

Más adelante se demostrará que estos problemassiempretienen

(99)

Autómatas Finitos Problemas Importantes

Problemas de interés

Autómatas finitos

Los problemas que nos interesa resolver son:

Dado un autómataM determinar el lenguaje aceptado porM.

Dado un lenguaje regularLdiseñar un autómata finito

deterministaM que acepte o reconozca aL, es decir, tal que

L(M) =L.

Más adelante se demostrará que estos problemassiempretienen

(100)

Autómatas Finitos Problemas Importantes

Problemas de interés

Autómatas finitos

Los problemas que nos interesa resolver son:

Dado un autómataM determinar el lenguaje aceptado porM.

Dado un lenguaje regularLdiseñar un autómata finito

deterministaM que acepte o reconozca aL, es decir, tal que

L(M) =L.

Referencias

Documento similar

Entre los programas de apoyo tiene, desde 1991, un centro de recursos para la inclusión (CRI), que cuenta con un equipo multiprofesional que colabora con escuelas regulares en la

ELABORACIÓN DE LOS MAPAS DE PELIGROSIDAD Y RIESGO REQUERIDOS POR EL R.D...

Esta capacidad de recurrir de forma indistinta a efectivos militares tanto regulares, aparentemente, como privados, se advierte también en un autor como Orosio, quien afirma

Y en los años 1570, estamos en unos intercambios mucho más regulares donde los puertos franceses, sobre todo Nantes y Le Havre, pero también Saint- Malo, abastecen los navíos de

estaríamos incluyendo a los partisanos del maquis y a la Resistencia, pero sólo a una parte de los que combatieron en fuerzas regulares de la Francia Libre o

En la interpretación del casco como un barco de junco o papiro, se plantea que las tres líneas verticales que se conservan y están separadas por intervalos regulares, de los

Las fundaciones creadas en los conventos de regulares eran, sin duda, las que más escapaban al control episcopal; no es de extrañar, en consecuencia, que algiín obispo haga

First, second, third person