Download órbitas en un árbol natural
Document related concepts
Transcript
Título: Representación Binaria de los Números Naturales Autor: Luis R. Morera González En este artículo se define la orbita de un nodo en un árbol natural. Para esto se utiliza el concepto del salto Jd1 estudiado en el artículo anterior. Un resultado importante es que utilizando la orbita de un número natural en el árbol natural se encuentra la representación binaria del número. Dado el salto Jd1 de un nodo del árbol binario completo que es parte del un árbol natural. Denotaré por inducción J id1 (n) = J d1 (J id1-1 (n)), i = 2, 3, ... . El conjunto de nodos 2 {n, J (n), J d1 (n), J 3d1 (n), ...} , obtenidos por iteraciones del salto comenzando por el nodo n, la llamaré orbita de n que se denota orbjd1(n). 2 Resumiendo se define orb jd1 (n) = {n, J d1 (n), J d1 (n), J 3d1 (n), ...} = {n 0 , n 1 , n 2 , ...} . Para los nodos aislados del árbol natural la orbita de n se define, orbjd1(n) = {n0}. La Figura 1 muestra la orbita de n = 13 y la de n = 4, esto es orbjd1(13) = {13, 5, 1} y orbjd1(4) = {4}. Figura 1 Para los números de la forma m = (n,k), que no son nodos del árbol binario completo, la orbita define de manera similar. La Figura 2 muestra la orbita de m = (7,2) = 28, esto es orbjd1(28) = {28, 12, 4}. Figura 2 , La definición del salto Jd1, tiene como consecuencia el siguiente resultado. Lema 1. k2 Para todo nodo n del árbol binario completo: J d1 (n) = 1 , para algún k2 > 0. (i.e. Toda orbita k2 termina en 1). Además, m = (n,k) entonces J d1 (m) = 2 k .╣ El siguiente teorema permite la descomposición binaria de un número natural a partir de su orbita. Teorema: Descomposición en potencias de 2 de un número natural en un árbol natural. Sea n un nodo en el árbol binario completo, orb jd1 (n) = {n 0 , n 1 , n 2 , ..., n k2 } entonces n = 2 L(n 0 ) + 2 L(n 1 ) + ... + 2 L(n k2 -1 ) + 1 . Además si m = (n,k), entonces m = 2 L(n 0 ) + k + 2 L(n 1 ) + k + ... + 2 L(n k2-1 ) + k + 2 k . Recordando L(n) el nivel al cual pertenece el nodo n. Demostración: Por definición n i = 2 L(n i ) + n i +1 , donde i = 0, 1,2, …, k2 -1 . Además por la definición de orbita se sabe que n = n0. Utilizando estas definiciones tenemos que: n = n 0 = 2 L(n 0 ) + n1 . Simplificando obtenemos n = n 0 = 2 L(n 0 ) + 2 L(n 1 ) + .... + 2 L(n k2-1 ) + 1 . Esto implica (1) n= k2 ∑ 2 L(n ) . i i=0 Dado que L(n0) > L(n1) > L(n2) > ….> L(nk2), se puede concluir que (1) provee la representación binaria para n. Es fácil ver que si m = (n,k) = n×2k, entonces k2 k2 m = ∑ 2 L(n i ) × 2 k = ∑ 2 L(n i ) + k ╣ i=0 i=0 En la Figura 1 se obtiene orbjd1(13) = {13, 5, 1}, de aquí n0 = 13 y L(n0) = 3 n1= 5 y L(n1) = 2 n3=1 y L(n3) = 0 Utilizando (1) tenemos n = 3 ∑ 2 L(n ) = 23 + 2 2 + 20 ,note que podemos escribir n de la i i=0 3 2 siguiente forma: n = 1 × 2 + 1 × 2 + 0 × 21 + 1 × 2 0 , si ubicamos posicionalmente los 1 y 0 por los cuales se estan multiplicando las potencias de dos, obtenemos la representación binara de n. esto es n = 11012. La Figura 3 muestra una forma de encontrar la representación binaria de un número natural, utilizando la orbita del número. Comenzando con L(n0) y bajando un nivel a la vez: escribir 1 en el nivel si existe un ni en el nivel en caso contrario escribir 0. La representación binaria del número esta dada, escribiendo los 0 y 1 encontrados, en el orden en que fueron obtenidos. Esto es n = 11012 . Figura 3 La Figura 4 muestra que m = (7,2) = 28, la representación binaria esta dada por 111002 . Figura 4