Sunteți pe pagina 1din 11

AUTOMATA FINITO

Formalmente:

Es un conjunto de 5 cantidades (5 - tupla) M = (Q, ∑, δ, q0,


F)

• Q = conjunto finito de estados.

• ∑ = alfabeto de entradas finito.

• q0 = elemento de Q, estado inicial.

• F ⊆ Q: conjuntos de estados finales.

• δ =función de transición que transforma Q x ∑ Q; δ


(q, a) = p

Es un modelo matemático.

Se visualiza un AF como un control finito, que se encuentra en


algún estado de Q, y que lee una secuencia de símbolos de ∑
escritos en una cinta.

FUNCION DE TRANSICION EXTENDIDA

Definimos una función: δ^ de Q x ∑ Q, donde δ^ (q, w)


representa el estado en que estará el AF después de leer la
cadena “w” desde el estado”q”.

De manera formal:

1. δ^(q, ʎ) = q

2. ᵾ las cadenas “w” y símbolos de “a”: δ^(q, wa) =


δ(δ^(q, w), a) = a

LENGUAJE ACEPTADO POR UN AUTOMATA FINITO

Una cadena “x” es aceptada por un AF: M = (Q, ∑, δ, q0, F) si


δ^ (q0, x) = p, para algún “p” en F. El lenguaje interpretado
por F es: F = {x / δ^ (q0, x) está en F}
LENGUAJES

Definiciones básicas

Símbolo: entidad abstracta. (letras y dígitos)

Cadena o Palabra: es una secuencia finita de símbolos.

Lenguaje (L): conjunto de cadenas formadas a partir de un


determinado alfabeto.

Longitud de una cadena ( lwl ): es la cantidad de símbolos


que conforman una cadena.

Para cualquier alfabeto ∑, el conjunto de todas las posibles


cadenas sobre ∑ es denotado por ∑*, ycun lenguaje sobre ∑ es
por lo tanto un subconjunto de ∑*. (L ∑*)

Representación

• Extensión: forma limitada de presentación. (cadenas


limitadas)

• Comprensión: L = {x ϵ A / φ(x)}, φ(x) expresa la


propiedad que deben cumplir las cadenas.

Operaciones

• Complemento de
L L: = ∑* - L

• Concatenación de L1 y L2 se define como el conjunto L


= L1L2 = {vw / v ϵ L1 y w ϵ L2}

• Exponenciación: indica el número de ítems a ser


concatenados (símbolos, cadenas, lenguajes) ej.: ak =
c
aaaa… a…

• Clausuras para L ∑*


o L* =K =U
Transitiva: 0
Lk

o Reflexo – L+ =K =U
transistiva: 1
Lk

L* = ʎ U L+
o

DISPOSITIVOS GENERADORES: GRAMATICAS

Es un modelo matemático que permite generar a través de


reglas sintácticas o gramaticales, cadenas de un lenguaje
específico.

Una gramática es una 4-upla: G = (N, Σ, P, S)

• N: conjuntos de símbolos no terminales, representado


por letras mayúsculas (A, B, C…).

• Σ: conjunto de símbolos terminales o alfabeto,


representado por las primeras letras minúsculas (a, b,
c…).

• S: símbolo distinguido o de comienzo.

• P: los elementos de este conjunto son pares (α, β),


donde α debe incluir al menos un símbolo no terminal.
(α, β) ϵ P si: α β P ⊆ (N ∪ Σ )* N. (N ∪ Σ )* × (N ∪ Σ )
*, es el conjunto de producciones o reglas.

Nota 1: una cadena de Σ*, se denota por las últimas letras


minúsculas (…u, v, w, z).

Nota 2: una cadena (Σ U N)*, denotada por letras griegas (α,


β…).

LENGUAJE GENERADOO POR UNA GRAMATICA

El lenguaje generado por una gramática Q es el conjunto de


sentencias o cadenas, L (G) = {x ∈ Σ * | S ⇒*x}.
TIPOS DE LENGUAJES

Tipo 0: recursivamente enumerable.

Tipo 1: dependiente del contexto.

Tipo 2: libres de contexto.

Tipo 3: regulares.

DISPOCITIVO RECONONCEDOR: AUTOMATA

Es un modelo matemático que puede ser visto como una


máquina que recibe como entrada una cadena x ϵ Σ * y emite
como salida una respuesta indicando si la cadena fue
aceptada o rechazada.

• Cinta de entrada / salida: está dividida en celdas capaz


de almacenar un símbolo por vez (alfabeto de la cinta).
Finita o infinita.

• Cabeza lectora / grabadora: permite grabar o leer


símbolos en la cinta. Puede realizar movimientos de una
celda a la derecha o a la izquierda.

• Unidad de control: conjunto finito de posibles estados de


la máquina.

• Memoria auxiliar: permite extender la capacidad de


cierto tipo de máquina.

RELACION ENTRE LENGUAJE, GRAMATICA Y AUTOMATAS


CLASIFICACION DE CHOMSKY
AUTOMATA FINITO DETERMINISTICMO (AFD)

Determinístico significa que para cada valor de entrada hay


uno y solo un estado al cual el autómata puede pasar desde el
estado corriente.

Formalmente:

Un AFD es una 5 – tupla: M = (Q, Σ , δ , q0, F)

• Q: conjunto finito de estados.

• Σ : alfabeto de entrada.

• q0 ϵ Q: estado inicial.

• F ⊆ Q: conjunto de estados finales.

• δ: la función de transición, δ: Q × Σ → Q, es una función


total.

Nota: La notación para un Autómata es un diagrama de


