collatz still standing!

hi all. some crazy events over the last 3mos, ~¼ yr, to put it lightly, both on a personal and larger “global” scale here literally in the sense of “affecting the whole globe”. the prior blog talked about “soul crushing moments/ life events” and invoked nietzsches raw aphorism, “that which does not destroy me makes me stronger”. that concept has a ragged truth to it, somewhat like darwinism. we are in the midst of a mass darwinian event playing out. the last blog talked about paradigm shifts on a personal level. it appears my personal life has aligned in a very weird/ momentous way with the larger scheme of things, the social milieu, the larger universe.

so many ideas circling, crashing around in my head the last few months. have a lot to write about. want to write about coronavirus, have so many ideas/ links on that, and my personal “brush” with it so to speak. may do so. and the news about Conway? devastating! hes a massive personal hero in my pantheon, and many others too. deserves an entire blog here. theres enough news in the last few months personal+global for ½ dozen blogs. and me, normally loquatious, have taken the opposite tact. gone dark.

a lot to think about/ deal with. am dealing with some very heavy feelings/ situation(s). among many other things, am frustrated about the lack of tangible engagement in my audience, ie commenting. 7 years and not a lot to show for it along those lines. sometimes wonder if no trolls are better than 1 troll, lol! as a contrast to Descartes bold/ confident declaration, am feeling darker at times, nobody comments, therefore I do not exist…

amidst the noise of crashing worlds, after some of the dust has finally settled in my own life (more on all that later), started to think about collatz again. think its a positive sign/ sign of resilience. was in full survival mode for last few months, some desperate-feeling moments, ego blending-to-obliterating. blending as in “put in a blender on smoothie level” (highest setting… lets review: “stir (easy clean), puree (soup), chop (salsa), cream (milkshake), whip (frz drink), extract (smoothie)”).

this idea was hinted at the last blog and then rearrived at it after a long interlude. am wondering about the properties of the postdetermined glide vs control distribution (½ density iterates of same size as generated sequence, an idea used a few times sometimes with great effect), here examined for 1-triangles. this is a simple exercise to look at max and average density/ entropy distance. it finds strong divergences in the collatz sequences, points 1-200 (1-triangle seeds of same size), vs the random control sequences 200-400 (the 200 corresponding “control” sequences), esp notable/ aka more differentiable in the larger seeds. entropy max and average ’emx’ blue, ‘ea’ magenta are not too different. the density is dramatically different esp for ‘dmx’ red but also for ‘da’ green. again a WDITTIE case. also, immediately need to look at related statistics such as 0/1 (scaled) runs etc (which were mentioned in the last blog).

there are actually some larger idea(s) driving this. maybe have some semblance/ sketch of a general/ overarching attack. have to write it all up soon. the idea of a seed with different density distance but same entropy seems to suggest the idea of roughly the same number of 0/1 transitions but some (runs) in each shortened and some others (correspondingly/ inversely) elongated so to speak. maybe a generation strategy there.

construct127.rb

construct127

(5/10) quick reveal/ outline: the basic idea is that maybe the key to the problem is to try to quantify mixing over multiple iterates. ofc this is maybe an old idea. but it was expressed in other awkward ways, at least upon further/ latest updated thinking, now looking that way. there have been copious ideas about 0/1 runs maxes over different ranges. maybe need to try to express it differently as just “highly mixed iterates over longer ranges mean much higher probability of descent/ drain region” and push this idea absolutely as far as it will go. not sure exactly what this means yet but it seems to point toward looking at overall/ less local distribution shapes/ balances within/ over iterates and not just max 0/1 runs in single iterates (always understood, in ancient language aka “caveat,” to be a crude measure anyway).

banging on/ expanding on some of the last code/ idea(s) led in this interrelated direction. the 0/1 runs in adjacent iterates are rather “pixelated” in the sense that they arent too distributed over different ranges (of lengths). so an early idea is to look at scaled 0/1 bit runs and this helps smooth distributions out and in a sense get “higher resolution”. this code works with odd iterates, and chooses one long 200 1-triangle to study, specifically the postdetermined glide. it analyzes the scaled 0/1 runs over its postdetermined glide and then also for a simulated/ control sequence with iterates of exactly the same bit widths and ½ density. it also does an average over 20 samples and finds a remarkably stable increasing pattern by looking at the top (sorted) 1000 0/1 scaled bit runs, subtracting the control “profile” from the 1-triangle runs.

to be clear(er), its not just a reproducible increasing trend, but the complex jagged shape with hills + valleys is largely reproducible over separate runs! compared to a lot of prior “wandering in the desert” this is an extraordinary feat of differentiability. not sure exactly where the stability of this pattern is coming from right now and it asks for/ needs further attn. was surprised; did not expect it on applying more samples in the averages, was expecting to see the curve noise decrease ie smooth out and in a sense exactly the “opposite” happened, ie the “noise became more distinct” so to speak! (this stuff can be hard to explain/ put into words sometimes without bordering on nonsense-sounding! but maybe thats a good sign that the end goal is finally nearing in sight!)

