:!: :?: :!: ** “OMG”**,

*holy cow,*this is a

*very simple*exercise banged out minutes ago yet has an

*incredibly striking result*, never-before-seen, not documented anywhere afaik, and its the kind of utterly basic yet significant exercise with 2020 hindsight wish was done ~2

**½**decades ago when starting out on collatz analysis.

*feel very dumb saying this,*but its totally unexpected and has me aghast for the moment. it seems to be a excitingly critical piece of the puzzle if not an astoundingly pivotal aspect.

*kicking myself!*:? :o :evil: ^^’ o_O

this simply looks at the density of 1s in the binary representation of a f(x) = 3x + 1 operation, with input and output density plotted on a graph, for a range of randomly sampled starting numbers of varying density having 500 binary positions (bits). it shows the 3x + 1 operation contrary to expectation does *not* at all scramble the density as *(utterly naively!)* expected and in fact basically preserves it in a highly correlated, near-linear, sigmoidal-like fashion. 2000 astonishing points in a scatterplot. the idea came about thinking some on the density view/ angle in the last batch of posted experiments (near the end).

def d(l) return l.select { |x| x }.size.to_f / l.size end def d2(x) return d(x.split('').map { |x| {'0' => false, '1' => true}[x] }) end z = 500 a = (0...z).to_a m = 2000 m.times \ { |x| c = (x.to_f / m * z).to_i n = ('0' * (z - 1)) + '1' a2 = a.dup.shuffle c.times \ { |j| n[a2[j], 1] = '1' } puts([d2(n), d2((n.to_i(2) * 3 + 1).to_s(2))].join("\t")) }