tema 7.- lenguajes regulares - uco · teoría de autómatas y lenguajes regulares tema 7.-...

8
1 TEOR TEORÍ ÍA DE AUT A DE AUTÓ ÓMATAS Y LENGUAJES FORMALES MATAS Y LENGUAJES FORMALES Tema 7. Tema 7. - - Lenguajes Regulares Lenguajes Regulares UNIVERSIDAD DE CÓRDOBA ESCUELA POLITÉCNICA SUPERIOR DEPARTAMENTO DE INFORMÁTICA Y ANÁLISIS NUMÉRICO INGENIERÍA TÉCNICA EN INFORMÁTICA DE SISTEMAS SEGUNDO CURSO, SEGUNDO CUATRIMESTRE 2 Teor Teorí ía de Aut a de Autó ómatas y Lenguajes regulares matas y Lenguajes regulares Tema 7. Tema 7.- - Lenguajes Regulares Lenguajes Regulares Paso 1: Aut Paso 1: Autómata mata A 1 sin sin estados in estados inútiles, que reconoce tiles, que reconoce el lenguaje denotado por el lenguaje denotado por a a* b* a a* b* Construcci Construcción del Aut n del Autómata que reconoce mata que reconoce el lenguaje el lenguaje complementario complementario 3 Teor Teorí ía de Aut a de Autó ómatas y Lenguajes regulares matas y Lenguajes regulares Tema 7. Tema 7.- - Lenguajes Regulares Lenguajes Regulares Paso 2: Aut Paso 2: Autómata mata A 1 con con un estado in un estado inútil til Construcci Construcción del Aut n del Autómata que reconoce mata que reconoce el lenguaje el lenguaje complementario complementario

Upload: others

Post on 04-Apr-2020

18 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Tema 7.- Lenguajes Regulares - UCO · Teoría de Autómatas y Lenguajes regulares Tema 7.- Lenguajes Regulares Paso 1: Autómata A 1 sin estados inútiles, que reconoce el lenguaje

1

TEORTEORÍÍA DE AUTA DE AUTÓÓMATAS Y LENGUAJES FORMALESMATAS Y LENGUAJES FORMALES

Tema 7.Tema 7.-- Lenguajes RegularesLenguajes Regulares

UNIVERSIDAD DE CÓRDOBAESCUELA POLITÉCNICA SUPERIOR

DEPARTAMENTO DE INFORMÁTICA Y ANÁLISIS NUMÉRICO

INGENIERÍA TÉCNICA EN INFORMÁTICA DE SISTEMAS

SEGUNDO CURSO, SEGUNDO CUATRIMESTRE

2

TeorTeoríía de Auta de Autóómatas y Lenguajes regulares matas y Lenguajes regulares Tema 7.Tema 7.-- Lenguajes RegularesLenguajes Regulares

Paso 1: AutPaso 1: Autóómata mata AA11 sinsin estados inestados inúútiles, que reconoce tiles, que reconoce el lenguaje denotado por el lenguaje denotado por a a* b*a a* b*

ConstrucciConstruccióón del Autn del Autóómata que reconoce mata que reconoce el lenguajeel lenguaje complementariocomplementario

3

TeorTeoríía de Auta de Autóómatas y Lenguajes regulares matas y Lenguajes regulares Tema 7.Tema 7.-- Lenguajes RegularesLenguajes Regulares

Paso 2: AutPaso 2: Autóómata mata AA11 concon un estado inun estado inúútiltil

ConstrucciConstruccióón del Autn del Autóómata que reconoce mata que reconoce el lenguajeel lenguaje complementariocomplementario

Page 2: Tema 7.- Lenguajes Regulares - UCO · Teoría de Autómatas y Lenguajes regulares Tema 7.- Lenguajes Regulares Paso 1: Autómata A 1 sin estados inútiles, que reconoce el lenguaje

2

4

TeorTeoríía de Auta de Autóómatas y Lenguajes regulares matas y Lenguajes regulares Tema 7.Tema 7.-- Lenguajes RegularesLenguajes Regulares

Paso 3: AutPaso 3: Autóómata que reconoce mata que reconoce el lenguaje complementarioel lenguaje complementario

ConstrucciConstruccióón del Autn del Autóómata que reconoce mata que reconoce elel lenguajelenguaje complementariocomplementario

5

TeorTeoríía de Auta de Autóómatas y Lenguajes regulares matas y Lenguajes regulares Tema 7.Tema 7.-- Lenguajes RegularesLenguajes Regulares

AutAutóómata mata AA22 que reconoce el lenguaje denotado por que reconoce el lenguaje denotado por (a b)*(a b)*

IntersecciInterseccióónn de lenguajes regularesde lenguajes regulares

6

