%I #4 May 01 2014 02:49:12
%S 2,4,1,1,4,1,8,3,2,1,9,8,6,2,1,5,2,4,3,2,1,3,6,5,8,3,2,1,16,7,12,5,4,
%T 3,2,1,17,16,3,6,10,4,3,2,1,18,17,8,7,6,5,4,3,2,1,19,9,9,16,7,12,5,4,
%U 3,2,1,10,5,10,4,8,7,6,5,4,3,2,1,11,12,11,10,9,8,14,6,5,4,3,2,1,6,13,24,11,20,9,8,7,6,5,4,3,2,1,7,14,25,12,5,10,9,16,7,6,5,4,3,2
%N Table of permutations of N, each row being a generator of the "rotation group" of infinite planar binary tree. Inverse generators are given in A065625.
%p [seq(RotateLeftTable(j),j=0..119)];
%p RotateLeftTable := n -> RotateNodeLeft(1+(n-((trinv(n)*(trinv(n)-1))/2)),(((trinv(n)-1)*(((1/2)*trinv(n))+1))-n)+1);
%p # Rewrites t-prefixed x's in the following way: t -> t0, t0... -> t00..., t1 -> t, t10... -> t01..., t11... -> t1... and leaves other x's intact.
%p RotateNodeLeft := proc(t,x) local u,y; u := floor_log_2(t)+1; y := floor_log_2(x)+1; if(y < u) then RETURN(x); fi; if(floor(x/(2^(y-u))) <> t) then RETURN(x); fi; if(x = t) then RETURN(2*x); fi; if(0 = (floor(x/(2^(y-u-1))) mod 2)) then RETURN(x + (t * 2^(y-u))); fi; if(y = (u+1)) then RETURN((x-1)/2); fi; if(0 = (floor(x/(2^(y-u-2))) mod 2)) then RETURN(x - 2^(y-u-2)); fi; RETURN(x - ((t+1) * 2^(y-u-1))); end;
%Y The first row (rotate the top node left): A057115, 2nd row (rotate the top node's left child): A065628, 3rd row (rotate the top node's right child): A065630, 4th row: A065632, 5th row: A065634, 6th row: A065636, 7th row: A065638, 8th row: A065640. Maple procedure floor_log_2 given in A054429, for trinv, follow A065167.
%K nonn,tabl
%O 0,1
%A _Antti Karttunen_, Nov 08 2001