autómatas finitos
TRANSCRIPT
![Page 1: Autómatas Finitos](https://reader030.vdocuments.co/reader030/viewer/2022013113/589a24a21a28ab2a678b74b5/html5/thumbnails/1.jpg)
Autómatas FinitosMariela Bussi Pimentel 16-0613
![Page 2: Autómatas Finitos](https://reader030.vdocuments.co/reader030/viewer/2022013113/589a24a21a28ab2a678b74b5/html5/thumbnails/2.jpg)
Autómatas Finitos
• Un autómata finito (AF) o máquina de estado finito es un modelo computacional que realiza cómputos en forma automática sobre una entrada para producir una salida.
• Diseñado para:• - Acepte algunas cadenas de símbolos.
• -Reconocer un lenguaje, que es el conjunto de cadenas que acepta.
![Page 3: Autómatas Finitos](https://reader030.vdocuments.co/reader030/viewer/2022013113/589a24a21a28ab2a678b74b5/html5/thumbnails/3.jpg)
• FA toma como entrada una cadena de cualquier longitud.– Una máquina para todas las longitudes.
– Los circuitos y árboles de decisión utilizan una máquina diferente para cada longitud.
![Page 4: Autómatas Finitos](https://reader030.vdocuments.co/reader030/viewer/2022013113/589a24a21a28ab2a678b74b5/html5/thumbnails/4.jpg)
W: 1 0 1 1 0 1 1 1 0 Estados: a b a b c a b c d dUn FA ‘M’ acepta una palabra w si w hace que M siga una trayectoria desde el estado de inicio a un estado de aceptación.
![Page 5: Autómatas Finitos](https://reader030.vdocuments.co/reader030/viewer/2022013113/589a24a21a28ab2a678b74b5/html5/thumbnails/5.jpg)
Definición Formal
Formalmente, un autómata finito es una 5-tupla (Q, Σ, 𝑞0, δ, F) donde:
• Q es un conjunto finito de estados;
• Σ es un alfabeto finito;
• 𝑞0 ∈ Q es el estado inicial;
• δ: Q X Σ es → 𝑄 una función de transición;
• 𝐹 ⊆ 𝑄es un conjunto de estados finales o de aceptación.
![Page 6: Autómatas Finitos](https://reader030.vdocuments.co/reader030/viewer/2022013113/589a24a21a28ab2a678b74b5/html5/thumbnails/6.jpg)
Cual es la 5-tupla (Q, Σ, 𝑞0, δ, F) ?
Q = { a, b, c, d }
Σ = { 0, 1 }
δ está dada por el diagrama de estado, o alternativamente, por una tabla:
𝑞0= a
F = { d }
![Page 7: Autómatas Finitos](https://reader030.vdocuments.co/reader030/viewer/2022013113/589a24a21a28ab2a678b74b5/html5/thumbnails/7.jpg)
Definición formal de computación
• Cadena w es aceptada si δ * (𝑞0, w) ∈ F, es decir, w cables del estado inicial a un estado de aceptación.
• Se rechaza la cadena w si no se acepta.
• Un lenguaje es cualquier conjunto de cadenas sobre alfabeto.
• L (M), lenguaje reconocido por el autómata finito M = {w | w es aceptado por M}.
• Un lenguaje es regular, o FA-reconocible, si es reconocido por algún autómata finito.
![Page 8: Autómatas Finitos](https://reader030.vdocuments.co/reader030/viewer/2022013113/589a24a21a28ab2a678b74b5/html5/thumbnails/8.jpg)
Operaciones lingüísticas
• Operaciones que se pueden utilizar para construir idiomas de otros idiomas.
• Recuperar: Una lengua es cualquier conjunto de cadenas.
• Dado que los idiomas son conjuntos, podemos usar
• Establecer operaciones:
- Unión, L1 ∪ L2
- Intersección, L1 ∩ L2
- Complemento, Lc
- Diferencia de ajuste, L1 - L2
También tenemos nuevas operaciones definidas especialmente para conjuntos de cadenas:
- Concatenación, L1 ◦ L2 o simplemente L1 L2
![Page 9: Autómatas Finitos](https://reader030.vdocuments.co/reader030/viewer/2022013113/589a24a21a28ab2a678b74b5/html5/thumbnails/9.jpg)
Autómatas finitos no determinísticos
• Generalizar AF mediante la adición de no determinista, permitiendo que varios cálculos alternativos en la misma cadena de entrada.
• Las FA determinísticas ordinarias siguen un camino en cada entrada.
• En un AFND puede darse cualquiera de estos dos casos:– Que existan transiciones del tipo δ(q,a)=q1 y δ(q,a)=q2, siendo q1 ≠ q2;
– Que existan transiciones del tipo δ(q, ε), siendo q un estado no-final, o bien un estado final pero con transiciones hacia otros estados.
![Page 10: Autómatas Finitos](https://reader030.vdocuments.co/reader030/viewer/2022013113/589a24a21a28ab2a678b74b5/html5/thumbnails/10.jpg)
Autómatas finitos no determinísticos
• Formalmente, si bien un autómata finito determinista se define como una 5-tupla (Q, Σ, q0, δ, F) donde:
• Q es un conjunto finito de estados;
• Σ es un alfabeto;
• 𝑞0 ∈ Q es el estado inicial;
• δ: Q X Σ es → 𝑄 una función de transición;
• 𝐹 ⊆ 𝑄es un conjunto de estados finales o de aceptación.
![Page 11: Autómatas Finitos](https://reader030.vdocuments.co/reader030/viewer/2022013113/589a24a21a28ab2a678b74b5/html5/thumbnails/11.jpg)
Ejemplo 1
![Page 12: Autómatas Finitos](https://reader030.vdocuments.co/reader030/viewer/2022013113/589a24a21a28ab2a678b74b5/html5/thumbnails/12.jpg)
Ejemplos
![Page 13: Autómatas Finitos](https://reader030.vdocuments.co/reader030/viewer/2022013113/589a24a21a28ab2a678b74b5/html5/thumbnails/13.jpg)
Bibliografia
• Nancy Lynch. (2010). Automata, Computability, and Complexity Or, Great Ideas in Theoretical Computer Science Spring. MIT OpenCourseWare: MIT.