Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Diciembre de 2019
ÍNDICE GENERAL
ii modelos de calculo
3 funciones recursivas primitivas 23
3.1 Definiciones . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.1.1 Aridad . . . . . . . . . . . . . . . . . . . . . . . . 23
3.1.2 Función numérica . . . . . . . . . . . . . . . . . 23
3.1.3 Funciones base . . . . . . . . . . . . . . . . . . . 23
3.1.4 Operadores . . . . . . . . . . . . . . . . . . . . . 24
2
índice general 3
5.1.1 Lista . . . . . . . . . . . . . . . . . . . . . . . . . 43
5.1.2 Concatenación . . . . . . . . . . . . . . . . . . . . 43
5.1.3 Funciones de lista . . . . . . . . . . . . . . . . . . 44
5.1.4 Funciones base . . . . . . . . . . . . . . . . . . . 44
5.1.5 Operadores . . . . . . . . . . . . . . . . . . . . . 45
5.1.6 Definición inductiva . . . . . . . . . . . . . . . . 45
5.2 Ejemplos . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
5.2.1 Pasar a izquierda . . . . . . . . . . . . . . . . . . 46
5.2.2 Pasar a derecha . . . . . . . . . . . . . . . . . . . 46
5.2.3 Duplicar a izquierda . . . . . . . . . . . . . . . . 46
5.2.4 Duplicar a derecha . . . . . . . . . . . . . . . . . 46
5.2.5 Intercambiar extremos . . . . . . . . . . . . . . . 47
5.2.6 Predecesor izquierda . . . . . . . . . . . . . . . . 47
5.2.7 Predecesor natural izquierda . . . . . . . . . . . 47
5.2.8 Suma izquierda . . . . . . . . . . . . . . . . . . . 48
5.2.9 Suma izquierda persistente . . . . . . . . . . . . 48
5.2.10 Resta izquierda . . . . . . . . . . . . . . . . . . . 48
5.2.11 Resta izquierda persistente . . . . . . . . . . . . 49
5.2.12 Resta izquierda natural . . . . . . . . . . . . . . 49
5.2.13 Repetir izquierda . . . . . . . . . . . . . . . . . . 49
5.2.14 Naturales izquierda . . . . . . . . . . . . . . . . 49
5.2.15 Producto izquierda . . . . . . . . . . . . . . . . . 50
5.2.16 Exponencial izquierda . . . . . . . . . . . . . . . 50
5.2.17 Distinguidora del 0 . . . . . . . . . . . . . . . . . 51
5.2.18 Raíz x-esima izquierda . . . . . . . . . . . . . . . 51
5.3 Representación de FR mediante FRL . . . . . . . . . . . 51
5.3.1 Representabilidad . . . . . . . . . . . . . . . . . 51
5.3.2 Casos base . . . . . . . . . . . . . . . . . . . . . . 51
5.3.3 Composición . . . . . . . . . . . . . . . . . . . . 52
5.3.4 Recursión . . . . . . . . . . . . . . . . . . . . . . 52
5.3.5 Minimizacion . . . . . . . . . . . . . . . . . . . . 54
5.3.6 Conclusión . . . . . . . . . . . . . . . . . . . . . . 55
6.2.7 Potencia . . . . . . . . . . . . . . . . . . . . . . . 61
6.2.8 Clausuras de Kleene . . . . . . . . . . . . . . . . 61
6.3 Gramáticas . . . . . . . . . . . . . . . . . . . . . . . . . . 62
6.3.1 Definición . . . . . . . . . . . . . . . . . . . . . . 62
6.3.2 Derivación . . . . . . . . . . . . . . . . . . . . . . 62
6.3.3 Lenguajes generados . . . . . . . . . . . . . . . . 63
6.3.4 Gramáticas regulares . . . . . . . . . . . . . . . . 63
6.3.5 Gramáticas libres de contexto . . . . . . . . . . . 63
6.3.6 Gramáticas sensibles al contexto . . . . . . . . . 64
6.3.7 Gramáticas estructuradas por frases . . . . . . . 64
6.3.8 Relación entre gramáticas . . . . . . . . . . . . . 65
6.3.9 Tipos de lenguajes . . . . . . . . . . . . . . . . . 65
6.3.10 Ejemplos . . . . . . . . . . . . . . . . . . . . . . . 65
6.4 Expresiones regulares . . . . . . . . . . . . . . . . . . . 69
6.4.1 Definición . . . . . . . . . . . . . . . . . . . . . . 69
6.4.2 Lenguaje asociado . . . . . . . . . . . . . . . . . 69
6.4.3 Relación entre lenguajes asoc. a ER y L3 . . . . 69
6.4.4 Ejemplos . . . . . . . . . . . . . . . . . . . . . . . 70
7 teoría de autómatas 72
7.1 Autómatas finitos . . . . . . . . . . . . . . . . . . . . . . 72
7.1.1 Diagrama de transiciones . . . . . . . . . . . . . 72
7.1.2 Autómata de estado finito determinista . . . . . 73
7.1.3 Autómata de estado finito no determinista . . . 80
7.2 Autómatas de pila . . . . . . . . . . . . . . . . . . . . . . 84
7.2.1 Introducción . . . . . . . . . . . . . . . . . . . . . 84
7.2.2 Definición formal . . . . . . . . . . . . . . . . . . 85
7.2.3 Configuración . . . . . . . . . . . . . . . . . . . . 85
7.2.4 Relación entre configuraciones . . . . . . . . . . 85
7.2.5 Lenguaje aceptado . . . . . . . . . . . . . . . . . 86
7.2.6 Relación entre L3 y AC ( AP). . . . . . . . . . . . 86
7.2.7 Teorema del vaciado de pila . . . . . . . . . . . 86
7.2.8 Relación entre L2 y autómatas de pila . . . . . . 87
7.2.9 Lema de bombeo para autómatas de pila . . . . 88
7.2.10 Corolario . . . . . . . . . . . . . . . . . . . . . . . 88
7.2.11 Ejemplos . . . . . . . . . . . . . . . . . . . . . . . 88
7.3 Maquinas de Turing . . . . . . . . . . . . . . . . . . . . 91
7.3.1 Descripción . . . . . . . . . . . . . . . . . . . . . 91
7.3.2 Definicion formal . . . . . . . . . . . . . . . . . . 93
7.3.3 Maquinas elementales . . . . . . . . . . . . . . . 94
7.3.4 Composición . . . . . . . . . . . . . . . . . . . . 95
7.3.5 Diagramas de composición . . . . . . . . . . . . 95
7.3.6 Lenguajes recursivos y recursivamente enume-
rables . . . . . . . . . . . . . . . . . . . . . . . . . 96
7.3.7 Representación de FRL con MT . . . . . . . . . 96
7.3.8 Representación de MT con FR . . . . . . . . . . 99
7.3.9 Numerabilidad de maquinas de Turing . . . . . 102
7.3.10 Limite de lo calculable . . . . . . . . . . . . . . . 103
7.3.11 Modificaciones equivalentes . . . . . . . . . . . 104
7.3.12 Ejemplos . . . . . . . . . . . . . . . . . . . . . . . 104
Parte I
Georg Cantor.
1
PRINCIPIO DE INDUCCIÓN
1.1 definiciones
B ⊆ A.
Si f ∈ K ∧ a1 , . . . , an ∈ A entonces f ( a1 , . . . , an ) = a ∈ A .
7
1.2 demostraciones 8
ai ∈ B o bien,
Y Observacion
Notemos que el conjunto A tiene todos los elementos de U que
poseen una secuencia de formación.
Esta afirmación
puede demostrarse.
1.2 demostraciones
1.2.1 Pertenencia
λ, 0, 1 ∈ L.
a ∈ L ∧ b ∈ {0, 1} ⇒ bab ∈ L
1.2.2 No pertenencia
2.1 definiciones
x1 6 = x2 ⇒ f ( x1 ) 6 = f ( x2 ) (2.1)
o bien
f ( x1 ) = f ( x2 ) ⇒ x1 = x2 (2.2)
∀y ∈ Y ∃ x ∈ X/ f ( x ) = y (2.3)
10
2.1 definiciones 11
L Notacion
#A = #B. A ∼ B.
L Notacion
#A #B.
A menudo
simplificaremos la
notación y
Si ademas ninguna de las funciones inyectivas de A en B es sobre-
escribiremos A B.
yectiva entonces: #A ≺ #B.
2.2 teoremas
1. A es numerable.
2.2.3 Cardinalidad de N × N
1 1
f (1, j + 1) − f (1, j) = (1 + j ) ( j ) + 1 − ( j ) ( j − 1) + 1
2 2
(2.4)
1 1 2 1 2 1
= j+ j +1− j + j−1 = j
2 2 2 2
2.2 teoremas 13
2. ∀i, j ∈ N resulta
luego i + j es el menor numero natural n tal que f (i, j) < f (1, n).
1
i1 = f (i1 , j1 ) − (i1 + j1 − 2) (i1 + j1 − 1) =
2 (2.6)
1
= f (i2 , j2 ) − (i2 + j2 − 2) (i2 + j2 − 1) = i2
2
1
f (i, j) =( i + j − 2) ( i + j − 1) + i
2
1
= (k − 2) (k − 1) + n − f (1, k − 1) + 1
2
1 1
= ( k − 2) ( k − 1) + n − ( k − 2) ( k − 1) + 1 + 1
2 2
=n
(2.8)
2.2 teoremas 14
Y Observacion
Observemos una tabla de valores para comprender mejor esta
función:
f (i, j) 1 2 3 4 5 6
1 1 2 4 7 11 .
2 3 5 8 12 .
3 6 9 13 .
4 10 14 .
5 15 .
6 .
2.2.4 Corolario
Corolario 2.13. Nd ∼ N.
{ ai1 , ai2 , ai3 , . . .}. Observemos que podemos organizar los elementos
de la unión de acuerdo a la siguiente tabla:
Teorema 2.15. Para todo conjunto infinito A, resulta: #N =ℵ0 #A. La letra ℵ (aleph) es
la primera letra del
alfabeto hebreo
Demostración. Sea A un conjunto infinito:
Como A es infinito resulta A 6= ∅ ⇒ ∃ x1 ∈ A.
Como A es infinito resulta A 6= { x1 } ⇒ ∃ x2 ∈ A/x2 6= x1 .
Como A es infinito resulta A 6= { x1 , x2 } ⇒ ∃ x3 ∈ A/x3 6= x1 , x2 .
Como A es infinito resulta A 6= { x1 , x2 , x3 } ⇒ ∃ x4 ∈ A/x4 6= x1 , x2 , x3 .
De esta forma se puede construir una sucesión ( xn )n≥1 de elementos
de A tales que xi 6= x j si i 6= j.
Definimos f : N → A dada por f (i ) = xi para todo i ∈ N. Como f
es inyectiva resulta que ℵ0 #A.
2.3 ejemplos
2.3.1 Cadinalidad de Z
2.3.2 Cadinalidad de Q
Definimos:
g : F ( A, B) →P ( A) 1
F → g( F ) = F −1 ({1})
f : P ( A) →F ( A, B)
S → f (S) = χS
1 x∈ F −1 ({1}) 1 F(x) = 1
χ F−1 ({1}) ( x ) = = = F(x)
0 / F −1 ({1})
x∈ 0 F(x) = 0
(2.11)
2.3.4 Ejercicios
Pares ordenados
Solución 2.26. Puesto que X ∼ J1, nK sabemos que existe una función
biyectiva f : J1, nK → X. Sea g una función de X en N podemos
n
asignar a esta función el numero: ∏ π ( i ) g ◦ f (i ) . La función π (n)
i =1 devuelve el n-esimo
Como por cada función diferente obtenemos un numero distinto numero primo, es
decir:
concluimos que # { f / f : X → N} #N. π (1) = 2, π (2) =
El numero correspondiente a h es: 26 33 53 72 = 10.584.000. 3, π (3) = 5, . . .
2χ I ( p/q) 3sgn( p/q)+1 5| p| 7|q| 11sgn(r/s)+1 13|r| 17|s| 19χ I (r/s) (2.13)
El numero asignado a − 79 , 11 0 0 7 9 2 11 13 1
13 es 2 3 5 7 11 13 17 19 .
Imágenes monocromáticas
mn
2m 3n ∏ π (k + 2) f ( xij ) (2.14)
k =1
Partidas de ajedrez
8
rmblkans
7
opopopop
6
0Z0Z0Z0Z
5
Z0Z0Z0Z0
4
0Z0Z0Z0Z
3
Z0Z0Z0Z0
2
POPOPOPO
1
SNAQJBMR
a b c d e f g h
8
rmbZkans
7
opopZpop
6
0Z0Z0Z0Z
5
Z0Z0o0Z0
4
0Z0Z0ZPl
3
Z0Z0ZPZ0
2
POPOPZ0O
1
SNAQJBMR
a b c d e f g h
2n
∏ π (i)g◦ f st(X ) π (i + 1)g◦snd(X )
i i
(2.15)
i =1
MODELOS DE CALCULO
Richard Dedekind.
3
F U N C I O N E S R E C U R S I VA S P R I M I T I VA S
3.1 definiciones
3.1.1 Aridad
L Notacion
f (n)
23
3.1 definiciones 24
3.1.4 Operadores
h : Nk → N
h i
X k → h X k = f g1 X k , g2 X k , . . . , g n X k
(3.1)
y que notaremos h = Φ ( f , g1 , g2 , . . . , gn ).
El operador de recursión R que dadas dos funciones numéri-
cas g(k) y h(k+2) construye una nueva función numérica f (k+1)
definida como
g Xk y=0
f y, X k = (3.2)
h y − 1, X k , f y − 1, X k
y>0
y notaremos f = R( g, h).
Definición 3.6. Dada una función f (1) definimos F (2) llamada potencia
de f como:
x y=0
F (y, x ) = (3.3)
f [ F (y − 1, x )] y>0
3.2 ejemplos 25
L Notacion
F (y, x ) = f y ( x )
3.2 ejemplos
c (1) ( y ) =
0 y=0
Ejemplo 3.7. La función Pd es FRP pues: Observemos que la
y−1 y>0 notación Pd
c nos
indica que la función
c (1) (0) = 0 = c(0) ().
1. Pd devuelve un
h i resultado inclusive
c (1) (y) = y − 1 = p(2) y − 1, Pd
2. Pd c (1) ( y − 1 ) . para valores como 0
1
por lo que Pdc (1) = R c (0) , p (2) .
1
3.2.2 Suma
0 x<y
Ejemplo 3.9. La función dˆ(2) (y, x ) = que notaremos
x−y x≥y
como x −̇y es FRP pues:
(1)
1. dˆ(2) (0, x ) = x −̇0 = x = p1 ( x ).
c (1) dˆ(2) (y − 1, x ) =
h i
dˆ(2) (y, x ) = x −̇y = x −̇ (y − 1) − 1 = Pd
2.
c (1) p3 y − 1, x, dˆ(2) (y − 1, x ) .
n h io
= Pd
3.2 ejemplos 26
(1) c (1) , p (3) .
luego dˆ(2) = R p1 , Φ Pd 3
3.2.4 Producto
3.2.5 Factorial
(1)
0 y 6= 0
Ejemplo 3.13. La función D0 (y) = es FRP pues:
1 y=0
h i
(1)
1. D0 (0) = 1 = 0 + 1 = s(1) c(0) () .
h i
(1) (1)
2. D0 (y) = 0 = c(2) y − 1, D0 (y − 1) .
3.2 ejemplos 27
h i
(1)
y en consecuencia D0 = R Φ s(1) , c(0) , c(2) . También puede
definirse
como:
d (2) , c (1) , p (1)
Φ Exp 1
3.2.8 Signo
1 y 6= 0
Ejemplo 3.14. La función Sgn(1) (y) = es FRP pues:
0 y=0
x x≥y
Ejemplo 3.15. La función Max (2) (y, x ) = es FRP.
y y≥x
3.2.10 Distancia
3.2.11 Equivalencia
1 x=y
Ejemplo 3.17. La función E(2) ( x, y) = es FRP pues:
0 x 6= y
h i
(1) (1)
E(2) ( x, y) = D0 k(2) ( x, y) por lo que E(2) = Φ D0 , k(2) .
3.3 conjuntos 28
3.2.12 Inequivalencia
0 x=y
Ejemplo 3.18. La función ¬ E ( x, y) = es FRP pues:
1 x 6= y
h i
(1) (1)
¬ E ( x, y) = D0 E(2) ( x, y) por lo que ¬ E(2) = Φ D0 , E(2) .
1 x≤y
Ejemplo 3.19. La función Leq(2) (y, x ) = es FRP pues:
x>y 0
h i
(1) (1)
Leq(2) (y, x ) = D0 dˆ(2) (y, x ) = Φ D0 , dˆ(2) .
3.2.14 Mayor
1 x>y
Ejemplo 3.20. La función Mayor (2) ( x, y) = es FRP pues:
0 x≤y
(1)
Mayor (2) = Φ D0 , Leq(2) .
3.2.15 Sumatoria
y
Ejemplo 3.21. Sea f (2) ∈ FRP, la función F (2) (y, x ) = ∑ f (z, x ) es
z =0
FRP pues:
0
1. F (2) (0, x ) = ∑ f (z, x ) = f (2) (0, x ).
z =0
y y −1
F (2) (y, x ) = ∑ f (z, x ) = ∑ f (z, x ) + f (2) (y, x ) .
2. z =0 z =0
| {z }
(3)
p3
h i n h io
(1) (3) (3) (3)
luego F (2) (y, x ) = R Φ f (2) , c(1) , p1 , Φ Σ(2) , p3 , Φ f (2) , Φ s(1) , p1 , p2 .
3.3 conjuntos
3.4 teoremas
(1) (1) (1)
es decir χ A = Φ E(2) , p1 , f n .
Supongamos que es valido para k = m, es decir que todo subcon-
junto unitario de Nm es CRP. Queremos ver si todo subconjunto
unitario de Nm+1 es CRP.
Sean B = {( a1 , a2 , . . . , am , n)} y A = {( a1 , a2 , . . . , am )}. Por hipó-
(m)
tesis inductiva χ A es FRP. Luego:
n h i h io
( m +1) ( m +1) ( m +1) ( m +1) ( m +1)
χB = Π χ A p1 , . . . , pm , E p m +1 , f n
(3.5)
4.1 introducción
Definición 4.2. Decimos que una función f (1) mayora a otra función
g(n) si:
∀( x1 , . . . , xn ) ∈ dom ( g) : g ( x1 , . . . , xn ) ≤ f (máx { x1 , . . . , xn })
(4.1)
L Notacion
f (1) ↑ g ( n ) .
31
4.1 introducción 32
4.2 teoremas
hipótesis.
• Caso inductivo y = n: Supongamos f n, X k es total,
luego:
f n + 1, X k = h n, X k , f n, X k (4.2)
| {z }
total por H.I.
h i h n oi
(n) (n) (n) (n)
g ( X ) = C h1 ( X ) , . . . , hm ( X ) ≤ f k máx h1 ( X ) , . . . , hm ( X )
(4.3)
h n oi
(n) (n)
f k máx h1 ( X ) , . . . , hm ( X ) ≤ f k [ f k (máx [ X ])]
(4.4)
4.2 teoremas 35
máx( X )+2
g ( X ) ≤ f k [ f k (máx [ X ])] ≤ f k [máx ( X )] = f k+1 [máx ( X )]
(4.5)
h i
2. Recursión: Sea g(n+1) = R B(n) , h(n+2) , veremos entonces
que f k ↑ B ∧ f k ↑ h ⇒ f k+1 ↑ g(n) .
Por hipótesis g (0, X ) = B ( X ) ≤ f k [máx ( X )] (**) y ademas:
( y +1)
Puede demostrarse por inducción que g (y, X ) ≤ f k (máx [ X ]).
Finalmente:
ACK ( x ) + 1 ≤ f m ( x ) ⇐⇒ f x ( x ) + 1 ≤ f m ( x ) (4.10)
4.3 definiciones
Definición 4.11. Dada h(n+1) , decimos que g(n) se construye por mini-
mizacion de h (y lo notaremos g = M [h]) cuando g se define del modo
siguiente:
def g(X):
t = 0
while (h(t,X) != 0):
t += 1
return t
4.4 ejemplos 37
4.4 ejemplos
4.4.1 Predecesor
4.4.2 Diferencia
4.4.3 División
4.4.4 Logaritmo
.
• ..
Log (1, 0) = µt [h (t, 1, 0) = 0]:
n o
• t = 0: h (0, 1, 0) = ¬ E Expd (1, 0) + 0 + 1, 0 = ¬ E {1 + 0 + 1, 0} = 1.
n o
• t = 1: h (1, 1, 0) = ¬ E Expd (1, 1) + 0 + 1, 0 = ¬ E {1 + 0 + 1, 0} = 1.
.
• ..
Log (10, 100) = µt [h (t, 10, 100) = 0]:
n o
• t = 0: h (0, 10, 100) = ¬ E Expd (10, 0) + 0 + 0, 100 = ¬ E {1 + 0 + 0, 100} = 1.
n o
• t = 1: h (1, 10, 100) = ¬ E Expd (10, 1) + 0 + 0, 100 = ¬ E {10 + 0 + 0, 100} = 1.
n o
• t = 2 : h (2, 10, 100) = ¬ E Exp
d (10, 2) + 0 + 0, 100 = ¬ E {100 + 0, 100} = 0.
.
• ..
1 Notense los términos D0 [ x ] y D1 [ x ] que logran «indefinir» la función para las bases
correspondientes
4.4 ejemplos 40
√
Ejemplo 4.17. La función numérica Sqrt ( x ) = x solo esta definida
√
si existe t tal que t = x ⇐⇒ t2 = x. Buscamos entonces Sqrt ( x ) =
µt [h (t, x ) = 0]. Sea entonces h (t, x, y) = ¬ E {Π [t, t] , x }.
√
Ejemplo 4.18. Definiremos la función numérica FSq ( x ) = b x c. Bus-
√
camos un t tal que t ≤ x < t + 1 ⇐⇒ t2 ≤ x < (t + 1)2 . Sea
entonces h (t, x ) = Leq {Π [t + 1, t + 1] , x }.
4.4.8 Resto
5.1 definiciones
5.1.1 Lista
5.1.2 Concatenación
43
5.1 definiciones 44
L Notacion
Notaremos [ X, Y ] a la concatenación de las listas X e Y.
Y Observacion
Borrar a izquierda: i [ x1 , x2 , . . . , xk ] = [ x2 , . . . , xk ].
Sucesor a izquierda: Si [ x1 , x2 , . . . , xk ] = [ x1 + 1, x2 , . . . , xk ].
Y Observacion
dom (0i ) = dom (0d ) = L.
5.1.5 Operadores
L Notacion
H = FG definida como HX = G [ FX ].
Y Observacion
• Notese que contrariamente a lo usual, primero se
aplica la función F y al resultado se aplica la función
G.
Y Observacion
h F i esta definida sobre listas de la forma [ x, Y, z], es decir,
que tienen al menos dos elementos. Mas precisamente
X ∈ dom (h F i) si en la sucesión { X, FX, FFX, FFFX, . . .}
existe una lista cuyo primer y ultimo elemento son iguales.
5.2 ejemplos
[ X, y]
0i [0, X, y]
h Si i [y, X, y]
d [y, X ]
[y, X ]
0d [y, X, 0]
h Sd i [y, X, y]
/ [y, y, X ]
[ x, Y, z]
. [Y, z, x ]
0i [0, Y, z, x ]
/ [ x, 0, Y, z]
0i [0, x, 0, Y, z]
hSi . .Si / /i [z, x, z, Y, z]
d [z, x, z, Y ]
i [ x, z, Y ]
. [z, Y, x ]
[ x, Y ]
0d [ x, Y, 0]
0d [ x, Y, 0, 0]
Sd [ x, Y, 0, 1]
hSd / Sd .i [ x, Y, x − 1, x ]
i [Y, x − 1, x ]
d [Y, x − 1]
/ [ x − 1, Y ]
[ x, Y ]
0d [ x, Y, 0]
Sd [ x, Y, 1]
Si [ x + 1, Y, 1]
h Pi d Di .i [ x, Y, x ]
d [ x, Y ]
Pdi [ x − 1, Y ]
5.2 ejemplos 48
[ x, y, Z ]
. [y, Z, x ]
0d [y, Z, x, 0]
hSd / Sd .i [y, Z, x + y, y]
i [ Z, x + y, y]
d [ Z, x + y]
/ [ x + y, Z ]
[ x, y, Z ]
Di . 2 [y, Z, x, x ]
Di ↔ [ x, y, Z, x, y]
Σi [ x + y, Z, x, y]
↔ [y, Z, x, x + y]
/ [ x + y, y, Z, x ]
↔ [ x, y, Z, x + y]
/ [ x + y, x, y, Z ]
[ x, y, Z ]
. [y, Z, x ]
. [ Z, x, y]
0i [0, Z, x, y]
h Pdd / Pdd .i [0, Z, x − y, 0]
i [ Z, x − y, 0]
d [ Z, x − y]
/ [ x − y, Z ]
5.2 ejemplos 49
ff [ x, y, Z ] = [ x − y, x, y, Z ] es igual a
Ejemplo 5.17. La función di i
2
Di . Di ↔ di f i ↔ / ↔ /.
[ x, y, Z ]
. [y, Z, x ]
0i [0, y, Z, x ]
2i y, . . . , y, Z, 0
| {z }
x veces
d y, . . . , y, Z
| {z }
x veces
[ x, Y ]
Di [ x, x, Y ]
. [ x, Y, x ]
0i [0, x, Y, x ]
hi Di Pdi 0i Pdd i [0, 0, 1, 2, . . . , x, Y, 0]
2i [1, 2, . . . , x, Y, 0]
d [1, 2, . . . , x, Y ]
D E
Ejemplo 5.21. La función Πi [ x, y, Z ] = [ xy, Z ] es igual a . Di 0i Si . Σ
e i . i /2 i di f i d .
Observemos una traza:
[ x, y, Z ]
. [y, Z, x ]
Di [y, y, Z, x ]
D
0i
E [0, y, y, Z, x ]
S i . Σ i . i / 2
e [ x, xy + y, y, Z, x ]
i [ xy + y, y, Z, x ]
di f i [ xy, Z, x ]
d [ xy, Z ]
y
Ejemplo 5.22.D La función EExpi [ x, y, Z ] = [ x , Z ] puede definirse como
. ↔ 0i S i 0i S i . Π
e i . i /2 i d . i /1 . Observemos una traza:
[ x, y, Z ]
.↔ [ x, Z, y]
0i S i [1, x, Z, y]
D
0i
E [0, 1, x, Z, y]
Si . Π
e i . i / 2 [y, x y , x, Z, y]
i [ x y , x, Z, y]
d [ x y , x, Z ]
. [ x, Z, x y ]
i [ Z, x y ]
/ [ xy , Z]
√ D E
Ejemplo 5.24. La función Radi [ x, y, Z ] = x y, Z es igual a . ↔ 0i Exp g i d . i / .
g i Si Exp
i i
Observemos una traza:
[ x, y, Z ]
.↔ [ x, Z, y]
0i [0, x, Z, y]
D E √
Exp
g i Si Exp
i
g
i y, x y, x, Z, y
√
i x y, x, Z, y
√
d x y, x, Z
√
. x, Z, x y
√
i Z, x y
√
/ x y, Z
5.3.1 Representabilidad
Teorema 5.26. Para toda función recursiva base g existe una función de
listas Fg que la representa.
5.3 representación de FR mediante FRL 52
Demostración.
5.3.3 Composición
(k) n
n o
Teorema 5.27. Dadas las funciones recursivas f (n) y gi con repre-
n on i =1
(k)
sentaciones en FRL dadas por Ff y Fgi , la composición h = Φ ( f , g1 , . . . , gn )
i =1
también tiene representación en funciones de listas.
[ X, Y ]
Fg1 [ g1 ( X ), X, Y ]
. [ X, Y, g1 ( X )]
Fg2 [ g2 ( X ), X, Y, g1 ( X )]
. [ X, Y, g1 ( X ) , g2 ( X )]
. . . Fgn [ Gn ( X ), X, Y, g1 ( X ) , g2 ( X ) , . . ., gn−1 ( X )]
/ n −1 [ g1 ( X ) , g2 ( X ) , . . ., gn ( X ), X, Y ]
Ff [ f { g1 ( X ) , . . . , gn ( X )}, g1 ( X ) , . . . , gn ( X ) , X, Y ]
= [h ( X ), g1 ( X ) , . . . , gn ( X ) , X, Y ]
. [ g1 ( X ) , . . . , gn ( X ) , X, Y, h ( X )]
in [ X, Y, h ( X )]
/ [h ( X ) , X, Y ]
5.3.4 Recursión
Teorema 5.28. Sean las funciones recursivas g(k) y h(k+2) con representa-
ciones en FRL dadas por Fg y Fh , entonces la función f (k+1) = R ( g, h)
también tiene representación en FRL.
5.3 representación de FR mediante FRL 53
[y, X, Y ]
. [ X, Y, y]
Fg [ g ( X ), X, Y, y]
0i [0, g ( X ) , X, Y, y]
[0, f (0, X ), X, Y, y]
[0, f (0, X ) , X, Y, y]
h. . .i [0, f (0, X ) , X, Y, 0]
i [ f (0, X ) , X, Y, 0]
↔ [0, X, Y, f (0, X )]
/ [ f (y, X ) , y, X, Y ]
2. y 6= 0:
[0, f (0, X ) , X, Y, y]
h. [ f (0, X ) , X, Y, y, 0]
↔ [0, X, Y, y, f (0, X )]
/ [ f (0, X ), 0, X, Y, y]
Fh [h ( f (0, X ) , 0, X ), f (0, X ) , 0, X, Y, y]
(∗) [ f (1, X ), f (0, X ) , 0, X, Y, y]
. [ f (0, X ) , 0, X, Y, y, f (1, X )]
i [0, X, Y, y, f (1, X )]
Si [1, X, Y, y, f (1, X )]
↔ [ f (1, X ), X, Y, y, 1]
/i [1, f (1, X ) , X, Y, y]
[y, f (y, X ) , X, Y, y]
i [ f (y, X ) , X, Y, y]
↔ [y, X, Y, f (y, X )]
/ [ f (y, X ), y, X, Y ]
5.3 representación de FR mediante FRL 54
5.3.5 Minimizacion
[ X, Y ]
0i [0, X, Y ]
Fh [h (0, X ), 0, X, Y ]
0d [h (0, X ) , 0, X, Y, 0]
[h (0, X ) , 0, X, Y, 0]
h. . .i [h (0, X ) , 0, X, Y, 0]
i [h (0, X ) , X, Y, 0]
d [h (0, X ) , X, Y ]
[µt (h (t, X ) = 0) , X, Y ]
[ g ( X ) , X, Y ]
2. h (0, X ) 6= 0:
[h (0, X ) , 0, X, Y, 0]
hi [0, X, Y, 0]
Si [1, X, Y, 0]
Fh i [h (1, X ), 1, X, Y, 0]
Vemos que en general, el efecto de la repetición es transformar
[h (t, X ) , t, X, Y, 0] en [h (t + 1, X ) , t + 1, X, Y, 0]. La repetición se
aplicara un numero k de veces hasta que h (k, X ) = 0 y a partir
de ahí aplicando el ultimo bloque de funciones:
[h (k, X ) , k, X, Y, 0]
[0, k, X, Y, 0]
i [k, X, Y, 0]
d [k, X, Y ]
[µt (h (t, X ) = 0) , X, Y ]
[ g ( X ) , X, Y ]
5.3 representación de FR mediante FRL 55
5.3.6 Conclusión
L E N G UA J E S F O R M A L E S
Gottlob Frege.
6
G R A M ÁT I C A S Y E X P R E S I O N E S R E G U L A R E S
6.1 definiciones
6.1.1 Alfabeto
L Notacion
Notaremos a los alfabetos con la letra sigma, por ejemplo: Σ =
{ l1 , l2 , . . . , l k } .
6.1.2 Cadena
L Notacion
Dada la palabra p : J1, nK → Σ por simplicidad de notación escri-
biremos la cadena p como p = p (1) p (2) . . . p (n) = l1 l2 . . . ln .
57
6.1 definiciones 58
n ≥0 n ≥1
decir que Σ∗ es el conjunto de todas las palabras sobre un alfabeto Σ,
incluyendo la palabra vacía.
Y Observacion
Dado un conjunto A = ∅ resulta A∗ = {λ}.
6.1.4 Concatenación
Y Observacion
En particular pλ = λp = p.
λR = λ
R
(6.3)
( pc) = cp R
6.1.7 Subcadenas
6.2 lenguajes
6.2.1 Definición
Y Observacion
Para cualquier alfabeto, sabemos que #Σ∗ = ℵ0 y en consecuen-
cia #L = #P (Σ∗ ) = ℵ1 .
6.2.2 Unión
L1 ∪ L2 = { p ∈ Σ∗ /p ∈ L1 ∨ p ∈ L2 } (6.4)
6.2 lenguajes 60
6.2.3 Intersección
L1 ∩ L2 = { p ∈ Σ∗ /p ∈ L1 ∧ p ∈ L2 } (6.5)
6.2.4 Diferencia
L1 − L2 = { p ∈ Σ∗ /p ∈ L1 ∧ p ∈
/ L2 } (6.6)
6.2.5 Complemento
L̄ = Σ∗ − L (6.7)
6.2.6 Concatenación
L1 L2 = { p ∈ Σ∗ /∃q ∈ L1 , ∃r ∈ L2 , p = qr } (6.8)
Y Observacion
L∅ = ∅L = ∅.
L {λ} = {λ} L = L.
En general L1 L2 6= L2 L1 .
6.2 lenguajes 61
6.2.7 Potencia
L0 = {λ}
(6.9)
L n +1 = Ln L
L ∗ = L0 ∪ L1 ∪ L2 ∪ · · · ∪ L n ∪ · · · = { λ } ∪ L ∪ L2 ∪ · · · ∪ L n ∪ · · ·
(6.10)
L+ = L1 ∪ L2 ∪ · · · ∪ Ln ∪ · · · = L ∪ L2 ∪ · · · ∪ Ln ∪ · · · (6.11)
Y Observacion
Tanto L∗ como L+ contienen a L.
∅ ∗ = { λ }.
L+ = L∗ L.
( L∗ )∗ = L∗ .
L∗ L∗ = L∗ .
6.3 gramáticas
6.3.1 Definición
Y Observacion
no terminales y terminales
que contienen al menos un no
∗ ∗
terminal. Dado que λ ∈ / ( N ∪ T ) − T no puede haber
reglas del tipo (λ, β).
6.3.2 Derivación
L Notacion
γαδ ⇒ γβδ.
L Notacion
α1 ⇒ ∗ α n .
6.3 gramáticas 63
L ( G ) = { p ∈ T ∗ /σ ⇒∗ p} (6.12)
Y Observacion
Toda gramática regular derecha puede ser convertida en una
gramática regular izquierda (y viceversa). Algunas definiciones
permiten reemplazar a por una cadena de uno o mas terminales,
siendo ambas definiciones equivalentes.
Y Observacion
Estas gramáticas reciben ese nombre debido a que en el
lado izquierdo el no terminal aparece solo, por lo que la
regla se puede aplicar sin importar el contexto en el que
aparece dicho no terminal, al contrario de reglas de la
forma γNδ → γαδ donde el no terminal N solo se puede
reemplazar por α cuando se encuentre en el contexto de
γ y δ.
Y Observacion
Quizás a simple vista podría parecer que las gramáticas sensi-
bles al contexto son mas restrictivas que las libre de contexto,
sin embargo basta tomar α = λ = β para ver que las sensibles
al contexto abarcan a las libres de contexto.
Y Observacion
G3 ⊂ G2 ⊂ G1 ⊂ G0 (6.13)
6.3.10 Ejemplos
Identificación de gramáticas
1. σ → bσ. 4. A → aσ.
2. σ → aA. 5. A → bA.
3. σ → b. 6. A → a.
σ ⇒(1) bσ ⇒(1) ⇒ bbσ ⇒(2) bbaA ⇒(5) bbabA ⇒(5) bbabbA ⇒(4)
bbabbaσ ⇒(3) bbabbab
(6.14)
1. σ → BAB. 5. A → AB.
2. σ → ABA.
6. B → b.
3. A → aA.
4. A → ab. 7. B → BA.
σ ⇒(2) ABA ⇒(5) ⇒ ABAB ⇒(4) abBAB ⇒(6) abbAB ⇒(4) abbabB ⇒(6) abbabb
(6.15)
1. σ → A. 5. Aa → ABa.
2. σ → AAB.
6. Bb → ABb.
3. A → aa.
4. B → b. 7. AB → ABB.
σ ⇒(2) AAB ⇒(3) ⇒ AaaB ⇒(5) ABaaB ⇒(4) ABaab ⇒(4) Abaab ⇒(3) aabaab
(6.16)
1. σ → AB. 4. B → Bb.
2. A → aA. 5. B → b.
3. A → a. 6. AB → BA.
σ ⇒(1) AB ⇒(2) ⇒ aAB ⇒(4) aABb ⇒(6) aBAb ⇒(5) abAb ⇒(3) abab
(6.17)
Generación de lenguajes
gramáticas regulares
σ → a. A → aA. A → a.
σ → aA. A → bA. A → b.
σ → aA. σ → bB.
A → b. B → bB.
A → bA. B → aA.
σ → λ. A → aA. A → bB.
σ → a. A → λ. B → bB.
σ → aA. A → b. B → b.
σ → aσb.
σ → λ.
6.3 gramáticas 68
σ → λ. A → λ.
σ → aAbC. C → λ.
A → aAb. C → cC.
σ → aA. σ → bB.
A → aA. B → aB.
A → bA. B → bB.
A → a. B → b.
σ → aAB. A → B. B → bB.
A → aAB. B → b.
σ → a. IBIC → bPBIC.
6.4.1 Definición
∅ ∈ ER.
x ∈ Σ ⇒ x ∈ ER.
p, q ∈ ER ⇒ ( p ∪ q) ∈ ER.
p, q ∈ ER ⇒ ( p ◦ q) ∈ ER.
p ∈ ER ⇒ ( p∗ ) ∈ ER.
L Notacion
Notese que una expresión regular es una cadena de símbolos,
no un lenguaje.
L (∅) = ∅.
x ∈ ER ∧ x ∈ Σ ⇒ L ( x ) = { x }.
p, q ∈ ER ⇒ L ( p ∪ q) = L ( p) ∪ L (q).
p, q ∈ ER ⇒ L ( p ◦ q) = L ( p) ◦ L (q).
p ∈ ER ⇒ L ( p∗ ) = L ( p)∗ .
6.4.4 Ejemplos
( x ∗ ∪ y∗ ) = {αn /α = x ∨ α = y, n ∈ N0 }.
[( x ◦ x ) ∪ z] = { xx, z}.
[(z ∪ y) ∪ x ] = {z, y, x }.
(z ∪ y)∗ ◦ x = {α1 . . . αn x/αi ∈ {z, y} , n ∈ N0 }.
[( x ◦ x ∗ ) ◦ y ◦ y∗ ] = { x n ym /n, m ∈ N}.
6.4 expresiones regulares 71
[( x ◦ x ∗ ) ∪ (y ◦ y∗ )] = {αn /α = x ∨ α = y, n ∈ N}.
[( x ∗ ◦ y∗ ) ◦ z∗ ] = { x n ym z p /n, m, p ∈ N0 }.
[( x ∪ y) ◦ ( x ∪ ∅)] y ( x ∪ y) ◦ ( x ◦ y)∗ : x ∪ y ∪ ( x ◦ x ) ∪ (y ◦ x ).
L letra
letra
inicio I digito
digito
D letra
digito
72
7.1 autómatas finitos 73
Definición
σ ∈ S es el estado inicial.
Y Observacion
Notese que cada estado del diagrama de transiciones de un
autómata de estado finito determinista solo debe tener un arco
que salga para cada símbolo del alfabeto; de lo contrario, un
autómata que llega a ese estado se enfrentara a una elección
de cual debe ser el arco a seguir. Ademas, dicho diagrama
deberá estar completamente definido, es decir, debe existir por
lo menos un arco para cada símbolo del alfabeto; de lo contrario,
un autómata que llega a ese estado puede enfrentarse a una
situación donde no puede aplicar ninguna transición.
Estos requisitos están reflejados en la definición formal primero
porque f es una función y, segundo porque su dominio es S × Σ.
1. σ0 = σ.
2. σi = f (σi−1 , p (i )) para i = 1, . . . , n.
3. σn ∈ Ac.
7.1 autómatas finitos 74
Y Observacion
La palabra vacía es aceptada si y solo si el estado inicial es de
aceptación (σ ∈ Ac).
F (s, λ) = s.
F (s, p) = f [ F (s, c) , l ].
Equivalencia de autómatas
L Notacion
A1 ≡ A2 .
σ ⇒∗ l1 l2 . . . ln ⇐⇒ F (σ0 , l1 , . . . , ln ) ∈ Ac (7.3)
Y Observacion
Este teorema nos indica que los AEF no sirven para reconocer
lenguajes independientes de contexto.
x x
x x
x x
x x y y
Y Observacion
Una consecuencia de este teorema es que los AEF no sirven
como analizadores léxicos de expresiones aritméticas que con-
tienen paréntesis, pues el autómata debería aceptar cadenas de
la forma (n )n pero de ser asi también aceptaría por ejemplo
((n )n que es incorrecta.
Ejemplos
f (σ3 , 0) = σ3 , f (σ3 , 1) = σ2 .
1 0
0
σ2 σ3
1
1
inicio σ1 1
0
σ4 0
7.1 autómatas finitos 77
1 0
0
0
inicio σ1 σ2 σ3 1
1
0
σ2 σ3 0
0
inicio σ1 0 1
1
1
1
σ4 σ5
1
σ3 1
1 1
0 0
inicio σ0 σ1 σ4
1 1
0 0
σ2 0
7.1 autómatas finitos 78
c σ5 a
c b a a
a
b b b
inicio σ1 σ2 σ3 σ4 c
a
c c
a σ6 b
b
σ3
a a b
b a
b
inicio σ1 σ2 c σ5 b
a
c c
c b
a
σ4 c
a
b
c
inicio σ1 σ2 c
a
b
7.1 autómatas finitos 79
a b a
inicio σ1 σ2 σ3 σ4
b a b a
a b a
inicio σ1 σ2 σ3 σ4
b a b a
1
σ2 σ3 1
1 0 0
inicio σ1 σ4 1
0 0
1 1 1
inicio σ1 σ2 σ3 σ4
0
0
0 0
σ5 1
1 0
7.1 autómatas finitos 80
b
a σ2 σ4
a
a
A b
a
b
a a
b
b σ3 σ5 b
inicio σ0 σ1
a
a
σ6 σ8 a
b a
b
B b a
b
b
a
b σ7 σ9
Definición formal
σ ∈ S es el estado inicial.
Y Observacion
Como hemos cambiado una relación por una función, ahora al
leer un nuevo símbolo se podrán seguir múltiples caminos.
Ademas no es necesario que desde cada estado, se puedan leer
todas las letras del alfabeto.
p = λ ∈ AC ( A) ⇐⇒ σ ∈ Ac.
Dado que toda función es a su vez una relación, resulta que todo
AEF es también un AEFND, por lo que:
Puesto que toda función es ademas relación sabíamos que AC ( AEF ) ⊆ AC ( AEFND )
y por el teorema de Kleene-Rabin-Scott sabemos que AC ( AEFND ) ⊆
AC ( AEF ) por lo que AC ( AEF ) = AC ( AEFND ).
Ademas también probamos que dado un AEF existe una gramática
regular que genera el mismo lenguaje. En síntesis: AC ( AEFND ) = AC ( AEF ) ⊆ L3 .
A continuación veremos que estos tres conjuntos son iguales.
Teorema 7.25. Para todo lenguaje regular, existe un AEFND que lo acepta.
Y Observacion
Como AC ( AEFND ) = AC ( AEF ) ⊆ L3 y acabamos de probar
L3 ⊆ AC ( AEFND ) resulta: AC ( AEF ) = AC ( AEFND ) = L3 .
Ejemplos
a a
p a q a
inicio r
b b
inicio { p} { p, q}
b
b a
a
b { p, r } { p, q, r } a
b
7.2 autómatas de pila 84
7.2.1 Introducción
Los autómatas de pila son autómatas que cuentan con las mismas
características que un AEFND pero ademas disponen de una pila de
memoria en la que podrán leer o escribir símbolos, de forma de poder
saber en cada momento si el autómata ya realizo alguna transición en
el pasado.
Durante cada transición el autómata ejecuta la siguiente secuencia:
σ es el estado actual.
l, α; β
σ τ
Y Observacion
Notese que las transiciones representada por (σ, l, λ; λ, τ ) son
las que realiza un AEFND. Por lo tanto los AEFND son un
caso particular de AP y en consecuencia los lenguajes regulares
son un subconjunto de los lenguajes aceptados por AP, es decir:
L3 ⊆ AC ( AP).
σ ∈ S es el estado inicial.
7.2.3 Configuración
Y Observacion
No necesariamente se llegara a un estado de aceptación luego
de leer el ultimo carácter de una palabra pues a continuación el
autómata podría realizar transiciones de la forma (σ, λ, α; β, τ )
y llegar luego al estado de aceptación.
x, λ; x y, x; λ
λ, λ; # y, x; λ λ, #; λ
inicio σ0 σ1 σ2 σ3
Teorema 7.32.
1. Sea G una gramática independiente de contexto entonces existe un
autómata de pila A tal que L ( G ) = AC ( A).
2. Sea A un autómata de pila entonces existe una gramática independiente
del contexto G tal que L ( G ) = AC ( A).
Es decir L2 = AC ( AP).
Demostración.
1. Consultar bibliografía [2], página 85.
2. Consultar bibliografía [2], página 90.
7.2 autómatas de pila 88
Y Observacion
De todo lo que hemos visto hasta ahora sabemos que:
7.2.10 Corolario
7.2.11 Ejemplos
Autómatas de pila
x, λ; x y, x; λ
y, x; λ
inicio σ0 σ1
7.2 autómatas de pila 89
y vacia la pila
x, λ; x y, x; λ λ, x; λ
λ, λ; # y, x; λ λ, λ; λ λ, #; λ
inicio s σ0 σ1 p q
λ, y; λ
b, λ; λ
a, λ; a
b, λ; λ
λ, λ; # a, λ; a b, λ; λ
inicio σ0 S A B
λ, #; λ
c, a; λ c, a; λ
c, a; λ C Q
λ, #; λ
y vacía la pila
a, λ; a b, λ; λ c, λ; λ
λ, λ; # a, λ; a b, λ; λ b, a; λ λ, #; λ
inicio σ0 S A B BB C
c, λ; λ
y vacia la pila
a, λ; a a, a; λ
λ, λ; # λ, λ; λ λ, #; λ
inicio σ0 S P Q
b, λ; b b, b; λ
7.2 autómatas de pila 90
b, a; λ
b, a; λ λ, a; λ
a, λ; a
λ, λ; # λ, λ; λ λ, #; λ
inicio σ0 S A B P Q
λ, λ; a
y vacia la pila
λ, a, a; a
λ;
a
a,
a, b; λ
#;
#
λ, λ; # λ, #; λ
inicio σ0 S Q
b, b; b b b, a; λ
;
λ ,λ
b, #; #
b, a; λ b, λ; b
λ, λ; # λ, #; λ
inicio σ0 σ1 σ1
a, b; λ a, λ; a
7.3 maquinas de turing 91
7.3.1 Descripción
L Notacion
Por convención lo notaremos q1 .
Otro de los estados se conoce como estado de parada; una vez que
la maquina llega a ese estado, terminan todos los cálculos. De esta
manera, el estado de parada de una maquina de Turing difiere de
los estados de aceptación de los autómatas de estados finito y los
autómatas de pila en que estos pueden continuar sus cálculos después
de llegar a un estado de aceptación, mientras que en una maquina de
Turing debe detenerse en el momento en que llegue a su estado de
parada.
7.3 maquinas de turing 92
L Notacion
Notaremos a este estado como q0 .
L Notacion
Notaremos a este símbolo como .
∈ Γ es el símbolo blanco.
q1 ∈ S es el estado inicial.
q0 ∈ S es el estado de parada.
D q1
, d, q0
• •, d, q0
Definición 7.44. Maquina «mover a la izquierda» (que notaremos I):
I q1
, i, q0
• •, i, q0
Definición 7.45. Maquina «blanco» (que notaremos ):
q1
, n, q0
• , n, q0
Definición 7.46. Maquina «punto» (que notaremos •):
• q1
•, n, q0
• •, n, q0
Definición 7.47. Maquina «nada» (que notaremos N):
N q1
, n, q0
• •, n, q0
7.3.4 Composición
f
M (s, q) [q0 |q10 ] q ∈ S
f (q, s) (7.7)
f M0 (s, q) q ∈ S0
Teorema 7.50. Dada una función de lista, existe una maquina de Turing
sobre Σ = {, •} que la representa.
L Notacion
Notaremos la representación de una lista X ∈ L en una cinta
de una maquina de Turing como hh X ii.
7.3 maquinas de turing 97
Funciones base
D• d N
•
D I • i I d
•
Composición
Maquina Z
ˇ • • • • ⇒ • •
ˇ • • ⇒ • • •ˇ • ⇒ ˇ • • • • ⇒ •ˇ • • •
|{z} |{z} |{z} |{z}
D D• I dd
d • d D ii • i I d
◦ ◦
Veamos un ejemplo:
ˇ ◦ ◦ • ◦ ◦ ⇒ ◦ˇ ◦ • ◦ ◦ ⇒ •ˇ ◦ • ◦ ◦ ⇒ •◦ˇ • ◦ ◦ ⇒ ••ˇ • ◦ ◦ ⇒
⇒ • • •ˇ ◦ ◦ ⇒ • • • ◦ ◦ˇ ⇒ • • • ◦ •ˇ ⇒ • • •◦ˇ • ⇒ • • •ˇ •• ⇒ ˇ •••••
Repetición
Representación de configuraciones
Y Observacion
Notemos que como hemos elegido números primos para las
bases, a partir de un numero natural que represente una confi-
guración podemos recuperar los exponentes mediante una fun-
ción recursiva primitiva G tal que G ( x, 2) = Ci , G ( x, 3) = Co ,
G ( x, 5) = Cd y G ( x, 7) = e.
1 ··· j ···
f q
..
0 .
.. ..
. .
i o ··· ··· s, m, q0 ···
.. ..
. .
Si m = 2 entonces se transforma en N 0 =
0
210Ci +s 3Cd %10 5bCd /10c 7q .
Si m = 1 entonces se transforma en N 0 =
0
2bCi /10c 3Ci %10 510Cd +s 7q .
7.3 maquinas de turing 101
Demostración
bCi /10c 3Ci %10 510Cd +S f (co ,e) 7E f (co ,e) M f (co , e) = 1
2
T f (ci , co , cd , e) = 210Ci +S f (co ,e) 3Cd %10 5bCd /10c 7E f (co ,e) M f (co , e) = 2
Ci S f (co ,e) Cd E f (co ,e)
2 3 5 7 M f (co , e) = 3
(7.8)
f ( x ) = T f ( G [ x, 2] , G [ x, 3] , G [ x, 5] , G [ x, 7]) (7.9)
7.3 maquinas de turing 102
Y Observacion
A partir de una maquina M y una cinta inicial C1 , trans-
formamos C1 en un numero mediante R (C1 , 1). Luego
imitamos las transiciones de f mediante f hasta que el
estado que obtenemos a través de G sea 0 y de esta mane-
ra obtenemos un numero que representa la configuración
final de M aplicada a C1 .
h : N →N
1 Mk termina con k como entrada (7.10)
k →h (k) =
0 en caso contrario
N
0
1
d
⇒ y
y̌ |{z} ˇ ⇒ y
ˇ ⇒ y
ˇ ⇒ ...
h(y)=1
⇒ y̌
y̌ |{z}
h(y)=0
Autómata de cola.
Calculo λ.
7.3.12 Ejemplos
f q1 q2 q3
, i, q2 , i, q3 , n, q0
• •, i, q2 •, i, q2 •, i, q2
ˇ ˇ . . . ⇒ . . .
ˇ ˇ
{z . .}. ⇒ .|. . {z
.|. . } | {z . .}. ⇒ .|. .
{z . .}.
q1 q2 q3 q0
7.3 maquinas de turing 105
Sucesor decimal
f q1 q2
, i, q2 1, n, q0
0 0, d, q1 1, n, q0
1 1, d, q1 2, n, q0
2 2, d, q1 3, n, q0
3 3, d, q1 4, n, q0
4 4, d, q1 5, n, q0
5 5, d, q1 6, n, q0
6 6, d, q1 7, n, q0
7 7, d, q1 8, n, q0
8 8, d, q1 9, n, q0
9 9, d, q1 0, i, q2
3̌99 ⇒ |{z}
39̌9 ⇒ |{z}
399̌ ⇒ 399 ˇ
|{z} | {z} ⇒ |{z}
399̌ ⇒ |{z}
39̌0 ⇒ |{z}
3̌00 ⇒ |{z}
4̌00
q1 q1 q1 q1 q2 q2 q2 q0
Reconocedora de an bn
f q1 q2 q3 q4
, n, q0 , i, q3 b, n, q0 , d, q1
a , d, q2 a, d, q2 b, n, q0 a, i, q4
b b, n, q0 b, d, q2 , i, q4 b, i, q4
ǎabb ⇒ |{z}
ǎbb ⇒ |{z}
ab̌b ⇒ |{z}
abb̌ ⇒ |abb ˇ
|{z} {z} ⇒ |{z}
abb̌ ⇒ |{z}
ab̌ ⇒
q1 q2 q2 q2 q2 q3 q4
⇒ |{z} ˇ ab ⇒ ǎb ⇒ b̌ ⇒ b
ǎb ⇒ |{z} ˇ ˇ ⇒ ˇ ˇ
|{z} |{z} |{z} ⇒ |{z}
b̌ ⇒ |{z}
|{z} ⇒ |{z}
q4 q4 q1 q2 q2 q3 q4 q1 q0
Duplicar puntos
f q1 q2 q3 q4 q5
, n, q0 , d, q3 •, i, q4 , i, q5 •, d, q1
• , d, q2 •, d, q2 •, d, q3 •, i, q4 •, i, q5
•|{z}
ˇ • • ⇒ |{z}
•ˇ • ⇒ |{z}
••ˇ ⇒ |• {z
• ˇ ⇒ • •
ˇ ˇ ˇ •• ⇒
} | {z } ⇒ |• •{z•} ⇒ |••ˇ{z
•} ⇒ •|ˇ •{z•} ⇒
| •{z }
q1 q2 q2 q2 q3 q4 q5 q5 q5
• •} ⇒ |•{z
⇒ |••ˇ {z •ˇ •} ⇒ |•{z ˇ ⇒ • • •ˇ ⇒ • • •
• • ˇ
} | {z } | {z } ⇒ |• •{z•ˇ •} ⇒
q1 q2 q2 q3 q3 q4
ˇ • • ⇒ ••ˇ • • ⇒ •
⇒ |• •{z ˇ ˇ • • ⇒ • • •ˇ • ⇒
} | {z } • •} ⇒ |• • {z
| •{z • •} ⇒ |• • •ˇ{z } | {z }
q4 q5 q5 q1 q2 q3
⇒ |• • ˇ ˇ • •• ⇒
{z • •}ˇ ⇒ |• •
{z • •} ⇒ |• •
{z • •ˇ •} ⇒ |• •
{z •ˇ • •} ⇒ |• • {z
}
q3 q3 q4 q4 q4
ˇ • •• ⇒ • • •
⇒ |• • ˇ ˇ • ••
{z } | {z • ••} ⇒ |• • •{z
}
q5 q1 q0
Modulo 3
Ejemplo 7.65.
N I
• • •
d d d iidd
7.3 maquinas de turing 107
Ejemplo 7.66.
a
d d
N
a
d I • D • i i ◦
b
i
d
maquina L maquina S
ia iI
a
b
N ib d
c
ic LdD iRiI
N
maquina P
maquina R IC
da
a
b dd i
N db
c
Id
dc
N
7.3 maquinas de turing 108
maquina U 2 D d Ldd iI d Ldd iI
maquina U4 D iI d Ldd iI d Ldd iI d Ldd iI
RI • d
a
RD D i
a
Si • d D i
b
RI • d I • dU4
b
c
RD D i
iddU2 d RI • d c RD D i
maquina C
Representación en FR
f 1 2 3 4 5
0 0, d, 1 1, d, 3 0, i, 4 0, i, 4 0, n, 0
1 1, d, 2 1, d, 2 1, d, 3 0, i, 5 1, i, 5
19 18
h i
20 30 511101111 71 = f
f T f (0, 0, 11101111, 1) =
18
h i
10·0+S f (0,1) 11101111 %10 b11101111/10c E f (0,1)
=
|{z} f 2 3 5 7 =
M (0,1)=2
18 18
h i h i
= f 210·0+0 311101111 %10 5b11101111/10c 71 = f 20 31 51110111 71 =
17 17
h i
20+S f (1,1) 31110111 %10 5b1110111/10c 7E f (1,1) =
= f T f (0, 1, 1110111, 1) |{z} = f
M (1,1)=2
17 16 16
h i h i h i
= f 21 31 5111011 72 = f
|{z} 210·1+1 3111011 %10 5b111011/10c 72 = f 211 31 511101 72 =
M (1,2)=2
15 15 14
h i h i h i
110+1 11101 %10 b11101/10c 2
= f
|{z} 2 3 5 7 = f 2111 31 51110 72 = f 21111 30 5111 72 =
M (1,2)=2
13 12 11
h i h i h i
= f
|{z} 211110+1 31 511 73 = f
|{z} 2111110+1 31 51 73 = f
|{z} 21111111 31 50 73 =
M (0,2)=2 M (1,3)=2 M (1,3)=2
10 9
h i h i
= f
|{z} 211111111 30 50 73 = f
|{z} 2b11111111/10c 311111111 %10 510·0+S f (0,3) 7E f (0,3) =
M (1,3)=2 M (0,3)=1
9 8 7
h i h i h i
= f 21111111 31 50+0 74 = f
|{z} 2111111 31 50+0 75 = f
|{z} 211111 31 50+1 75 =
M (1,4)=1 M (1,5)=1
6 5 4
h i h i h i
1111 1 10+1 5 111 1 111 5
= f
|{z} 2 3 5 7 = f
|{z} 2 3 5 7 = f 211 31 51111 75 =
M (1,5)=1 M (1,5)=1
3 2 1 0
h i h i h i h i
= f 21 31 511111 75 = f 20 31 5111111 75 = f 20 30 51111111 75 |{z}
= f 20 30 51111111 70
M (0,5)=3
BIBLIOGRAFÍA
110