transición o una tabla de transición.

LENGUAJE ACEPTADO POR UN AFD


Una cadena “w” es aceptada por un AFD: M = (Q, Σ , δ , q0, F)
si δ (q0, w) = p para algún p en F, L(M) = {w ∈ Σ * | δˆ (q0,w)
∈ F}.

La función δˆ toma como argumentos: un estado y una


cadena y da como resultado un estado: δˆ: Q × Σ * → Q.

Definición recursiva:

1. δ ˆ (q, λ) = q

2. δ ˆ (q, w) = δ (δˆ (q, x), α) con α ∈ Σ y x ∈ Σ * y w = x α:

L (M) = {w ∈ Σ * | δˆ (q0, w) ∈ F}

AUTOMATA FINITO NO DETERMINISTICO (AFND)

La diferencia con AFD es el tipo de la δ . Para un AFND toma


un estado y un cadena de entrada como argumento pero
retorna un conjunto de estados de Q, es decir 1 o más
estados, como siguiente estado.

Formalmente:

Un AFND es una 5 – tupla: M = (Q, Σ , q0, F, δ)

• Q: conjunto finito de estados.

• Σ : alfabeto de entradas.

• q0 ϵ Q, estado inicial.

• F ⊆ Q: conjunto de estados finales.

• δ es la función de transición, definida por (δ: Q × Σ →


2Q).

LENGUAJE ACEPTADO POR UN AFND


La δ ˆ toma como argumento un estado “q” y una cadena “w”
y retorna como resultado el conjunto de estado en el que el
AFND está si comienza en el estado “q” y procesa la cadena
“w”.

1. δˆ (q, λ) = {q}

2. δˆ (q,w) = {r1, r2, .., rm}, w = xα, δˆ (q, x) = {p1, p2, .., pk}

y Uk δ(pi, α) = {r1, r2, .., rm}
i=1

El lenguaje aceptado por un AFND es L (M) = {w ∈ Σ * | δˆ (q0,


w) ∩ F ≠ Ø}, si se ha consumido toda la cadena.

AUTOMATA FINITO NO DETERMINISTICO CON


TRASICION ε (AFND-ε )

La idea es transmitir transiciones espontaneas, sin recibir un


símbolo de entrada. Se utiliza para ello las transiciones ε , es
decir, transiciones vía la cadena vacía.

Formalmente:

Un AFND - ε se define igual que un AFND, solo que es


necesario incluir información sobre las transiciones ε .

Un AFND - ε es una 5 – tupla: M = (Q, Σ , q0, F, δ)

• Q: conjunto finito de estados.

• Σ : alfabeto de entradas.

• q0 ϵ Q, estado inicial.

• F ⊆ Q: conjunto de estados finales.


• δ es la función de transición, que toma como argumento
un estado de Q y un miembro de Σ U {ε } y está
definida por (δ: Q × Σ U {ε } → 2Q).

Nota: la “ε - clausura (q)” es el conjunto de todos los


estados “p” tal que hay un paso de “q” a “p” rotulado por ε .

DEFINICION RECURSIVA DE ε - CLAUSURA

1. ε - clausura(q) = {q}
2. Si el estado “p” está en la ε - clausura(q), y hay una
transición desde “p” hasta “r” rotulada por ε ; entonces
“r” está en la ε - clausura(q).

LENGUAJE ACEPTADO POR AFND - ε

Sea M = (Q, Σ , q0, F, δ) un AFND - ε , se define al lenguaje al


lenguaje aceptado por el AFND - ε : M como: L = {w ϵ Σ * /
δ^(q0, w) ∩ F ≠ Ø}.

LENGUAJES REGULARES

Se llaman así porque sus palabras contienen “regularidades”


o “repeticiones” de los mismos componentes.

EXPRESIONES REGULARES

Sea Σ un alfabeto tenemos:

1. ∅ es una E.R. que denota al conjunto vacío.

2. ʎ es una E.R. que denota al conjunto ʎ.

3. Para cada “a” en Σ , “a” es una E.R., que denota al


conjunto {a}.
4. Si “r” y “s” son E.R. que denotan a los lenguajes R y S
respectivamente, entonces (r +s), (rs) y (r*) son
expresiones regulares que denotan a los conjuntos R U S,
RS y R* respectivamente.

EQUIVALENCIA ENTRE AF Y ER
Autómatas
Finitos no
Determinístico
s
Autómatas
Finitos
AFND - ∈
Determinístico
s

Expresiones
Regulares

Sea “r” una expresión regular. Entonces existe un AFND con


transiciones ε que acepta a L(r). Y también se demuestra que
cada conjunto aceptado por un autómata finito es denotado
por alguna expresión regular. Esto completa el círculo que se
presenta en la figura anterior.
GRAMATICA REGULAR

Es una cuádrupla G = (N, Σ , P, S) donde:

1. P: es el conjunto de producciones y tienen la siguiente


forma:

1. X → aY, con X, Y ∈ N y a ∈ Σ

2. X → a, con X∈ N y a ∈ Σ

Nota: La familia de lenguajes aceptados por AF es


equivalente a la familia de lenguajes generados por una G.R.
y a los denotados por la E.R.

LEMA DE PUMPING

Sea “L” un lenguaje regular, entonces existe una constante


“n” tal que para toda cadena “w” ϵ L con IwI ≥ n, y que se
pueda subdividir “w” en 3 cadenas W = xyz tal que:

1. y ≠ λ.

2. |xy| ≤ n

3. ∀k ≥ 0, la cadena xykz está también en L.

S-ar putea să vă placă și