TeorTeoríía de Auta de Autóómatas y Lenguajes regulares matas y Lenguajes regulares Tema 7.Tema 7.-- Lenguajes RegularesLenguajes Regulares

AutAutóómata mata AA22 concon un estado un estado ininúútiltil

IntersecciInterseccióónn de lenguajes regularesde lenguajes regulares

Page 3: Tema 7.- Lenguajes Regulares - UCO · Teoría de Autómatas y Lenguajes regulares Tema 7.- Lenguajes Regulares Paso 1: Autómata A 1 sin estados inútiles, que reconoce el lenguaje

3

7

TeorTeoríía de Auta de Autóómatas y Lenguajes regulares matas y Lenguajes regulares Tema 7.Tema 7.-- Lenguajes RegularesLenguajes Regulares

AutAutóómata que reconoce el lenguaje obtenido al realizar la mata que reconoce el lenguaje obtenido al realizar la intersecciinterseccióónnde L (de L (AA11) y L () y L (AA22))

IntersecciInterseccióónn de lenguajes regularesde lenguajes regulares

8

TeorTeoríía de Auta de Autóómatas y Lenguajes regulares matas y Lenguajes regulares Tema 7.Tema 7.-- Lenguajes RegularesLenguajes Regulares

AutAutóómata mata con estados incon estados inúútilestiles que reconoce el lenguaje obtenido al que reconoce el lenguaje obtenido al realizar la realizar la intersecciinterseccióónn de L (de L (AA11) y L () y L (AA22))

IntersecciInterseccióónn de lenguajes regularesde lenguajes regulares

9

TeorTeoríía de Auta de Autóómatas y Lenguajes regulares matas y Lenguajes regulares Tema 7.Tema 7.-- Lenguajes RegularesLenguajes Regulares

AutAutóómata que reconoce el lenguaje obtenido al realizar la mata que reconoce el lenguaje obtenido al realizar la diferenciadiferenciade L (de L (AA11) ) -- L (L (AA22))

DiferenciaDiferencia de lenguajes regularesde lenguajes regulares

Page 4: Tema 7.- Lenguajes Regulares - UCO · Teoría de Autómatas y Lenguajes regulares Tema 7.- Lenguajes Regulares Paso 1: Autómata A 1 sin estados inútiles, que reconoce el lenguaje

4

10

TeorTeoríía de Auta de Autóómatas y Lenguajes regulares matas y Lenguajes regulares Tema 7.Tema 7.-- Lenguajes RegularesLenguajes Regulares

AutAutóómata mata con estados incon estados inúútiles tiles que reconoce el lenguaje obtenido al que reconoce el lenguaje obtenido al realizar la realizar la diferenciadiferencia de L (de L (AA11) ) -- L (L (AA22))

DiferenciaDiferencia de lenguajes regularesde lenguajes regulares

11

TeorTeoríía de Auta de Autóómatas y Lenguajes regulares matas y Lenguajes regulares Tema 7.Tema 7.-- Lenguajes RegularesLenguajes Regulares

Lenguaje reflejo o inversoLenguaje reflejo o inverso

AutAutóómata mata AA33 que reconoce el lenguaje denotado por que reconoce el lenguaje denotado por a b* (a+a b* (a+εε))

12

TeorTeoríía de Auta de Autóómatas y Lenguajes regulares matas y Lenguajes regulares Tema 7.Tema 7.-- Lenguajes RegularesLenguajes Regulares

Lenguaje reflejo o inversoLenguaje reflejo o inverso

AutAutóómata mata no deterministano determinista que reconoce el lenguaje reflejo de L (que reconoce el lenguaje reflejo de L (AA33), ), es decir, reconoce el lenguaje denotado por es decir, reconoce el lenguaje denotado por (a+(a+εε) b*a) b*a

Page 5: Tema 7.- Lenguajes Regulares - UCO · Teoría de Autómatas y Lenguajes regulares Tema 7.- Lenguajes Regulares Paso 1: Autómata A 1 sin estados inútiles, que reconoce el lenguaje

5

13

TeorTeoríía de Auta de Autóómatas y Lenguajes regulares matas y Lenguajes regulares Tema 7.Tema 7.-- Lenguajes RegularesLenguajes Regulares

AutAutóómata mata A4A4 que reconoce los identificadores del lenguaje de Cque reconoce los identificadores del lenguaje de C

Homomorfismo inversoHomomorfismo inverso

14

TeorTeoríía de Auta de Autóómatas y Lenguajes regulares matas y Lenguajes regulares Tema 7.Tema 7.-- Lenguajes RegularesLenguajes Regulares

Homomorfismo inversoHomomorfismo inverso

AutAutóómata que reconoce el lenguaje mata que reconoce el lenguaje hh--11 (L (A (L (A 44))))

