T ⊆ R Considere el formato estándar para el computo de la función

Anuncio
Capítulo 8
T⊆R
Considere el formato estándar para el computo de la
función f(x1, x2):
x1 + 1
en ti:
x2 + 1
1111 0 111
f(x1, x2) + 1
en tf:
111111
f = +,
3+2=5
En cualquier t:
núm. izq. núm. der.
...0001110 111011000...
Considere:
l
como el número binario denotado por
núm. izq.
r número binario denotado por núm. der.
escrito al revés.
ie:
l
= 11102 = 1x23 +1x22 +1x21 +0x20 = 13
r = 1 1 0 1 1 1 = 55
32 16 0
4 2
1
1
Capítulo 8
Multiplicación y División en Base 2
7
14
111
r
sh
r(x) = 2• x
sh
l(x)
1110
14
7
1110
e
= x/2
111
Considere: cifra menos significativa de
l
cifra menos significativa de r
111011101
Notación:
acción
l
= núm. izq. en estado t
l´ = núm. izq. en estado t’
r = núm. der. en t
r’ = núm. der. en t’
paridad
l’
r’
l es non
(l -1)/2
2r + 1
l es par
r es non
r es par
l’ = l /2
l’ = 2 l + 1
l’= 2 l
ejemplo
111011
1111011
7 6
11011
3 13
11011
6 3
10111
3 6
10111
2 7
10011
5 3
10011
r’ = 2r
r’ =(r-1)/2
r’ = r/2
2
6
4
3
2
Capítulo 8
Calcular
l
& r en to:
f(x1, x2):
x1 + 1
1 1 1 0
x2 + 1
1 1
l
x2 + 1
x1 + 1
=0
r=?
1 1
(invirtiendo)
0 1 1 1 ⇒ 25 + 24 + 0 x 23 + 22 + 21 + 20
= 32 + 16 + 0 + 4 + 2 + 1
= 55
parámetros
cadenas de 1’s
cc
r(m,p)
•
•
x1 = 2•
x2 = 1•
núm. denotado
por rep. binaria
•
11 0 111
m
•55
p
s
•
inducción de s:
1112 = 23 - 1 ⇒
111...1 = 2m - 1
m
sea
m = x2 + 1,
p = x1 + 1
r = (2m+p+1 - 1) - cero intermedio
r = (2m+p+1 - 1) - 2p
r = 2p (2m+1 -1) - 1
m = 2 & p = 3:
r = 23(22+1 - 1) - 1 =
s(x1, x2) = 2x +1(2x +2 - 1) - 1
3
Capítulo 8
Calcular
l
& r
l
en
tf
= 0
r = f(x1, x2) + 1
ie
1’s
11111
cadenas de
1’s
núm denotado
por rep. bin.
2m-1
f(x,y)
lo
•
1111
•
15
•
3
r = 2w+1-1 dónde w = t(x, y)
considere que:
log2(r + 1) = log2(2w+1)
w + 1 = log2(r + 1)
w = log2(r + 1) - 1
ie:
si r = 15
w = f(x, y) = log2(15 + 1) - 1 = 3
Definamos: lo(x) = el w más grande tal que
w ≤ x y 2w ≤ x
lo(15):
w=1
w=2
w=3
w=4
1 ≤ 15 & 21 ≤ 15
2 ≤ 15 & 22 ≤ 15
3 ≤ 15 & 23 ≤ 15
4 ≤ 15 & 24 ≤ 15
lo(15) = 3
4
Capítulo 8
La función lo también puede expresarse como la
maximización de d(x, y) definida como sigue:
0 si
2y ≤ x
d(x, y) =
1 en cualquier otro caso
Mn[d] = el mayor y tal que d(x, y) = 0
d(15,0) = 0
si
20 ≤ 15
d(15,1) = 0
si
21 ≤ 15
d(15,2) = 0
si
22 ≤ 15
d(15,3) = 0
si
23 ≤ 15
d(15,4) = 1
si
24 ≤ 15
Entonces:
lo(x) = Mn[d](x)
5
Capítulo 8
¿QUE ESTAMOS HACIENDO?
1) Representamos todo estado de la máquina de
turing que evalua la función f en función de los
números l & r.
2) Mostramos los números l, r en el estado inicial to,
como función de los parámetros de f.
3) Mostramos los números l, r en el estado final tf y
su relación con el valor f(x, y).
4) Falta mostrar que toda transición de la máquina de
Turing puede ser caracterizada por una función
recursiva.
5) La máquina de Turing evalua la
todas las transiciones.
composición de
6
Capítulo 8
MODELADO DE TRANSICIONES
sean:
a = función acción
q = función siguiente estado
Estados: Q =
{1, 2, 3, ... n }
Alfabeto: B = 0,
Acciones: O = 0,
1=1
1 = 1,
L = 2,
R=3
Si en estado qi viendo un ‘0’ se ejecuta acción ‘j’
a(i,o) = j
( a(i,1) = j)
Si en estado qi viendo un ‘0’ sigue estado k
q(i, o) = k
( q(i, 1) = k)
En cualquier otro caso:
a(x, y) = y (reescribe el símbolo)
q(x, y) = 0
(vete a estado ‘0’)
Como solo hay un número finito de quádruplos en toda
Máquina de Turing, a & q son funciones recursivas
que se pueden especificar por casos.
7
Capítulo 8
Ejemplo
Función sucesor
1:R
1:L
B:1
B:R
1
2
3
a:
a(1,0) = 1
a(1,1) = 3
a(2,0) = 3
a(2,1) = 2
a(x, y) = y
q1 lee B
escribe ‘1’
q1 lee 1
derecha
q2 lee B
derecha
q2 lee 1
izquierda
para cualquier otro x, y
q:
q(1,0) = 2
q(1,1) = 1
q(2,0) = 3
q(2,1) = 2
q(x,y) = 0
cualquier otro y
ie.
111
1
111 111 1110 1111
1
1
1
2
1111 1111 1111 01111 01111 01111
2
2
2
2
3
0
q(3, y) = 0 = halt
8
Capítulo 8
f es recursiva si toda transición en la evaluación de
es recursiva.
Sea
⟨ l, q, r⟩⟩
Probar que
t
l´,
f
l
= núm. izq. en paso ‘t’
q = estado de M en t
r = núm. der. en paso t
q’, r’ en t + 1 dependen de l, q, r en
f(l, q, r) = (l´, q’, r’)
idea:
codificar (l ,q, r) como un solo número
p
tpl = 2 • 3 • S
•
x
y
x•
y•
z•
triples codificados
z
•w
Tres funciones inversas
triples codificados
lft
•
ctr
w•
P
•
•
rgt
•
•
•
x
y
z
9
Capítulo 8
lft(w)
Es el mayor x, tal que x ≤ w
& 2x divide w. (Sin residuo)
ctr(w)
El mayor x tal que x ≤ w
& 3x divide a x.
rgt(w)
El mayor x tal que x ≤ w
& 5x divide a x.
Procedimiento para mostrar que f es recursiva:
Definimos la
sigue:
función
g
de tres
argumentos como
Si t es un paso de evaluación de M, no mayor
al paso en el que M para evaluando f(x1, x2)
Entonces:
g(x1, x2, t) = tpl(l t, qt, rt) = wt
En t = 0
(antes de ejecutar el primer paso)
g(x1, x2, 0) = tpl(0, 1, s(x1, x2))
10
Capítulo 8
tpl(l, c, r) = ⟨ l, c, r⟩⟩
parámetros
x1•
núm. denotado por
notación binaria
l•
g
•
•
x2•
q•
r•
pasos de M
t•
•
tpl
g(x1, x2, 0) = tpl ( 0, 1, s(x1, x2))
0
e(x) = 
1
x
par
x
non
g(x1, x2, t + 1 ) : 8 casos (4 acciones x |e(r) | = 2)
caso 2:
acción
Si en t : 1 1 0 1 1 0
c
1
en t+1: 1 1 0 0
1
Entonces:
=l
q’ = k
r’ = r - 1
1 0
& a(c,1) = 0
paridad de r
e(r) =1
l´
q(c, 1) = k
g(x1, x2, t + 1) = ⟨ l, k, r - 1⟩⟩ si a(c, e(r)) = 0 & e(r) = 0
x - y = x - y si x ≥ 0, o 0 en otro caso
11
Capítulo 8
Caso 1:
en t : 1 1 1 0 1 1
c
1
en t+1: 1 1 1 0 1 1
K
1
a(c, e(r)=0 & e(r)=0
escribe ‘0’
g(x1, x2, t + 1) = ⟨ l, k, r⟩⟩
Caso 3:
en t :
1 1 0 0 1 1
c
0
a(c, e(r)) = l & e(r) = 0
1 1 0 1 1 1
k
0
escribe ‘1’
g(x1, x2, t + 1) = ⟨ l, k, r + 1⟩⟩
etc.:
12
Capítulo 8
Terminación:
g(x1, x2, t + 1) = ⟨ l, o , r⟩⟩ & ctr(g(x1, x2, t + 1)) = 0
Si M para en t + 1: ctr(g(x1, x2, y)) ≠ 0 & y ≤ t
M para evaluando f(x1, x2,) si: ctr(g(x1, x2, y + 1)) = 0
Sea h(x1, x2, y ) = ctr(g(x1, x2, y + 1))
M para en t si:
Si M para en
Mn[h](x1, x2) = t
t, r es el núm. der. en t
f(x1, x2) = lo(r) = lo(rgt(g(x1, x2, t))).
Entonces
f(x1, x2) = lo(rgt(g(x1, x2, Mn [h](x1, x2))))
Por lo tanto:
f es recursiva
y
T ⊆R
Kleen normal form
Mn se usa una sola vez
13
Descargar