login
A260482
Dragon curve triple point numerators: When a(n) in 0, 1, 2, ..., (5*2^k), Dragon(a(n)/(5*2^k)) has exactly three distinct, rational preimages.
7
7, 13, 14, 26, 27, 28, 33, 37, 47, 52, 53, 54, 56, 57, 66, 67, 69, 71, 73, 74, 77, 87, 93, 94, 97, 103, 104, 106, 107, 108, 109, 111, 112, 113, 114, 123, 127, 132, 133, 134, 138, 139, 141, 142, 146, 147, 148, 149, 151, 153, 154, 157, 167, 173, 174, 177, 186, 187, 188, 189, 191, 193, 194, 197, 206, 207, 208, 209, 211, 212, 213, 214, 216, 217, 218, 219, 221, 222, 223, 224, 226, 227, 228
OFFSET
1,1
COMMENTS
It appears that Dragon(a(n)/(5*2^k)) = Dragon(b/(15*2^k)) = Dragon(c/(15*2^k)) for some b and c.
See dragun in the MATHEMATICA section for an exact evaluator of the continuous, spacefilling Dragon function which maps [0,1] into C, and undrag, its multivalued inverse.
The first differences of this sequence appear to comprise only 1,2,3,4,5,6,9, and 10.
It appears that every Dragon triple point is an image of a(n)/(5*2^k) for some n and k.
The set of values DRAG(m/(14*2^k)) with m in {0, 1, 2, ..., 14*2^k} also contains points at least triple whenever k > 0. See Examples. - Bradley Klee, Aug 14 2015
Using quaternary expansions of planar coordinates and a substitution tiling, one can prove the following: If a point along the Dragon curve has rational planar coordinates, it is visited one, two, or three times. The corollary is: All rational points at least triple are exactly triple. - Bradley Klee, Aug 18 2015
LINKS
Brady Haran and Don Knuth, Wrong turn on the Dragon, Numberphile video (2014)
Wikipedia, Dragon curve
Bill Gosper, Illustration
Bill Gosper, Illustration
Bill Gosper, Illustration
EXAMPLE
a(8) = 47, so if Dragon(0) = 0, Dragon(1) = 1, Dragon(1/3) = 1/5+2i/5, then
Dragon(133/240) = Dragon(47/80) = Dragon(143/240) = 2/3+5i/12 and
Dragon(133/480) = Dragon(47/160) = Dragon(143/480) = 1/8+13i/24 and ...
Dragon(133/3840) = Dragon(47/1280) = Dragon(143/3840) = -1/6-5i/48 and ...
DRAG(13/28) = DRAG(17/28)= DRAG(19/28) = 3/5 + 3/10 i. - Bradley Klee, Aug 11 2015
MATHEMATICA
(* by Julian Ziegler Hunts *)
piecewiserecursivefractal[x_, f_, which_, iters_, fns_] := piecewiserecursivefractal[x, g_, which, iters, fns] = ((piecewiserecursivefractal[x, h_, which, iters, fns] := Block[{y}, y /. Solve[f[y] == h[y], y]]); Union @@ ((fns[[#]] /@ piecewiserecursivefractal[iters[[#]][x], Composition[f, fns[[#]]], which, iters, fns]) & /@ which[x]));
dragun[t_] := piecewiserecursivefractal[t, Identity, Piecewise[{{{1}, 0 <= # <= 1/2}, {{2}, 1/2 <= # <= 1}}, {}] &, {2*# &, 2*(1 - #) &}, {(1 + I)*#/2 &, (I - 1)*#/2 + 1 &}]
undrag[z_] := piecewiserecursivefractal[z, Identity, If[-(1/3) <= Re[#] <= 7/6 && -(1/3) <= Im[#] <= 2/3, {1, 2}, {}] &, {#*(1 - I) &, (1 - #)*(1 + I) &}, {#/2 &, 1 - #/2 &}]
Do[If[Length[undrag[dragun[k/80][[1]]]] > 2, Print[k]], {k, 0, 68}]
(* same as, e.g. *)
Do[If[Length[undrag[dragun[k/20480][[1]]]] > 2, Print[k]], {k, 0, 68}]
(* Not {k, 0, 69} because undrag@@dragun[69/20480] = {69/20480, 211/61440, 341/61440} but undrag@@dragun[69/80] = {69/80, 211/240}, since 341/240 > 1, outside the Dragon's preimage = [0, 1]. Corrected by Bill Gosper, Feb 18 2018. *)
CROSSREFS
KEYWORD
nonn,frac
AUTHOR
Bill Gosper, Jul 26 2015
EXTENSIONS
Name simplified by Bradley Klee, Aug 18 2015
STATUS
approved