1. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
LOS ACEPTORES DE LENGUAJES:
Comprobación de pertenencia: La comprobación de pertenencia
responde al problema de verificar si una palabra w dada está incluida
en el lenguaje que genera una gramática G. Este problema es de
fundamental importancia al encarar el diseño de la etapa de análisis
de cualquier programa traductor de lenguajes.
Se puede afirmar que este problema siempre tiene solución para
los lenguajes de tipo 1 o LDC, y por jerarquía de Chomsky para los
lenguajes de tipo 2 o LIC y los lenguajes de tipo 3 o LR.
Sin embargo, para los lenguajes de tipo 0 o LI no existe un
algoritmo general que permita comprobar la pertenencia de una
palabra w a un lenguaje generado por una gramática irrestricta.
ING. JORGE BUABUD
2. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
LOS ACEPTORES DE LENGUAJES:
La dificultad que se presenta en las GI es la permisividad de reglas
compresoras. El problema se plantea cuando se desea obtener
todas las palabras de longitud menor o igual a N. En este caso las
secuencias intermedias que se van obteniendo en el proceso de
derivación pueden disminuir de longitud, entonces no se sabrá con
seguridad cuando terminar este proceso y de esta forma entrar en
un posible lazo infinito.
Este inconveniente se relaciona con el llamado “PROBLEMA DE
LA PARADA DE LA MT” (The Halting Problem), que constituye
el primer problema sin solución algorítmica demostrable.
ING. JORGE BUABUD
3. U.T.N. – F.R.T.
S. y S. de los L. GRAMÁTICAS Y MODELOS
MATEMÁTICOS
PROBLEMA DE LA PARADA DE LA MT:
La MT fue ideada en la década de 1930 por el matemático inglés Alan
Mathison Turing , con el objetivo de responder al problema central de la
Teoría de la Computación. Este problema consiste en encontrar formas
de representación de procesos, de manera tal que siempre sea posible
decir si el proceso se puede representar algorítmica-mente o no. En
otras palabras, la tesis de Turing pretendía demostrar que no todo
problema bien definido tiene una solución algorítmica.
Para ello supuso que su modelo era una forma de representación de la
solución algorítmica de un problema. Codificó esta máquina y la colocó
como entrada de otra MT, a la cual se conoce como Máquina Universal
de Turing (MUT), que debía ser capaz de determinar si la MT codificada
se detendría o no ante cualquier secuencia de entrada.
ING. JORGE BUABUD
4. U.T.N. – F.R.T.
S. y S. de los L. GRAMÁTICAS Y MODELOS
MATEMÁTICOS
PROBLEMA DE LA PARADA DE LA MT:
La MUT se considera como un modelo de modelos, ya que nos permitiría analizar
el comportamiento de otra MT.
La prueba realizada por Turing , que se conoce como “el problema de parada o
detención de la MT” (The Halting Problem), consistió en suponer una MT1 que
recibe como secuencia de entrada la codificación de otra máquina MT0 y
determinar si ésta se va a detener o no para cualquier entrada válida de la misma.
De tal modo que también será capaz de hacerlo para la codificación de si misma, es
decir que podrá determinar si MT1 se detendrá para cualquier secuencia de
entrada. Luego supuso una MT2 que se detiene si MT0 no lo hace y viceversa.
Esto se puede lograr haciendo que MT2 entre en un ciclo infinito cuando MT0 se
detiene.
Bajo estas suposiciones ¿qué sucede si MT2 trabaja sobre la codificación de si
misma?. Pues sucederá que MT2 se detendrá si MT2 no se detiene y no se
detendrá si MT2 se detiene. O sea una contradicción total.
ING. JORGE BUABUD
5. U.T.N. – F.R.T.
S. y S. de los L. GRAMÁTICAS Y MODELOS
MATEMÁTICOS
PROBLEMA DE LA PARADA DE LA MT:
Este simple razonamiento demuestra por el absurdo, que tal máquina no
puede existir. Lo que a su vez equivale a decir que “el problema de la
parada de la máquina de Turing” no puede ser resuelto algorítmicamente.
Utilizando el problema de la parada de la MT como referencia, se ha
probado que otros problemas son también insolubles. Entre los más
conocidos, tenemos los siguientes:
El problema de la equivalencia de las gramáticas libres de contexto.
La ambigüedad de las GLC.
La comprobación de pertenencia para gramáticas sin restricciones.
ING. JORGE BUABUD
6. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
LOS ACEPTORES DE LENGUAJES:
Para demostrar que siempre es posible resolver el problema de
comprobación de pertenencia para GDC, GIC y GR, vamos a
definir el siguiente algoritmo constructivo:
Dada una G = 〈ΣN, ΣT, P, S〉 y una palabra w de longitud N:
〉
1)T0 = { S }
α∈T
2)Tk = Tk-1 ∪ { β / |β| ≤ N ∧ ∃ α∈ k-1 ∧ α ⇒ β }
β
∈
3)Repetir 2) hasta que: (Tk==Tk-1) o (w∈Tk)
ING. JORGE BUABUD
7. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
LOS ACEPTORES DE LENGUAJES:
Veamos a continuación un ejemplo de aplicación de este
algoritmo con la GDC vista anteriormente y la palabra “abbc”:
G = 〈 ΣN , ΣT , P, S 〉
ΣN = { S, T, B, D } ΣT = { a, b, c }
P: 1) S → T , 2) DB → BD , 3) D → c , 4) T → aTBD , 5) T → abD , 6) bB → bb
T0 = { S }
Como vemos el algoritmo
T1 = { S, T } se detiene con un
T2 = { S, T, aTBD, abD } resultado negativo en
T3 = { S, T, aTBD, abD, aTBc, abc } cuanto a la comprobación
de pertenencia de “abbc”
T4 = T3
ING. JORGE BUABUD
8. U.T.N. – F.R.T.
S. y S. de los L. GRAMÁTICAS Y MODELOS
MATEMÁTICOS
Conociendo a Alan Mathison Turing:
Alan Mathison Turing nació en 1912, y muy pronto mostró
una extraordinaria intuición científica. Mientras su padre
se hallaba en Madrás, trabajando para el Indian Civil
Service, Turing ganó numerosos premios escolares, y luego
una beca que le llevaría al King's College de Cambridge.
Fue aquí cuando empezó a interesarse seriamente por los
problemas de lógica matemática.
En 1931, el matemático checo Kurt Godel descubrió que había teoremas
matemáticos que eran verdaderos aún cuando no se pudiesen probar.
Ante esto, Alan Turing se puso a investigar aquellos que sí podían ser probados.
Quería intentar demostrar la vieja idea de que las matemáticas no son un arte
misterioso, sino una ciencia exacta regida por reglas lógicas. Para hacerlo, ideó
una máquina imaginaria capaz de realizar de manera totalmente mecánica los
procesos que normalmente llevaría a cabo un matemático.
ING. JORGE BUABUD
9. U.T.N. – F.R.T.
S. y S. de los L. GRAMÁTICAS Y MODELOS
MATEMÁTICOS
Conociendo a Alan Mathison Turing:
Había una máquina para cada proceso; así, había una máquina que sumaba, otra
que multiplicaba, etc. Estas máquinas acabarían por recibir el nombre de
"Máquinas de Turing". Básicamente, lo que quería era hacer una lista de los
problemas que una máquina sería capaz de resolver siguiendo reglas lógicas. Si
esta lista abarcaba todos los problemas matemáticos, entonces su tesis quedaría
demostrada, y con ella la teoría de la computabilidad. Tras estudiar con
detenimiento el funcionamiento de sus máquinas, concluyó que era posible diseñar
un artilugio único capaz de cumplir las funciones de cualquier otra máquina de
Turing. A ésta se le llamó la "Máquina Universal de Turing".
Al estallar la Segunda Guerra Mundial, Turing fue reclutado por la Escuela de
Códigos y Cifrados del gobierno británico. Las actividades que realizaba
consistían de manera primordial en descifrar el código militar alemán ENIGMA.
Para ello desarrolló el invento más secreto de dicha guerra: el COLOSSUS,
primer ordenador electromecánico del mundo.
ING. JORGE BUABUD
10. U.T.N. – F.R.T.
S. y S. de los L. GRAMÁTICAS Y MODELOS
MATEMÁTICOS
Conociendo a Alan Mathison Turing:
Más adelante, sería destinado a USA con el fin de crear unos códigos seguros para
las comunicaciones transatlánticas entre los países aliados.
Acabada la guerra, Turing colaboró en la construcción del ENIAC.
Posteriormente recibió el encargo de empezar a trabajar en la construcción de un
ordenador totalmente británico, destinado al National Physical Laboratory, y que
recibiría el nombre de ACE (Automatic Computing Engine).
Esta máquina tardó mucho tiempo en ser construida, pero era superior a ENIAC
en muchas características. Frustrado por el lento avance, dimitió y se fue a vivir
a Manchester, colaborando en el proyecto del MARK I, el ordenador de la
universidad. Al mismo tiempo, era asesor de la compañía Ferranti, colaborando
en la construcción de los primeros ordenadores fabricados en Gran Bretaña.
En 1952, Turing fue juzgado por “indecencia grave” debido al reconocimiento
público de su homosexualidad. Sometido a un tratamiento hormonal que al cabo
de un año lo dejó impotente y obeso, en 1954 terminó con su vida al morder una
manzana envenenada. Oficialmente se consideró como un suicidio.
ING. JORGE BUABUD
11. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
MÁQUINA DE TURING (MT):
La Máquina de Turing es un modelo matemático abstracto que representa
la solución de cualquier problema algoritmico y en particular resuelve el
problema de aceptación de lenguajes de tipo 0 o irrestrictos.
Fue propuesto por el científico inglés ALAN MATHISON TURING.
Para su mejor comprensión lo representaremos con el siguiente esquema:
Cinta Infinita
•••• ∆ ∆ e1 e2 ••• •••
en-1 en ∆ ∆ ••••
Cabezal de Lec./Esc.
01
Estados
X
Control . 2
. .3
ING. JORGE BUABUD
12. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
MÁQUINA DE TURING (MT):
El modelo dispone de una cinta infinita dividida en casilleros
que pueden contener un símbolo cada uno. Un cabezal de
lectura y escritura sobre la cinta. Un control que puede
responder de distintas formas según el estado en el que se
encuentre.
∆
Al comienzo la cinta esta llena de espacios en blanco (∆) y se
escribe la palabra que se desea analizar (ei), el cabezal está en
la posición del primer símbolo de dicha palabra; en cuyo caso
se dice que el control se encuentra en el estado inicial.
ING. JORGE BUABUD
13. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
MÁQUINA DE TURING (MT):
A partir de ese estado inicial el modelo comienza a funcionar realizando las
siguientes acciones:
1) LEE un símbolo
2) De acuerdo al ESTADO ACTUAL y al símbolo leído:
a) ESCRIBE otro símbolo (que puede ser el mismo)
b) MUEVE el cabezal un lugar hacia la derecha o izquierda
(eventualmente no se mueve)
c) Transiciona a un NUEVO ESTADO (que puede ser el mismo)
3) Repite 1) y 2) hasta que se llega a alguno de los llamados ESTADOS
FINALES, en cuyo caso se dice que la palabra escrita inicialmente es
ACEPTADA. O hasta que se llega a un estado en el que no está definida
una transición para el símbolo leído, en cuyo caso se dice que se produce
un BLOQUEO de la MT y la secuencia de entrada es RECHAZADA.
ING. JORGE BUABUD
14. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
MÁQUINA DE TURING (MT):
Definición formal de una MÁQUINA DE TURING:
MT = 〈 Q , ΣE , ΣA , q0 , F , f 〉
Q : Conjunto finito y no vacío de estados.
ΣE: Alfabeto de símbolos de entrada.
ΣA: Alfabeto de símbolos auxiliares (incluye a “∆”).
∆
q0 : Estado inicial (perteneciente a Q)
F : Conjunto de estados finales (incluido en Q)
f : Función de control o transición.
ING. JORGE BUABUD
15. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
MÁQUINA DE TURING (MT):
La función de transición se define como:
f : (Q-F) x (ΣE∪ΣA) ⇒ Q x (ΣE∪ΣA) x {I,N,D}
Σ Σ
donde los símbolos I, N y D representan los movimientos del
cabezal de lectoescritura sobre la cinta, hacia la izquierda, nulo y
hacia la derecha respectivamente.
El dominio no incluye a F, es decir que los estados finales son de
parada. Todos los símbolos se pueden leer y escribir, pero
inicialmente solo hay espacios en blanco y una secuencia de
símbolos de entrada.
ING. JORGE BUABUD
16. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
MÁQUINA DE TURING (MT):
De acuerdo a la hipótesis de Turing, el lenguaje universal
Σ * , queda dividido en tres subconjuntos:
E
Todas las palabras aceptadas por la MT.
ΣE* Todas las palabras rechazadas por la MT.
Aquellas palabras que hacen que la MT no se
detenga, o sea que no se aceptan ni se rechazan.
ING. JORGE BUABUD
17. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
MÁQUINA DE TURING (MT):
Representación formal de la función de transición:
Tabla de Transición
Est.Act. Sím.Ent. Est.Nue. Sím.Sal. Mov.
q e q’ s m
Grafo de Transición
(e,s,m)
q0 q q’ F
ING. JORGE BUABUD
18. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
MÁQUINA DE TURING (MT):
En ambos casos se representa cada pareja estímulo/ /reacción,
compuesta por el par (estado actual, símbolo de entrada) y la terna
(estado nuevo, símbolo de salida, movimiento) respectivamente.
Un aspecto importante a tener en cuenta en cada modelo aceptor de
lenguaje, es la característica determinista o no-determinista de las
funciones de control. Que se refiere a la posibilidad de que dicha
relación tenga o no varias alternativas de transición para un mismo
estímulo. Es decir que se dice determinista cuando se trata
estrictamente de una función desde el punto de vista matemático.
En el caso de la MT se puede afirmar que se trata de un modelo
DETERMINISTA por naturaleza. Es decir que para toda MT no-
determinista existe una MT determinista equivalente.
ING. JORGE BUABUD
19. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
EJEMPLO DE MT:
MT= 〈 Q , ΣE , ΣA , q0 , F , f 〉
Q = { 1, 2, 3, 4, 5, 6, 7, 8 }
La función de control f es
ΣE = { a, b } ΣA = { ∆ } determinista y se representa
con su tabla y grafo de
transición.
q0 = 1 F={8}
Esta MT acepta el lenguaje Palíndromo sobre el alfabeto
de símbolos {a, b}.
ING. JORGE BUABUD
20. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
EJEMPLO DE MT:
ING. JORGE BUABUD
21. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
EJEMPLO DE MT:
GRAFO DE TRANSICIÓN
ING. JORGE BUABUD
22. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
CONFIGURACIÓN DE UNA MT:
Una descripción instantánea de una MT requiere las siguientes
especificaciones:
Estado actual de la MT.
Contenido de la cinta.
Posición del cabezal.
Esta terna se conoce como CONFIGURACIÓN de la MT y vamos a
representar con la secuencia de símbolos que hay en la cinta antes
de la posición del cabezal (i), seguida del estado actual (qk ), seguida
de la secuencia que hay desde la posición del cabezal y delimitada
por espacios en blanco: ∆c1...ci-1qkci...cn∆
ING. JORGE BUABUD
23. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
SECUENCIA DE CONFIGURACIÓN DE UNA MT:
Con el objetivo de representar la respuesta de una MT ante
una secuencia de entrada, vamos a definir el operador ├─
de transformación directa de una configuración en otra:
C1 ├─ C2 , que implica el pasaje de la configuración C1 a
la configuración C2 mediante la aplicación de la función de
transición una sola vez; y en caso de que se realicen varios
pasos se indica con la nomenclatura: C1 ├─* C2
Una sucesión de varias configuraciones consecutivas se
llama SECUENCIA DE CONFIGURACIÓN de la MT.
ING. JORGE BUABUD
24. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
LENGUAJE ACEPTADO POR UNA MT:
Se define el lenguaje aceptado por una MT como el
conjunto de palabras que partiendo de una configuración
inicial, llegan a una configuración que contiene un estado
final de la MT. Formalmente se representa como:
L(MT) = {w / w∈ΣE* ∧ ∆q0w∆├─ * ∆β1qFβ2∆ ∧ qF ∈ F }
∈Σ ∆
Por otro lado, todas las palabras que partiendo de una
configuración inicial llegan a una configuración donde se
produce un bloqueo; se dice que son rechazadas por la MT.
ING. JORGE BUABUD
25. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
EJEMPLO DE SECUENCIA DE CONFIGURACION:
Consideremos el ejemplo de MT anterior y las palabras:
w1 = aba , w2 = bb , w3 = λ , w4 = ab
Las secuencias de configuración correspondientes serían:
1) ∆1aba∆ ├─ ∆∆2ba∆ ├─ ∆∆b2a∆ ├─ ∆∆ba2∆ ├─ ∆∆b3a∆
∆ ∆∆ ∆ ∆∆ ∆ ∆∆ ∆ ∆∆ ∆
∆∆4b∆∆ ∆ ∆∆ ∆∆1b∆∆
├─ ∆∆ ∆∆├─ ∆4∆b∆∆ ├─ ∆∆ ∆∆ ├─ ∆∆∆ ∆∆ ∆∆∆5∆∆
∆∆6∆∆∆ ∆∆∆8∆∆ final/acepta
├─ ∆∆ ∆∆∆ ├─ ∆∆∆ ∆∆
2) ∆1bb∆ ├─ ∆∆ ∆ ├─ ∆∆b5∆ ├─ ∆∆6b∆ ├─ ∆7∆∆∆
∆ ∆∆5b∆ ∆∆ ∆ ∆∆ ∆ ∆∆∆
∆∆1∆∆ ∆∆∆8∆
├─ ∆∆ ∆∆├─ ∆∆∆ ∆ final/acepta
3) ∆1∆ ├─ ∆∆8 final/acepta
∆ ∆∆
4) ∆1ab∆ ├─ ∆∆ ∆ ├─ ∆∆ ∆ ├─ ∆∆ ∆ bloqueo/rechazo
∆ ∆∆2b∆ ∆∆b2∆ ∆∆3b∆
ING. JORGE BUABUD
26. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
EJEMPLO DE SIMULACIÓN DE LA MT:
•••• ∆ ∆ ∆ a b a ∆ ∆ ∆ ∆ ••••
1
ING. JORGE BUABUD
27. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
EJEMPLO DE SIMULACIÓN DE LA MT:
•••• ∆ ∆ ∆ ∆ b a ∆ ∆ ∆ ∆ ••••
2
ING. JORGE BUABUD
28. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
EJEMPLO DE SIMULACIÓN DE LA MT:
•••• ∆ ∆ ∆ ∆ b a ∆ ∆ ∆ ∆ ••••
2
ING. JORGE BUABUD
29. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
EJEMPLO DE SIMULACIÓN DE LA MT:
•••• ∆ ∆ ∆ ∆ b a ∆ ∆ ∆ ∆ ••••
2
ING. JORGE BUABUD
30. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
EJEMPLO DE SIMULACIÓN DE LA MT:
•••• ∆ ∆ ∆ ∆ b a ∆ ∆ ∆ ∆ ••••
3
ING. JORGE BUABUD
31. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
EJEMPLO DE SIMULACIÓN DE LA MT:
•••• ∆ ∆ ∆ ∆ b ∆ ∆ ∆ ∆ ∆ ••••
4
ING. JORGE BUABUD
32. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
EJEMPLO DE SIMULACIÓN DE LA MT:
•••• ∆ ∆ ∆ ∆ b ∆ ∆ ∆ ∆ ∆ ••••
4
ING. JORGE BUABUD
33. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
EJEMPLO DE SIMULACIÓN DE LA MT:
•••• ∆ ∆ ∆ ∆ b ∆ ∆ ∆ ∆ ∆ ••••
1
ING. JORGE BUABUD
34. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
EJEMPLO DE SIMULACIÓN DE LA MT:
•••• ∆ ∆ ∆ ∆ ∆ ∆ ∆ ∆ ∆ ∆ ••••
5
ING. JORGE BUABUD
35. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
EJEMPLO DE SIMULACIÓN DE LA MT:
•••• ∆ ∆ ∆ ∆ ∆ ∆ ∆ ∆ ∆ ∆ ••••
6
ING. JORGE BUABUD
36. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
EJEMPLO DE SIMULACIÓN DE LA MT:
•••• ∆ ∆ ∆ ∆ ∆ ∆ ∆ ∆ ∆ ∆ ••••
8
ING. JORGE BUABUD
37. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
MT COMO TRANSFORMADOR DE SECUENCIAS:
Se puede ver a la MT como un modelo general de
procesamiento de datos, capaz de realizar cualquier
transformación sobre una secuencia inicial y obtener una
secuencia final que cumpla ciertas condiciones.
La secuencia inicial se puede interpretar como los datos de
entrada y la secuencia final como los datos de salida o
resultado de un problema algorítmico.
Vamos a ver a continuación algunos ejemplos sencillos de
cálculos matemáticos utilizando como modelo a la MT.
ING. JORGE BUABUD
38. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
EJEMPLOS DE MT CALCULADORA:
1) El sistema de numeración unario utiliza secuencias de
símbolos “1” para representar los números enteros
λ
positivos y la palabra vacía “λ” para el número cero.
Número Decimal Número Unario
0 λ
1 1
2 11
3 111
4 1111
5 11111
ING. JORGE BUABUD
39. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
EJEMPLOS DE MT CALCULADORA:
1.1) MT que incrementa un número unario:
Q = { 1, 2, 3 } , ΣA = { ∆ } , ΣE = { 1 } , q0= 1 , F= { 3 }
ING. JORGE BUABUD
40. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
EJEMPLOS DE MT CALCULADORA:
1.2) MT que suma dos números unarios separados por ∆:
Q = { 1, 2, 3, 4, 5 } , ΣA = { ∆ } , ΣE = { 1 } , q0= 1 , F= { 5 }
ING. JORGE BUABUD
41. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
EJEMPLOS DE MT CALCULADORA:
2) MT que incrementa en uno un número binario natural:
Q = {1, 2, 3, 4, 5, 6, 7} , ΣA= {∆} , ΣE= {0, 1} , q0= 1 , F= {7}
∆
Para comprender la lógica que utiliza este modelo se puede
asociar con los estados los siguientes nemotécnicos:
1:Inicio 2:Suma 3:Con acarreo 4:Sin acarreo
5:Desborde 6:Retorno 7:Final
ING. JORGE BUABUD
42. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
EJEMPLOS DE MT CALCULADORA:
ING. JORGE BUABUD
43. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
AUTÓMATA LINEALMENTE LIMITADO (ALL):
El Autómata Linealmente Limitado es una MT que tiene restringida la
longitud de su cinta, la cual se limita a la longitud de la secuencia de
entrada inicial. Este modelo matemático abstracto representa la solución
del problema de aceptación de lenguajes de tipo 1 o LDC.
Para su mejor comprensión lo representaremos con el siguiente esquema:
Cinta Finita
〈 e1 e2 ••• •••
en-1 en 〉
Cabezal de Lec./Esc.
01
Estados
X
Control . 2
. .3
ING. JORGE BUABUD
44. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
AUTÓMATA LINEALMENTE LIMITADO (ALL):
El modelo es idéntico a la MT, salvo que dispone de una cinta
finita. Al comienzo se escribe en la cinta la palabra que se
desea analizar (ei), el cabezal de lecto-escritura se encuentra
sobre la posición del primer símbolo de dicha palabra; en
estas circunstancias se dice que el control se encuentra en el
estado inicial. Automáticamente se coloca en los extremos de
〈 〉
esta secuencia los símbolos especiales “〈” y “〉” a la izquierda
y derecha respectivamente, los mismos actúan como límites
para el desplazamiento del cabezal; de tal modo que no se
〈
puede desplazar más a la izquierda de “〈” ni más a la derecha
〉
de “〉”.
ING. JORGE BUABUD
45. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
AUTÓMATA LINEALMENTE LIMITADO (ALL):
Definición formal de un Autómata Linealmente Limitado:
ALL = 〈 Q , ΣE , ΣA , q0 , F , f 〉
Q : Conjunto finito y no vacío de estados.
ΣE: Alfabeto de símbolos de entrada.
ΣA: Alfabeto de símbolos auxiliares (incluye a “〈” y a “〉”).
〈 〉
q0 : Estado inicial (perteneciente a Q)
F : Conjunto de estados finales (incluido en Q)
f : Función de control o transición.
ING. JORGE BUABUD
46. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
AUTÓMATA LINEALMENTE LIMITADO (ALL):
La función de transición se define como:
f : (Q-F) x (ΣE∪ΣA) ⇒ Q x (ΣE∪ΣA) x {I,N,D}
Σ Σ
∀ q ∈ (Q-F) f(q , 〈 ) = (q’ , 〈 , D)
∧ q’∈ Q
∈ f(q , 〉 ) = (q’ , 〉 , I)
El dominio no incluye a F, es decir que los estados finales son de
parada. Todos los símbolos se pueden leer y escribir, pero
inicialmente solo está la secuencia de símbolos de entrada
〈 〉
delimitada por los símbolos “〈” y “〉”.
ING. JORGE BUABUD
47. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
AUTÓMATA LINEALMENTE LIMITADO (ALL):
En el caso de los ALL y en correspondencia con el algoritmo
constructivo de comprobación de pertenencia para LDC, el
lenguaje universal Σ * , queda dividido en dos subconjuntos:
E
Todas las palabras aceptadas por el ALL.
ΣE*
Todas las palabras rechazadas por el ALL.
Es decir que para todo LDC existe un ALL que es capaz de
aceptarlo y a la vez rechazar a su complemento.
ING. JORGE BUABUD
48. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
AUTÓMATA LINEALMENTE LIMITADO (ALL):
Representación formal de la función de transición:
Tabla de Transición
Est.Act. Sím.Ent. Est.Nue. Sím.Sal. Mov.
q e q’ s m
Grafo de Transición
(e,s,m)
q0 q q’ F
ING. JORGE BUABUD
49. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
AUTÓMATA LINEALMENTE LIMITADO (ALL):
En ambos casos se representa cada pareja estímulo/ /reacción,
compuesta por el par (estado actual, símbolo de entrada) y la terna
(estado nuevo, símbolo de salida, movimiento) respectivamente.
Al igual que todos los modelos, la relación de transición puede ser
determinista o no-determinista.
Algunos autores afirman que el ALL es DETERMINISTA por
naturaleza, es decir que para todo ALL no-determinista existe un
ALL determinista equivalente. Otros lo ponen en duda, lo cierto es
que hasta el momento no se pudo demostrar lo contrario.
ING. JORGE BUABUD
50. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
EJEMPLO DE ALL:
ALL = 〈 Q , ΣE , ΣA , q0 , F , f 〉
Q = { I, A, B, C, D, F }
La función de control f es
ΣE = { a, b } ΣA = { 〈 , 〉 , X } determinista y se representa
con su tabla y grafo de
q0 = I F={F} transición.
Este ALL acepta el lenguaje IGUAL sobre el alfabeto {a, b},
que contiene todas las palabras con igual cantidad de un
símbolo que del otro.
ING. JORGE BUABUD
51. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
EJEMPLO DE ALL:
ING. JORGE BUABUD
52. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
EJEMPLO DE ALL:
GRAFO DE TRANSICIÓN
ING. JORGE BUABUD
53. U.T.N. – F.R.T. GRAMÁTICAS Y MODELOS
S. y S. de los L.
MATEMÁTICOS
EJEMPLO DE ALL:
Los conceptos de CONFIGURACIÓN, SECUENCIA DE
CONFIGURACIÓN y LENGUAJE ACEPTADO por un
ALL, son los mismos que los de una MT.
En este ejemplo de ALL tenemos las siguientes secuencias de
configuración para las palabras: w1 = ab , w2 = b
1) 〈Iab〉 ├─ A〈Xb〉 ├─ 〈BXb〉 ├─ 〈XBb〉 ├─ 〈CXX〉
〉 〈 〉 〉 〉 〉
├─ C〈XX〉 ├─ 〈IXX〉 ├─ 〈XIX〉 ├─ 〈XXI〉 ├─ 〈XDX〉
〈 〉 〉 〉 〉 〉
├─ 〈DXX〉 ├─ D〈XX〉 ├─ 〈FXX〉 final/acepta
〉 〈 〉 〉
2) 〈Ib〉 ├─ 〈bI〉 ├─ 〈Db〉
〉 〉 〉 bloqueo/rechaza
ING. JORGE BUABUD