![Page 1: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/1.jpg)
Autómatas Finitos
Introducción a la Teoría de Autómatas, Lenguajesy Computación
Gustavo Rodríguez Gómez y Aurelio López López
INAOE
Propedéutico 2010
1 / 53
![Page 2: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/2.jpg)
Autómatas Finitos
Capítulo 2
Autómatas Finitos
2 / 53
![Page 3: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/3.jpg)
Autómatas Finitos
1 Autómatas FinitosAutómatas Finitos Deterministas (AFD)Como un AFD Procesa CadenasDiagramas y Tablas de TransiciónExtensión de la Función de Transición a CadenasLenguaje de un AFDAutómatas Finitos No Deterministas (AFND)
3 / 53
![Page 4: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/4.jpg)
Autómatas Finitos
Autómatas Finitos Deterministas (AFD)
Definición de AFD
DefiniciónUn AFD es una quíntupla
A = (Q,Σ, δ, q0,F )
1 Q es un conjunto finito de estados.2 Σ es un alfabeto finito, los símbolos de entrada.3 δ : Q × Σ→ Q es una función de transición δ(q, a) = p.4 q0 ∈ Q es el estado de inicio.5 F ⊆ Q es el conjunto de estado aceptados o finales.
4 / 53
![Page 5: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/5.jpg)
Autómatas Finitos
Como un AFD Procesa Cadenas
Procesamiento de Cadenas por un AFD
Sea A AFD y w = a1a2 · · · an una cadena de entrada para A.
Iniciamos con A en su estado q0, δ(q0, a1) = q1.
Procesamos a2, δ(q1, a2) = q2 y continuamos encontrandoq3, q4, . . . , qn.δ(qi−1, ai ) = qi para cada i .
Si qn ∈ F diremos que la entrada w = a1a2 · · · an es aceptadasino es rechazada
5 / 53
![Page 6: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/6.jpg)
Autómatas Finitos
Como un AFD Procesa Cadenas
Procesamiento de Cadenas por un AFD
Sea A AFD y w = a1a2 · · · an una cadena de entrada para A.Iniciamos con A en su estado q0, δ(q0, a1) = q1.
Procesamos a2, δ(q1, a2) = q2 y continuamos encontrandoq3, q4, . . . , qn.δ(qi−1, ai ) = qi para cada i .
Si qn ∈ F diremos que la entrada w = a1a2 · · · an es aceptadasino es rechazada
6 / 53
![Page 7: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/7.jpg)
Autómatas Finitos
Como un AFD Procesa Cadenas
Procesamiento de Cadenas por un AFD
Sea A AFD y w = a1a2 · · · an una cadena de entrada para A.Iniciamos con A en su estado q0, δ(q0, a1) = q1.
Procesamos a2, δ(q1, a2) = q2 y continuamos encontrandoq3, q4, . . . , qn.
δ(qi−1, ai ) = qi para cada i .
Si qn ∈ F diremos que la entrada w = a1a2 · · · an es aceptadasino es rechazada
7 / 53
![Page 8: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/8.jpg)
Autómatas Finitos
Como un AFD Procesa Cadenas
Procesamiento de Cadenas por un AFD
Sea A AFD y w = a1a2 · · · an una cadena de entrada para A.Iniciamos con A en su estado q0, δ(q0, a1) = q1.
Procesamos a2, δ(q1, a2) = q2 y continuamos encontrandoq3, q4, . . . , qn.δ(qi−1, ai ) = qi para cada i .
Si qn ∈ F diremos que la entrada w = a1a2 · · · an es aceptadasino es rechazada
8 / 53
![Page 9: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/9.jpg)
Autómatas Finitos
Como un AFD Procesa Cadenas
Procesamiento de Cadenas por un AFD
Sea A AFD y w = a1a2 · · · an una cadena de entrada para A.Iniciamos con A en su estado q0, δ(q0, a1) = q1.
Procesamos a2, δ(q1, a2) = q2 y continuamos encontrandoq3, q4, . . . , qn.δ(qi−1, ai ) = qi para cada i .
Si qn ∈ F diremos que la entrada w = a1a2 · · · an es aceptadasino es rechazada
9 / 53
![Page 10: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/10.jpg)
Autómatas Finitos
Como un AFD Procesa Cadenas
Lenguaje de un AFD
DefiniciónEl lenguaje de un AFD es el conjunto de todas las cadenas w queel AFD acepta.
10 / 53
![Page 11: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/11.jpg)
Autómatas Finitos
Como un AFD Procesa Cadenas
Ejemplo 1
Ejemplo
Especificar formalmente un AFD que acepte únicamente cadenasque tenga 0′s y 1′s conteniendo la subcadena 01 en alguna partede la cadena
L = {x01y | x , y ∈ {0, 1}∗}
Las siguientes cadenas pertenecen a L:01, 11010, 1001, 110001011.
Las siguientes cadenas no pertenecen a L: ε, 0, 11000.
11 / 53
![Page 12: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/12.jpg)
Autómatas Finitos
Como un AFD Procesa Cadenas
Ejemplo 1
Ejemplo
Especificar formalmente un AFD que acepte únicamente cadenasque tenga 0′s y 1′s conteniendo la subcadena 01 en alguna partede la cadena
L = {x01y | x , y ∈ {0, 1}∗}
Las siguientes cadenas pertenecen a L:01, 11010, 1001, 110001011.
Las siguientes cadenas no pertenecen a L: ε, 0, 11000.
12 / 53
![Page 13: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/13.jpg)
Autómatas Finitos
Como un AFD Procesa Cadenas
Ejemplo 1, continuación (1/3)
¿Qué es lo que debemos conocer para definir el autómata queacepta al lenguaje L?
1 Sus estados Q.
2 Su estado de inicio q0.3 Su alfabeto Σ = {0, 1}.4 Su conjunto de estado aceptados.
13 / 53
![Page 14: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/14.jpg)
Autómatas Finitos
Como un AFD Procesa Cadenas
Ejemplo 1, continuación (1/3)
¿Qué es lo que debemos conocer para definir el autómata queacepta al lenguaje L?
1 Sus estados Q.2 Su estado de inicio q0.
3 Su alfabeto Σ = {0, 1}.4 Su conjunto de estado aceptados.
14 / 53
![Page 15: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/15.jpg)
Autómatas Finitos
Como un AFD Procesa Cadenas
Ejemplo 1, continuación (1/3)
¿Qué es lo que debemos conocer para definir el autómata queacepta al lenguaje L?
1 Sus estados Q.2 Su estado de inicio q0.3 Su alfabeto Σ = {0, 1}.
4 Su conjunto de estado aceptados.
15 / 53
![Page 16: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/16.jpg)
Autómatas Finitos
Como un AFD Procesa Cadenas
Ejemplo 1, continuación (1/3)
¿Qué es lo que debemos conocer para definir el autómata queacepta al lenguaje L?
1 Sus estados Q.2 Su estado de inicio q0.3 Su alfabeto Σ = {0, 1}.4 Su conjunto de estado aceptados.
16 / 53
![Page 17: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/17.jpg)
Autómatas Finitos
Como un AFD Procesa Cadenas
Ejemplo 1, continuación (2/3)
El autómata debe tener la capacidad de reconocer si 01 es unasubcadena de la cadena de entrada.
1 q0: Si la cadena de entrada es ε permanecemos en q0,δ(q0, ε) = q0. Si la cadena de entrada es 1 permanecemos enq0, δ(q0, 1) = q0.
2 q1: Ya se detecto la cadena 01, se acepta entonces todasucesión posterior de entradas, δ(q1, 0) = δ(q1, 1) = q1.
3 q2: No se ha detectado la cadena 01 pero la entrada masreciente ha sido un 0. Luego si vemos un 1 se tendrá lacadena 01, δ(q2, 0) = q2, δ(q2, 1) = q1
17 / 53
![Page 18: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/18.jpg)
Autómatas Finitos
Como un AFD Procesa Cadenas
Ejemplo 1, continuación (2/3)
El autómata debe tener la capacidad de reconocer si 01 es unasubcadena de la cadena de entrada.
1 q0: Si la cadena de entrada es ε permanecemos en q0,δ(q0, ε) = q0. Si la cadena de entrada es 1 permanecemos enq0, δ(q0, 1) = q0.
2 q1: Ya se detecto la cadena 01, se acepta entonces todasucesión posterior de entradas, δ(q1, 0) = δ(q1, 1) = q1.
3 q2: No se ha detectado la cadena 01 pero la entrada masreciente ha sido un 0. Luego si vemos un 1 se tendrá lacadena 01, δ(q2, 0) = q2, δ(q2, 1) = q1
18 / 53
![Page 19: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/19.jpg)
Autómatas Finitos
Como un AFD Procesa Cadenas
Ejemplo 1, continuación (2/3)
El autómata debe tener la capacidad de reconocer si 01 es unasubcadena de la cadena de entrada.
1 q0: Si la cadena de entrada es ε permanecemos en q0,δ(q0, ε) = q0. Si la cadena de entrada es 1 permanecemos enq0, δ(q0, 1) = q0.
2 q1: Ya se detecto la cadena 01, se acepta entonces todasucesión posterior de entradas, δ(q1, 0) = δ(q1, 1) = q1.
3 q2: No se ha detectado la cadena 01 pero la entrada masreciente ha sido un 0. Luego si vemos un 1 se tendrá lacadena 01, δ(q2, 0) = q2, δ(q2, 1) = q1
19 / 53
![Page 20: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/20.jpg)
Autómatas Finitos
Como un AFD Procesa Cadenas
Ejemplo 1, continuación (3/3)
¿Qué es lo que debemos conocer para definir el autómata queacepta al lenguaje L?
1 Sus estados Q = {q0, q1, q2}
2 Su estado de inicio q0.3 Su alfabeto Σ = {0, 1}.4 Su conjunto de estado aceptados: F = {q1}.
20 / 53
![Page 21: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/21.jpg)
Autómatas Finitos
Como un AFD Procesa Cadenas
Ejemplo 1, continuación (3/3)
¿Qué es lo que debemos conocer para definir el autómata queacepta al lenguaje L?
1 Sus estados Q = {q0, q1, q2}2 Su estado de inicio q0.
3 Su alfabeto Σ = {0, 1}.4 Su conjunto de estado aceptados: F = {q1}.
21 / 53
![Page 22: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/22.jpg)
Autómatas Finitos
Como un AFD Procesa Cadenas
Ejemplo 1, continuación (3/3)
¿Qué es lo que debemos conocer para definir el autómata queacepta al lenguaje L?
1 Sus estados Q = {q0, q1, q2}2 Su estado de inicio q0.3 Su alfabeto Σ = {0, 1}.
4 Su conjunto de estado aceptados: F = {q1}.
22 / 53
![Page 23: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/23.jpg)
Autómatas Finitos
Como un AFD Procesa Cadenas
Ejemplo 1, continuación (3/3)
¿Qué es lo que debemos conocer para definir el autómata queacepta al lenguaje L?
1 Sus estados Q = {q0, q1, q2}2 Su estado de inicio q0.3 Su alfabeto Σ = {0, 1}.4 Su conjunto de estado aceptados: F = {q1}.
23 / 53
![Page 24: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/24.jpg)
Autómatas Finitos
Diagramas y Tablas de Transición
Definición Diagramas de Transición
Definición
Un diagrama de transición de AFD A = (Q,Σ, δ, q0,F ) es ungrafo que cumple con las siguientes condiciones
1 Para cada q ∈ Q existe un nodo.
2 Para cada q ∈ Q y a ∈ Σ, sea δ(q, a) = p. Entonces eldiagrama de transición tiene un arco que va del nodo q alnodo p cuya etiqueta es a.
3 Hay una flecha entrando al estado q0 cuya etiqueta es Inicio.4 Los nodos correspondientes a los estados aceptados, F , sonmarcados por un círculo doble. Los estado que no pertenecena F tienen un círculo simple.
24 / 53
![Page 25: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/25.jpg)
Autómatas Finitos
Diagramas y Tablas de Transición
Definición Diagramas de Transición
Definición
Un diagrama de transición de AFD A = (Q,Σ, δ, q0,F ) es ungrafo que cumple con las siguientes condiciones
1 Para cada q ∈ Q existe un nodo.2 Para cada q ∈ Q y a ∈ Σ, sea δ(q, a) = p. Entonces eldiagrama de transición tiene un arco que va del nodo q alnodo p cuya etiqueta es a.
3 Hay una flecha entrando al estado q0 cuya etiqueta es Inicio.4 Los nodos correspondientes a los estados aceptados, F , sonmarcados por un círculo doble. Los estado que no pertenecena F tienen un círculo simple.
25 / 53
![Page 26: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/26.jpg)
Autómatas Finitos
Diagramas y Tablas de Transición
Definición Diagramas de Transición
Definición
Un diagrama de transición de AFD A = (Q,Σ, δ, q0,F ) es ungrafo que cumple con las siguientes condiciones
1 Para cada q ∈ Q existe un nodo.2 Para cada q ∈ Q y a ∈ Σ, sea δ(q, a) = p. Entonces eldiagrama de transición tiene un arco que va del nodo q alnodo p cuya etiqueta es a.
3 Hay una flecha entrando al estado q0 cuya etiqueta es Inicio.
4 Los nodos correspondientes a los estados aceptados, F , sonmarcados por un círculo doble. Los estado que no pertenecena F tienen un círculo simple.
26 / 53
![Page 27: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/27.jpg)
Autómatas Finitos
Diagramas y Tablas de Transición
Definición Diagramas de Transición
Definición
Un diagrama de transición de AFD A = (Q,Σ, δ, q0,F ) es ungrafo que cumple con las siguientes condiciones
1 Para cada q ∈ Q existe un nodo.2 Para cada q ∈ Q y a ∈ Σ, sea δ(q, a) = p. Entonces eldiagrama de transición tiene un arco que va del nodo q alnodo p cuya etiqueta es a.
3 Hay una flecha entrando al estado q0 cuya etiqueta es Inicio.4 Los nodos correspondientes a los estados aceptados, F , sonmarcados por un círculo doble. Los estado que no pertenecena F tienen un círculo simple.
27 / 53
![Page 28: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/28.jpg)
Autómatas Finitos
Diagramas y Tablas de Transición
Definición de Tablas de Transición
DefiniciónUna tabla de transición es una representación tabularconvencional de la función δ. Los renglones de la tablacorresponden a los estados y las columnas corresponden a lasentradas. La entrada para el renglón correspondiente al estado q ycolumna correspondiente a la entrada a es el estado δ(q, a).
28 / 53
![Page 29: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/29.jpg)
Autómatas Finitos
Diagramas y Tablas de Transición
Ejemplo de Diagramas y Tablas de Transición
Diagrama y tabla de transición del ejemplo 1.
A = {{q0, q1, q2}, {0, 1}, δ, q0, {q1}}
Figura: Diagrama de transición Figura: Tabla de transición
29 / 53
![Page 30: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/30.jpg)
Autómatas Finitos
Extensión de la Función de Transición a Cadenas
Extensión de la Función de Transición a Cadenas
La función de transición δ : Q × Σ→ Q se puede extenderpara que actúe sobre estados y cadenas
A la función extendida la denotaremos por δ̂.
La definición de δ̂ se hace por inducción sobre la longitud dela cadena de entrada.
30 / 53
![Page 31: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/31.jpg)
Autómatas Finitos
Extensión de la Función de Transición a Cadenas
Extensión de la Función de Transición a Cadenas
La función de transición δ : Q × Σ→ Q se puede extenderpara que actúe sobre estados y cadenasA la función extendida la denotaremos por δ̂.
La definición de δ̂ se hace por inducción sobre la longitud dela cadena de entrada.
31 / 53
![Page 32: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/32.jpg)
Autómatas Finitos
Extensión de la Función de Transición a Cadenas
Extensión de la Función de Transición a Cadenas
La función de transición δ : Q × Σ→ Q se puede extenderpara que actúe sobre estados y cadenasA la función extendida la denotaremos por δ̂.
La definición de δ̂ se hace por inducción sobre la longitud dela cadena de entrada.
32 / 53
![Page 33: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/33.jpg)
Autómatas Finitos
Extensión de la Función de Transición a Cadenas
Definición de la Función de Transición Extendida
1 Definimosδ̂(q, ε) = q,
donde ε es la cadena vacía.
2 Sea w cualquier cadena tal que |w | = 1, suponga que w = a.Definimos
δ̂(q,w) = δ(δ̂(q, ε), a
)= δ (q, a) = p1
3 Sea w cualquier cadena tal que |w | = 2, suponga quew = ba. Entonces
δ̂(q, ba) = δ(δ̂(q, b), a
)= δ (p, a) = p2,
donde estamos suponiendo que δ̂(q, b) = p.
33 / 53
![Page 34: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/34.jpg)
Autómatas Finitos
Extensión de la Función de Transición a Cadenas
Definición de la Función de Transición Extendida
1 Definimosδ̂(q, ε) = q,
donde ε es la cadena vacía.2 Sea w cualquier cadena tal que |w | = 1, suponga que w = a.Definimos
δ̂(q,w) = δ(δ̂(q, ε), a
)= δ (q, a) = p1
3 Sea w cualquier cadena tal que |w | = 2, suponga quew = ba. Entonces
δ̂(q, ba) = δ(δ̂(q, b), a
)= δ (p, a) = p2,
donde estamos suponiendo que δ̂(q, b) = p.
34 / 53
![Page 35: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/35.jpg)
Autómatas Finitos
Extensión de la Función de Transición a Cadenas
Definición de la Función de Transición Extendida
1 Definimosδ̂(q, ε) = q,
donde ε es la cadena vacía.2 Sea w cualquier cadena tal que |w | = 1, suponga que w = a.Definimos
δ̂(q,w) = δ(δ̂(q, ε), a
)= δ (q, a) = p1
3 Sea w cualquier cadena tal que |w | = 2, suponga quew = ba. Entonces
δ̂(q, ba) = δ(δ̂(q, b), a
)= δ (p, a) = p2,
donde estamos suponiendo que δ̂(q, b) = p.35 / 53
![Page 36: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/36.jpg)
Autómatas Finitos
Extensión de la Función de Transición a Cadenas
Inducción
Suponga que la definición de δ̂ es válida para cualquier cadenade longitud n y tomemos una cadena arbitraria de longitudn+ 1. Supongamos que la cadena es w = xa, donde |x | = n y|a| = 1, entonces
δ̂(q, xa) = δ(δ̂(q, x), a
)= δ (p, a) = p3,
estamos suponiendo que δ̂(q, x) = p por hipótesis deinducción.
36 / 53
![Page 37: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/37.jpg)
Autómatas Finitos
Lenguaje de un AFD
Definición Formal de Lenguaje para un AFD
Definición
Formalmente el lenguaje (aceptado) de un AFDA = (Q,Σ, δ, q0,F ) es
L(A) ={w | δ̂(q0,w) ∈ F
}DefiniciónLos lenguajes aceptados por los AFD son llamados lenguajesregulares.
37 / 53
![Page 38: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/38.jpg)
Autómatas Finitos
Lenguaje de un AFD
Ejemplo 2 de AFD
1 Diseño de un AFD que acepta únicamente cadenas con unnúmero par de 0′s y un número par de 1′s.
2 El lenguaje aceptado del AFD es
L ={w | w tiene un número par de 0′s y de 1′s
}.
3 q0: El número de 0′s y 1′s vistos hasta el momento es par.4 q1: El número de 0′s vistos hasta el momento es par pero los1′s son impares.
5 q2: El número de 1′s vistos hasta el momento es par pero los0′s son impares.
6 q3: El número de 0′s y 1′s vistos hasta el momento es impar.
38 / 53
![Page 39: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/39.jpg)
Autómatas Finitos
Lenguaje de un AFD
Ejemplo 2 de AFD
1 Diseño de un AFD que acepta únicamente cadenas con unnúmero par de 0′s y un número par de 1′s.
2 El lenguaje aceptado del AFD es
L ={w | w tiene un número par de 0′s y de 1′s
}.
3 q0: El número de 0′s y 1′s vistos hasta el momento es par.4 q1: El número de 0′s vistos hasta el momento es par pero los1′s son impares.
5 q2: El número de 1′s vistos hasta el momento es par pero los0′s son impares.
6 q3: El número de 0′s y 1′s vistos hasta el momento es impar.
39 / 53
![Page 40: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/40.jpg)
Autómatas Finitos
Lenguaje de un AFD
Ejemplo 2 de AFD
1 Diseño de un AFD que acepta únicamente cadenas con unnúmero par de 0′s y un número par de 1′s.
2 El lenguaje aceptado del AFD es
L ={w | w tiene un número par de 0′s y de 1′s
}.
3 q0: El número de 0′s y 1′s vistos hasta el momento es par.
4 q1: El número de 0′s vistos hasta el momento es par pero los1′s son impares.
5 q2: El número de 1′s vistos hasta el momento es par pero los0′s son impares.
6 q3: El número de 0′s y 1′s vistos hasta el momento es impar.
40 / 53
![Page 41: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/41.jpg)
Autómatas Finitos
Lenguaje de un AFD
Ejemplo 2 de AFD
1 Diseño de un AFD que acepta únicamente cadenas con unnúmero par de 0′s y un número par de 1′s.
2 El lenguaje aceptado del AFD es
L ={w | w tiene un número par de 0′s y de 1′s
}.
3 q0: El número de 0′s y 1′s vistos hasta el momento es par.4 q1: El número de 0′s vistos hasta el momento es par pero los1′s son impares.
5 q2: El número de 1′s vistos hasta el momento es par pero los0′s son impares.
6 q3: El número de 0′s y 1′s vistos hasta el momento es impar.
41 / 53
![Page 42: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/42.jpg)
Autómatas Finitos
Lenguaje de un AFD
Ejemplo 2 de AFD
1 Diseño de un AFD que acepta únicamente cadenas con unnúmero par de 0′s y un número par de 1′s.
2 El lenguaje aceptado del AFD es
L ={w | w tiene un número par de 0′s y de 1′s
}.
3 q0: El número de 0′s y 1′s vistos hasta el momento es par.4 q1: El número de 0′s vistos hasta el momento es par pero los1′s son impares.
5 q2: El número de 1′s vistos hasta el momento es par pero los0′s son impares.
6 q3: El número de 0′s y 1′s vistos hasta el momento es impar.
42 / 53
![Page 43: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/43.jpg)
Autómatas Finitos
Lenguaje de un AFD
Ejemplo 2 de AFD
1 Diseño de un AFD que acepta únicamente cadenas con unnúmero par de 0′s y un número par de 1′s.
2 El lenguaje aceptado del AFD es
L ={w | w tiene un número par de 0′s y de 1′s
}.
3 q0: El número de 0′s y 1′s vistos hasta el momento es par.4 q1: El número de 0′s vistos hasta el momento es par pero los1′s son impares.
5 q2: El número de 1′s vistos hasta el momento es par pero los0′s son impares.
6 q3: El número de 0′s y 1′s vistos hasta el momento es impar.
43 / 53
![Page 44: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/44.jpg)
Autómatas Finitos
Lenguaje de un AFD
Diagrama y Tabla de Transición del Ejemplo 2
Un AFD que acepta únicamente cadenas con un número parde 0′s y un número par de 1′s
A = {{q0, q1, q2, q3, q4}, {0, 1}, δ, q0, {q0}}
44 / 53
![Page 45: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/45.jpg)
Autómatas Finitos
Autómatas Finitos No Deterministas (AFND)
Autómatas Finitos No Deterministas (AFND)
Un AFND puede estar en varios estados al mismo tiempo.Capacidad de adivinar algo relacionado con su entrada.
[Ejemplo 1 AFND] Considere el AFND que acepta todas lascadenas formadas de 0′s y 1′s pero que terminan en 01
45 / 53
![Page 46: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/46.jpg)
Autómatas Finitos
Autómatas Finitos No Deterministas (AFND)
Autómatas Finitos No Deterministas (AFND)
Un AFND puede estar en varios estados al mismo tiempo.Capacidad de adivinar algo relacionado con su entrada.
[Ejemplo 1 AFND] Considere el AFND que acepta todas lascadenas formadas de 0′s y 1′s pero que terminan en 01
46 / 53
![Page 47: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/47.jpg)
Autómatas Finitos
Autómatas Finitos No Deterministas (AFND)
Definición de AFND
DefiniciónUn AFND es una quíntupla
A = (Q,Σ, δ, q0,F )
1 Q es un conjunto finito de estados.
2 Σ es un alfabeto finito, los símbolos de entrada.3 q0 ∈ Q, el estado de inicio.4 F ⊆ Q, los estados aceptados5 δ : Q × Σ→ 2|Q |, la función de transición.
47 / 53
![Page 48: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/48.jpg)
Autómatas Finitos
Autómatas Finitos No Deterministas (AFND)
Definición de AFND
DefiniciónUn AFND es una quíntupla
A = (Q,Σ, δ, q0,F )
1 Q es un conjunto finito de estados.2 Σ es un alfabeto finito, los símbolos de entrada.
3 q0 ∈ Q, el estado de inicio.4 F ⊆ Q, los estados aceptados5 δ : Q × Σ→ 2|Q |, la función de transición.
48 / 53
![Page 49: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/49.jpg)
Autómatas Finitos
Autómatas Finitos No Deterministas (AFND)
Definición de AFND
DefiniciónUn AFND es una quíntupla
A = (Q,Σ, δ, q0,F )
1 Q es un conjunto finito de estados.2 Σ es un alfabeto finito, los símbolos de entrada.3 q0 ∈ Q, el estado de inicio.
4 F ⊆ Q, los estados aceptados5 δ : Q × Σ→ 2|Q |, la función de transición.
49 / 53
![Page 50: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/50.jpg)
Autómatas Finitos
Autómatas Finitos No Deterministas (AFND)
Definición de AFND
DefiniciónUn AFND es una quíntupla
A = (Q,Σ, δ, q0,F )
1 Q es un conjunto finito de estados.2 Σ es un alfabeto finito, los símbolos de entrada.3 q0 ∈ Q, el estado de inicio.4 F ⊆ Q, los estados aceptados
5 δ : Q × Σ→ 2|Q |, la función de transición.
50 / 53
![Page 51: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/51.jpg)
Autómatas Finitos
Autómatas Finitos No Deterministas (AFND)
Definición de AFND
DefiniciónUn AFND es una quíntupla
A = (Q,Σ, δ, q0,F )
1 Q es un conjunto finito de estados.2 Σ es un alfabeto finito, los símbolos de entrada.3 q0 ∈ Q, el estado de inicio.4 F ⊆ Q, los estados aceptados5 δ : Q × Σ→ 2|Q |, la función de transición.
51 / 53
![Page 52: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/52.jpg)
Autómatas Finitos
Autómatas Finitos No Deterministas (AFND)
Especificación Formal del Ejemplo 1 AFND
1
A = {{q, q, q} , {0, 1} , δ, q0, {q2}}
2 La función de transición δ está dada por
52 / 53
![Page 53: Introducción a la Teoría de Autómatas, Lenguajes y …grodrig/Descargas/AutomatasLenguajesCapitu... · Ejemplo 1, continuación (2/3) El autómata debe tener la capacidad de reconocer](https://reader031.vdocuments.co/reader031/viewer/2022022615/5ba2aff209d3f2a1708c4b34/html5/thumbnails/53.jpg)
Autómatas Finitos
Autómatas Finitos No Deterministas (AFND)
Especificación Formal del Ejemplo 1 AFND
1
A = {{q, q, q} , {0, 1} , δ, q0, {q2}}
2 La función de transición δ está dada por
53 / 53