[go: up one dir, main page]

login
Irregular triangle (Beatty tree for r = sqrt(2)), T, of all nonnegative integers, each exactly once, as described in Comments.
2

%I #4 Jun 07 2015 18:03:01

%S 0,1,2,4,3,7,5,11,8,16,6,12,24,9,18,17,35,14,13,25,26,50,10,19,21,38,

%T 36,72,15,28,27,31,52,51,55,103,20,22,37,39,41,45,73,74,79,147,32,29,

%U 56,53,59,65,106,104,113,209,23,42,40,46,76,75,80,84,93

%N Irregular triangle (Beatty tree for r = sqrt(2)), T, of all nonnegative integers, each exactly once, as described in Comments.

%C Suppose that r is an irrational number > 1, and let s = r/(r-1), so that the sequences u and v defined by u(n) = floor(r*n) and v(n) = floor(s*n), for n >=1 are the Beatty sequences of r and s, and u and v partition the positive integers.

%C The tree T has root 0 with an edge to 1, and all other edges are determined as follows: if x is in u(v), then there is an edge from x to floor(r + r*x) and an edge from x to ceiling(x/r); otherwise there is an edge from x to floor(r + r*x). (Thus, the only branchpoints are the numbers in u(v).)

%C Another way to form T is by "backtracking" to the root 0. Let b(x) = floor[x/r] if x is in (u(n)), and b(x) = floor[r*x] if x is in (v(n)). Starting at any vertex x, repeated applications of b eventually reach 0. The number of steps to reach 0 is the number of the generation of T that contains x. (See Example for x = 17).

%C See A258212 for a guide to Beatty trees for various choices of r.

%e Rows (or generations, or levels) of T:

%e 0

%e 1

%e 2

%e 4

%e 3 7

%e 5 1

%e 8 16

%e 6 12 24

%e 9 18 17 35

%e 14 13 25 26 50

%e 10 19 21 38 36 72

%e 15 28 27 31 52 51 55 103

%e Generations 0 to 10 of the tree are drawn by the Mathematica program. In T, the path from 0 to 36 is (0,1,2,4,7,11,16,24,17,25,36). The path obtained by backtracking (i.e., successive applications of the mapping b in Comments) is (36,25,17,24,16,11,7,4,2,1,0).

%t r = Sqrt[2]; k = 1000; w = Map[Floor[r #] &, Range[k]];

%t f[x_] := f[x] = If[MemberQ[w, x], Floor[x/r], Floor[r*x]];

%t b := NestWhileList[f, #, ! # == 0 &] &;

%t bs = Map[Reverse, Table[b[n], {n, 0, k}]];

%t generations = Table[DeleteDuplicates[Map[#[[n]] &, Select[bs, Length[#] > n - 1 &]]], {n, 11}]

%t paths = Sort[Map[Reverse[b[#]] &, Last[generations]]]

%t graph = DeleteDuplicates[Flatten[Map[Thread[Most[#] -> Rest[#]] &, paths]]]

%t TreePlot[graph, Top, 0, VertexLabeling -> True, ImageSize -> 700]

%t Map[DeleteDuplicates, Transpose[paths]] (* _Peter J. C. Moses_,May 21 2015 *)

%Y Cf. A001951, A001952, A258238 (path-length from 0 to n), A258212

%K nonn,tabf,easy

%O 1,3

%A _Clark Kimberling_, Jun 05 2015