Homomorfismo

h : Γ = {0, 1} → Σ∗ = {l, d, g}∗

h(0) = l d

h(1) = l s d

15

TeorTeoríía de Auta de Autóómatas y Lenguajes regulares matas y Lenguajes regulares Tema 7.Tema 7.-- Lenguajes RegularesLenguajes Regulares

RepresentaciRepresentacióón grn grááfica de un lenguaje incluido en otrofica de un lenguaje incluido en otro

Page 6: Tema 7.- Lenguajes Regulares - UCO · Teoría de Autómatas y Lenguajes regulares Tema 7.- Lenguajes Regulares Paso 1: Autómata A 1 sin estados inútiles, que reconoce el lenguaje

6

16

TeorTeoríía de Auta de Autóómatas y Lenguajes regulares matas y Lenguajes regulares Tema 7.Tema 7.-- Lenguajes RegularesLenguajes Regulares

Algoritmo Detectar-ciclos (primera parte)[1] inicio[2] Alcanzables ← {q 0} y q 0 no marcado[3] Visitados ← ∅[4] Ciclo ← falso[5] mientras (Ciclo = falso) y (haya un estado no marcado q ∈ Alcanzables)[6] hacer[7] Marcar el estado q

[8] Visitados ← Visitados ∪ {q} [9] Auxiliar ← {q’| ∃σ ∈ Σ ∧ δ(q, σ) = q’ }[10] si Visitados ∩ Auxiliar ≠ ∅[11] entonces Ciclo ← verdadero[12] si no[13] para q ∈ Auxiliar − Alcanzables hacer[14] Alcanzables ← Alcanzables ∪ {q} y q no marcado[15] fin para[16] fin si[17] fin mientras

DetecciDeteccióón de ciclosn de ciclos

17

TeorTeoríía de Auta de Autóómatas y Lenguajes regulares matas y Lenguajes regulares Tema 7.Tema 7.-- Lenguajes RegularesLenguajes Regulares

Algoritmo Detectar-ciclos (segunda parte)…

[18] si (Ciclo = falso)[19] entonces escribir “Autómata sin ciclos”[20] si no escribir “Autómata con ciclos”[21] fin si[22] fin

DetecciDeteccióón de ciclosn de ciclos

18

TeorTeoríía de Auta de Autóómatas y Lenguajes regulares matas y Lenguajes regulares Tema 7.Tema 7.-- Lenguajes RegularesLenguajes Regulares

DetecciDeteccióón de ciclosn de ciclos

Page 7: Tema 7.- Lenguajes Regulares - UCO · Teoría de Autómatas y Lenguajes regulares Tema 7.- Lenguajes Regulares Paso 1: Autómata A 1 sin estados inútiles, que reconoce el lenguaje

7

19

TeorTeoríía de Auta de Autóómatas y Lenguajes regulares matas y Lenguajes regulares Tema 7.Tema 7.-- Lenguajes RegularesLenguajes Regulares

DetecciDeteccióón de ciclosn de ciclos

Traza del algoritmo de DetecciTraza del algoritmo de Deteccióón de ciclosn de ciclos

20

TeorTeoríía de Auta de Autóómatas y Lenguajes regulares matas y Lenguajes regulares Tema 7.Tema 7.-- Lenguajes RegularesLenguajes Regulares

Desigualdad de dos Lenguajes Desigualdad de dos Lenguajes

L3 = L1 L3 = L1 ∆∆ L 2 = L1 L 2 = L1 ∪∪ L 2 L 2 –– L1 L1 ∩∩ L2 L2 ≠≠ ∅∅

21

TeorTeoríía de Auta de Autóómatas y Lenguajes regulares matas y Lenguajes regulares Tema 7.Tema 7.-- Lenguajes RegularesLenguajes Regulares

LexLex: Generador de analizadores l: Generador de analizadores lééxicosxicos

Page 8: Tema 7.- Lenguajes Regulares - UCO · Teoría de Autómatas y Lenguajes regulares Tema 7.- Lenguajes Regulares Paso 1: Autómata A 1 sin estados inútiles, que reconoce el lenguaje

8

TEORTEORÍÍA DE AUTA DE AUTÓÓMATAS Y LENGUAJES FORMALESMATAS Y LENGUAJES FORMALES

Tema 7.Tema 7.-- Lenguajes RegularesLenguajes Regulares

UNIVERSIDAD DE CÓRDOBAESCUELA POLITÉCNICA SUPERIOR

DEPARTAMENTO DE INFORMÁTICA Y ANÁLISIS NUMÉRICO

INGENIERÍA TÉCNICA EN INFORMÁTICA DE SISTEMAS

SEGUNDO CURSO, SEGUNDO CUATRIMESTRE