Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Ciencias de La Computación I: Máquinas de Turing Autómatas Linealmente Acotados
Ciencias de La Computación I: Máquinas de Turing Autómatas Linealmente Acotados
Máquinas de Turing
Autómatas Linealmente Acotados
Motivación
-¿Es posible diseñar un AP que reconozca el lenguaje L1?
L1 = { an bn cn / n > 0 } = {abc, aabbcc, aaabbbccc, … }
Posible estrategia cadena aabbcc
A
A
1) a a b b c c … Z0
Apilamos una A con cada a
1
Máquinas de Turing
Máquinas de Turing
cinta de entrada (espacio infinito a izquierda y derecha, o sólo a derecha) contiene cadena a ser leída
a a b b c c
mecanismo de control
Estados de MT Dada una cadena x en la cinta de
entrada, si la MT lee toda la cadena y:
✓ Cantidad finita.
➢ termina en estado final →
✓ Un estado inicial.
cadena aceptada
✓ Estados finales o de aceptación.
➢ termina en estado no final →
cadena rechazada
(puede haber leído toda la cadena o no)
Ciencias de la Computación I - Filminas de Clase – Facultad Cs. Exactas – UNCPBA - 2021
2
Máquinas de Turing Multicinta
Varias cintas (cada una un espacio ilimitado)
Una cabeza lectora independiente para cada cinta
a a b b c c
indicador de estado
e0
e5 e1
cabeza lectora cinta 1
e4 e2
e3
mecanismo de control
…
a a b b c c
Retrocedo una A con cada b
leída. Si |A| = |b| → se lee c y X
X A A
a a b b c c
Avanzo una A con cada c
leída. Si |A| = |c| → se lee
X A A blanco y blanco
3
Máquina de Turing
Formalmente, una MT reconocedora determinística se define como una 7-upla
MT= <E, A, C, , e0, B, F>
✓ e0 es el estado inicial; e0 E
✓ B es el símbolo blanco B C
✓ F es el conjunto de estados finales o de aceptación; F E
Ciencias de la Computación I - Filminas de Clase – Facultad Cs. Exactas – UNCPBA - 2021
Transiciones de MT (1 cinta)
1) (ei, a) = (ej,Y, D)
a a b b c c a Y b b c c
ei ej
a a b b c c 2) (ei, a) = (ej, Y, I) a Y b b c c
ei ej
a a b b c c 3) (ei, a) = (ej,Y, N) a Y b b c c
ei ej
donde a, b, c, Y C; ei , ej E
Ciencias de la Computación I - Filminas de Clase – Facultad Cs. Exactas – UNCPBA - 2021
4
Transiciones de MT (k-cintas)
Ejemplo 2-cintas
a a b b c c a a b b c c
(ei, c, A) = (ej, (c,D), (A,I)) ej
ei
A A A A
donde a, b, c, A C; ei , ej E
C1 a a b b c c c c
C2
Posible estrategia:
- Copiar an en C2
- Por cada b en C1, retroceder una a en C2.
- Cada dos c que se avanza en C1, avanzar una en C2
5
Reconocimiento de lenguajes: Tabla de transición de estados
L = { an bn c2n / n > 0 }
Estado C1 C2 C1 C2 Nuevo
actual estado
e0 a a b b c c c c
a B a N X D e1
e1 a B a D A D e1 X A A
b B b N B I e2
e2 b A b D A I e2
c X c N X D e3 e342105
e3 c A c D A N e4 Estado actual
B B B N B N e5
e4 c A c D A D e3
e5 - - - - - - -
L = { an bn c2n / n > 0 }
a,B/<a,D><A,D> b,A/<b,D><A,I>
c,X/<c,N><X,D> c,A/<c,D><A,N>
a,B/<a,N><X,D> b,B/<b,N><B,I>
e1 e2 e3 e4
e0
c,A/<c,D><A,D>
a a b b c c c c
B,B/<B,N><B,N>
X A A
e5
e342105
MT=<{e0, e1, e2, e3, e4, e5}, {a, b, c},{X, A. B, a, b, c, , e0, B, {e5}>
Estado actual
Ciencias de la Computación I - Filminas de Clase – Facultad Cs. Exactas – UNCPBA - 2021
6
Reconocimiento de Lenguajes: Descripción instantánea
L = { an bn c2n / n > 0 }
a,B/<a,D><A,D> b,A/<b,D><A,I
>
a,B/<a,N><X,D> c,X/<c,N><X,D> c,A/<c,D><A,N>
b,B/<b,N><B,I>
e1 e2 e3 e4
e0
c,A/<c,D><A,D>
Lee aabbcccc y e5 es final
aabbcccc L B,B/<B,N><B,N>
e5
<e0aabbcccc >├ < e1aabbcccc>├ < ae1abbcccc>├ < aae1bbcccc> ├ < aae2bbcccc>
<e0 > ├ < Xe1 > ├ < XAe1 > ├ < XAAe1 > ├ < XAe2A >
├ < aabe2bcccc> ├ < aabbe2ccc>├ < aabbe3cccc>├ < aabbce4ccc >├ < aabbcce3cc >
├ < Xe2AA > ├ < e2XAA > ├ < Xe3AA > ├ <Xe4AA > ├ <XAe3A >
7
Máquinas de Turing Reconocedoras
Cadena aceptada por MT
Una cadena A* es aceptada por MT = <E, A , C, , e0, B, F> sí y sólo sí
e0 |⎯
* a e a
1 f 2 |⎯
* MT empezando en e0 con la cabeza lectora
apuntando al primer símbolo de , luego de varias
transiciones termina de leer toda la cadena , y
llega a un estado ef F; en la cinta pueden quedar
las cadenas a1, a2 C* con la cabeza lectora
apuntando al primer símbolo de a2
L(MT) = { * a e a y A* y e F y a , a C* }
/ e0 |⎯ 1 f 2 f 1 2
Ejemplo
L = { a2k b gp cn dn / p > 0, n ≥ 0 y k >n}
C1 a a a a b g c d
C2
Posible estrategia:
- Copiar ak en C2 (cada dos a copiar una)
- Leer b
- Leer gp
- Por cada c en C1 retroceder una a en C2. Al llegar a d, debe haber a en C2
- Por cada d en C1 avanzar una a en C2. Se debe llegar a blanco en C1 y C2
Ciencias de la Computación I - Filminas de Clase – Facultad Cs. Exactas – UNCPBA - 2021
8
Ejemplo
L = { a2k b gp cn dn / p > 0, n ≥ 0, y k >n}
g,B/<g,D><B,N> c,A/<c,D><A,I>
B,B/<B,N><B,N>
e7
e2
B,B/<B,N><B,N>
MT=<{e0, e1, e2, e3 , e4, e5 , e6, e7}, {a, b, g. c. d}, {X, A. B, a, b, g, c, d}, , e0, B, {e7}>