Ejercicios de Computabilidad (V-VI). TCO Ejercicio.-Sean A, B ⊆ N(k) conjuntos r.e. y f, g ∈ R(k) . Probar que C = {~x ∈ N(k) : f (~x) ∈ A ∨ g(~x) ∈ B} es r.e. Basta observar que: x ∈ C ⇔ f (~x) ∈ A ∨ g(~x) ∈ B ⇔ ∃y(y ∈ A ∧ f (~x) = y) ∨ ∃z(z ∈ B ∧ g(~x) = z) ⇔ ∃y∃z[(y ∈ A ∧ (~x, y) ∈ G(f )) ∨ (z ∈ B ∧ (~x, z) ∈ G(g))] o sea, el predicado x ∈ C es parcialmente decidible (p. d.). Luego C es r.e. 2 Ejercicio.-En la resolución de un cierto ejercicio se ha demostrado que la función ½ ϕx (x) + 1 si ϕx (x) ↓ f (x) = 0 en otro caso no es recursiva. Usando este hecho, probar que K = {e : ϕe (e) ↓} no es recursivo. Probar, además, que el conjunto K es recursivamente enumerable. Si K (conjunto de la parada) fuese recursivo entonces, como la función f se escribe: ½ ϕx (x) + 1 si x ∈ K f (x) = 0 en otro caso por el teorema general de definición por casos resultarı́a que f es recursiva; lo que serı́a una contradicción. Por tanto, K no es recursivo. Por otra parte, como K se caracteriza ası́: x ∈ K ⇔ ϕx (x) ↓⇔ ∃tST EP (1) (x, x, t) resulta que K es recursivamente enumerable. 2 Ejercicio.-Utilizando el teorema de la forma normal, probar que es recursivamente enumerable el conjunto K0 = {(x, y) : x ∈ Wy }. Probar además que K0 no es recursivo. En efecto: (x, y) ∈ K0 ⇔ ϕy (x) ↓⇔ ∃zT1 (x, y, z) Luego por el teorema de la proyección, K0 es r.e. Veamos ahora que no es recursivo: Sean CK0 y CK las funciones caracterı́sticas de K0 y K respectivamente. Obsérvese que CK (x) = CK0 (x, x); es decir, CK = C(CK0 ; π11 , π11 ) Si K0 fuese recursivo, lo serı́a K. Pero sabemos que K no lo es; por tanto, K0 tampoco lo será. 2 Ejercicio.-Probar que todo conjunto A ⊆ N recursivamente enumerable e infinito posee un subconjunto recursivo. Por ser A r.e. existe (Teorema de enumeración) una función g ∈ R(1) tal que rang(g) = A. Definimos entonces la función: ½ f (0) = g(0) f (x + 1) = g(µt(g(t) > f (x))) que es recursiva y verifica f (x) < f (x + 1). Por tanto, según un ejercicio anterior, rang(f ) es un conjunto recursivo. Y como rang(f ) ⊆ rang(g) = A, tenemos el resultado deseado. Ejercicios Computabilidad (V-VI) (TCO) 2 A. J. Pérez, M.J.Pérez.- pág. 1 C C I A Ejercicio.-Sea A ⊆ Nn+1 un conjunto r.e. Probar que existe una función recursiva, f : Nn − → N tal que: a) dom(f ) = {~x ∈ Nn : ∃y [(~x, y) ∈ A]}, y b) ∀~x ∈ dom(f ) [(~x, f (~x)) ∈ A] Indicación: Utilizar el teorema de la proyección. Como A es r.e., por el Teorema de la proyección existe un predicado recursivo, θ(~x, y, z), tal que: A = {(~x, y) : ∃zθ(~x, y, z)}. Definimos entonces la función: f (~x) = l(µtθ(~x, l(t), r(t)) Obviamente la función f es recursiva y además, verifica: a) ~x ∈ dom(f ) ⇔ ∃tθ(~x, l(t), r(t)) ⇔ ∃y∃zθ(~x, y, z) ⇔ ∃y(~x, y) ∈ A b) Sea ~x ∈ dom(f ). Y sea entonces, u = µtθ(~x, l(t), r(t)); es decir, f (~x) = l(u). Por tanto, se verifica θ(~x, l(u), r(u)); es decir, existe z tal que θ(~x, f (~x), z), de donde se sigue que (~x, f (~x)) ∈ A. 2 Ejercicio Sea A = {e ∈ N : Para todo x ∈ N, ϕe (x) es una potencia de 2}. Pruébese que A no es recursivo. Aplicaremos el teorema de Rice. Sea Γ la familia de funciones Γ = {f ∈ P : Para todo x, f (x) es una potencia de 2} Entonces, Γ 6= ∅, ya que la función g : N → N, definida por g(x) = 2 es un elemento de Γ. Γ 6= P ya que si definimos h(x) = 3, entonces h es recursiva y h ∈ / Γ. dado que Γ 6= ∅, P por el teorema de Rice, IΓ NO es un conjunto recursivo. Puesto que A = IΓ , hemos probado que A NO es recursivo. Ejercicio (12/02/03).-Decidir razonadamente si los siguiente conjuntos son recursivos: 1.- A = {e : ϕe es total y para toda f ∈ R, f (x) ≤ ϕe (x)} 2.- B = {e : ϕe es total y ∀x[ϕe (x + 1) = f (ϕe (x))]} donde f ∈ R es una función dada. 1) A es el conjunto vacı́o. En efecto; si no lo fuese, sea e ∈ A y sea g(x) = ϕe (x) + 1. Desde luego, g ∈ R. Tendrı́amos entonces, por la definición de g, que ϕe (x) < g(x) pero, por la definición de e, se verificarı́a: ϕe (x) ≥ g(x), lo que contradice lo anterior. Por tanto, A es vacı́o y, en consecuencia, es recursivo. 2) Consideremos el conjunto de funciones F = {g : g es total y ∀x[g(x + 1) = f (g(x))]} donde f ∈ R es una función dada. Obviamente se verifica que IF = B. F no es un subconjunto propio de P. En efecto: La función vacı́a no pertenece a F. La función g(n) = f n (0) es recursiva y pertenece a F. En efecto; basta observar que dicha función es precisamente la función: ½ 0 g (0) = 0 g 0 (x + 1) = f (g 0 (x)) Que g 0 es recursiva, es inmediato pues está definida por recursión a partir de una constante y de la función recursiva h(x, z) = f (z). Por otra parte, la igualdad, g = g 0 , se demuestra fácilmente por inducción débil. Por tanto, aplicando el teorema de Rice resulta que B no es recursivo. Ejercicios Computabilidad (V-VI) (TCO) A. J. Pérez, M.J.Pérez.- pág. 2 C C I A Ejercicio Sea A = {x ∈ N : ϕx (x) ↓ ∧ϕx (x) > x}. Pruébese que A es recursivamente enumerable pero no recursivo. El siguiente programa: P [A] [B] IF T1 (X, X, Z) GOT O B Z ←− Z + 1 GOT O A IF l(Z) > X GOT O E verifica que dom([[P ]](1) ) = A. Por tanto A es recursivamente enumerable. Para ver que no es recursivo procederemos por reducción al absurdo. Supongamos que A es recursivo. En ese caso la función total: ½ 0 si x ∈ A F (x) = x + 1 si x ∈ /A será recursiva. Existirá, pues, un e ∈ N tal que F = ϕe . Por tanto: def.F def.A e ∈ A ⇒ F (e) = 0 ⇒ ϕe (e) = 0 ⇒ ϕe (e) ≤ 0 ⇒ e ∈ /A def.F def.A e∈ / A ⇒ F (e) = e + 1 ⇒ ϕe (e) = e + 1 ⇒ ϕe (e) ↓ ∧ϕe (e) > e ⇒ e ∈ A e∈A⇔e∈ /A Hemos llegado a una contradicción y, en consecuencia, A no es recursivo. →← 2 Ejercicio Dar un ejemplo de un predicado recursivo R(x, y) tal que ∀yR(x, y) no sea recursivamente enumerable. (es decir, que el conjunto {x : ∀yR(x, y)} no sea recursivamente enumerable). Veremos que el predicado que define al conjunto complementario del conjunto de la parada nos proporciona un ejemplo. En efecto, obsérvese que: K = {x : ϕx (x) ↓} = {x : ∃tST EP (x, x, t)} Por tanto, su complementario será: K = {x : ¬(∃tST EP (x, x, t)} = {x : ∀t(¬ST EP (x, x, t)} Definiendo ahora el predicado: R(x, t) = ¬ST EP (x, x, t) resulta que R(x, t) es recursivamente enumerable (es más, en este caso es primitivo recursivo) y K = {x : ∀t(R(x, t)}. Y como K no es un conjunto r. e., resulta que ∀t(R(x, t) no es un predicado recursivamente enumerable. Es decir, concluimos que la propiedad de ser recursivamente enumerable no es cerrada por cuantificación universal. Ejercicios Computabilidad (V-VI) (TCO) A. J. Pérez, M.J.Pérez.- pág. 3 C C I A