Vous êtes sur la page 1sur 13

UNIDAD 1: LENGUAJES DE PROGRAMACIN Y

TEORA DE LENGUAJES
SESIN 6: Autmatas Finitos
REFLEXIONA:

Qu es un Autmata?

Cul es su implicancia en los


lenguajes de programacin?
LOGRO DE LA SESIN

Al trmino de la sesin el estudiante aprende los conceptos de


autmatas finitos, su implicancia en los lenguajes de programacin, su
clasificacin, sus conversiones de un sistema a otro y sus aplicaciones
como parte del desarrollo de un compilador.

Temario:
1. Definicines: Autmata finito
2. Tipos de Autmatas Finito: AFND, AFD
3. Conversin de una ER a una AFND
4. Conversin de un AFND a un AFD
DEFINICION

Qu es un autmata?

Un autmata es una maquina conceptual que tiene la capacidad de procesar entrada


de datos, bsicamente cadenas (texto)
DEFINICIN

Las aplicaciones de los autmatas son muchas, sin embargo nos enfocaremos en las
ms importantes:

Reconocedores de Lenguaje
En las herramientas de desarrollo, se utilizan en el analizador Lxico

Comparacin de cadenas
Ejemplo (word diccionario, buscar, reemplazar)
DEFINICIN

Alfabeto

Conjunto de smbolos A = { a, b, c, d, , z }
Del cual se puede generar palabras (cadenas) que utiliza un Lenguaje

Palabra

Concatenacin de smbolos que pertenecen a un alfabeto

Lenguaje
Conjunto de palabras formadas sobre un alfabeto, ejemplo:

L = { palabras en ingls }

Restricciones (ciertas palabras) que no forman parte del Lenguaje,


DEFINICIN

AUTOMATAS FINITOS

Como definicin general, un autmata finito es un modelo computacional que realiza


clculos en forma automtica sobre una entrada para producir una salida

Esta formado por un conjunto de estados y un conjunto de transiciones entre estos


estados.

Un autmata tiene el trabajo de reconocer una construccin (palabras) de un


lenguaje

Cuando decimos un autmata finito, la palabra finito indica que tiene un tamao fijo,
determinado, es decir, tiene un estado inicial y tiene un estado final.
DEFINICIN

AUTOMATAS FINITOS

Esta compuesto por un conjunto de elementos:

AF = { Q, , ,qi, {qf} }
De acuerdo a sus elementos, esta formado por 5 tuplas:

Q = Conjunto de Estados
= Smbolos de entrada 1
= Transicin
2
qi = Estado inicial
qf = Estados finales
3
TIPOS DE AUTMATAS

Autmatas Finitos Deterministas (AFD) Ideal

1 a
2
b
3 c

Autmatas Finitos No Determinista (AFND)

1 a
2
a
3 c
DIAGRAMA Y TABLA DE TRANSICIN

Automata Finito Determinista (AFD)

a b c
1 a
1 2 3 --
2
2 -- -- --
b
3 3 -- -- 2
c
DEFINICIN

Expresin Regular (ER)

Una expresin regular, a menudo llamada tambin regex, es una secuencia de


caracteres que forma un patrn de bsqueda, principalmente utilizada para la
bsqueda de patrones de cadenas de caracteres u operaciones de sustituciones.

Especficamente, las expresiones regulares se construyen utilizando los operadores


unin, concatenacin y clausura de Kleene.

Adems cada expresin regular tiene un autmata finito asociado

Las Expresiones Regulares es una forma de representar un lenguaje de manera


abreviada. Ejemplo:
L(L|N)
EXPRESIN REGULAR (ER) AFND

( a* U b* ) c*


a
2 3 4


c
1 8 9 10 11

b
5 6 7


AFND AFD
0 0
= { 0, 1 } C B A

0,1

0 1
q0 A B, A A
q1 B, A C, B, A A
q2
C, B, A C, B, A A

0 0
q0 q1 q2

1 0

Vous aimerez peut-être aussi