overall these findings help consistently discriminate random ½ density iterates from collatz sequence/ drain iterates using 0/1 run statistics, possibly hinted at in prior experiments (although itd be difficult to point to them; the only one that has been coming to mind is the narrow edge found in construct114 on 1/2020) but never really isolated with this degree of stability/ signal before. its a semi-familiar finding of longer 1 runs in a collatz sequence, but here its the drain region which has almost always been seen (previously) to be almost indistinguishable from ½ density.

there was some normalization here that could be improved. it selects odd iterates from the collatz and the randomized sequence, but the odd/even samples counts for both are not really expected to be nearly the same. odd/even distribution in the collatz drain sequence is not exactly expected to be even whereas in the randomized distribution it will be close to even. another idea would be to select the odd iterates from the collatz sequence and generate a randomized sequence all odd.

construct128e.rb

construct128e

❗ 💡 😮 🙄 wild idea, now staring me in the face: the concept of a fixed point has been in the background for years. consider the collatz mapping as a transform on 0/1 runs (distribution functions aka “profiles”). maybe it converges to a fixed point in the sense of a 0/1 profile that maps exactly onto the same 0/1 profile!

(5/12) a quick reformulation that adds the odd selection normalization idea and displays the data in a slightly different way. it selects the top 1000 scaled runs again and stamps the location in the sequence, and does a x/y scatterplot, with red points the collatz sequence and green points the randomized sequence. the idea here was to look for whether there were any patterns associated with sequence location/ position. the gradient lines are associated with iterates having longer (max) 0/1 runs on average as they decrease in bit length. same differentiability phenomenon seen in this different way, the diagram reveals slightly higher occurrence of high red points vs the green points.

construct129.rb

construct129

(5/13) theres a basic phenomenon/ finding now isolated here, and its a glimmer of light in overcoming the long-standing curse of undifferentiability. it deserves a name. theres a sort of chunkiness” to iterates in a collatz sequence (or at least glides, but presumably also characteristic of full/ entire sequences) and its a slight deviation from the uniform ½ density random distribution. this is seen above from at least 2 different angles (presumably others earlier), apparently interrelated: there are slightly longer 0/1 runs than the random case, and density of larger iterates does not converge very closely to ½. some of this has been seen in a lot of prior experiments, am feeling some deja vu, but it would take awhile to narrow down/ identify prior cases. anyway had an immediate idea wondering if an optimizer would be able to, or to what degree would, minimize the density divergence from ½ for iterates.

this uses the stepwise optimizer and tries to maximize trajectory statistics and minimize the density distance measurement in 3 ways, the “left” pre-peak average density distance, the “right” post peak (intraglide), and the average density distance over the entire glide, labelled d1, d2, da respectively.

results are that even as glides get longer the average density distances narrow (cyan, yellow, black lines) but does not approach closely to 0 as with random ½ density iterates. it seems almost an asymptotic nonzero limit.

from the pov of the overarching proof goal, it would seem like the next step would be to try to turn/ push this differentiability into a feature that can discriminate between glide and postglide, and show that it “converges” over the glide, ie a sort of “converging glide indicator”. this ran very long before terminated, roughly ½ day.

stepwise6.rb

stepwise6

😳 😮 ❗ 🙄 oh wow, didnt notice this until now, did some refactoring and found spurious/ superfluous/ extraneous code for k, l2 in the main loop, which looking back/ doing some digging, has been in there for ages, since the beginning! the code was in traverse16 on 1/2020 where it had a combined effect but then going/ refactoring to multioptimization in traverse17, missed removing it on oversight and too much haste. its harmless but useless. wheres my code reviewers when theyre needed lol?!

this was some fairly easy code and the graph point sampling logic is improved for uneven cases where the total run count is not a “simple” multiple of the graph points (here chosen as 2000). its both basic and not totally obvious at the same time. a very important optimization targeted many times in this blog over multiple algorithms/ angles, driven by a years-old adjusted overarching hypothesis, is looking for long 0/1 runs in the postdetermined region. dont recall exactly casting this search as looking for long scaled runs, it seems “~½” familiar. never ran the stepwise algorithm on that, and its definitely worth trying. this code ran a few hours before terminated, and finds that minimizing ‘mxs’ cyan the max 0/1 scaled runs converges to about ~1/10 of the iterate size with the iterates approaching ~200 width, red.

stepwise7.rb

stepwise7

😳 🙄 construct127 2nd right half needs a rethink. its simply measuring density associated with the density generator, which has a slight bias away from the specified generation density. ok, the small defense/ silver lining is that bias was never graphed/ quantified before then. but the general idea still stands, and was noted years ago but maybe needs more attn, collatz iterates in sequences are slightly biased away from ½ density.

 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s