Hi everyone,
I don’t see an introductions category or any introductions from anyone else so I hope this is okay. You might have seen me if you’ve been on the Collatz subreddit. I decided to make an account here so I’m not missing access to any of the community.
Before I talk math, here is some notation and terminology I will use, most of which has been adopted. If there is any standard notation on this forum, please point me to it.
n - any number in a Collatz sequence
k - total number of even (n/2) steps in a sequence
x - total number of odd (3n+1) steps in a sequence
β - the numerator of the cycle equation, also found in the sequence equation, of which the cycle equation is a special case
vector - aka parity sequence, the binary string of even and odd steps in a sequence, can be either shortcut or non-shortcut steps, but I will use shortcut because that seems to be the standard here.
vector notation examples: ‘1100’ - odd odd even even, ‘(10)^3 100’ means ‘101010100’
I’ll start with a select few observations I’ve made I think could lead to good discussion.
Merging pairs: As with many things in Collatz, I discovered this only to realize it has been discovered before. I haven’t seen any papers on it though and I would be interested if one exists. I’m including it here because it seems rarely discussed. Numbers n that begin with a parity vector of the form ‘(1)^m 101’ will merge with 2n+1, which begins ‘(1)^m 1100’, after those respective subsequences. The term β for the 2n+1 vector is two times minus 3^x that of the n vector, regardless of where you end the sequence after the merge. There is a discrete way to put this vector representation numerically but I learned that from someone else. My big thing with this was the observation that all numbers which don’t immediately drop below themselves begin with one of these two vector types, meaning they have a merging partner. Could this lead to some kind of restriction on cycles?
Adding 1 before each step: If you add 1 to n before each shortcut step, you will get the same parity sequence as n+1 under regular 3n+5 rules. More generally, adding 3^m before each (3n+1)/2 and n/2 step for starting number n yields the same parity sequence as n-3^m with the rules (3n+b)/2 and n/2, where b = 4*3^m+1. You can take advantage of the fact that multiples of b in a 3n+b system will behave just like 3n+1, so you can simulate 3n+1 within 3n+1 by adding 1 before each step and adjusting n so that the 3n+b n is a multiple of b. This is probably confusing but I want to keep this post concise so please ask for clarification and examples if that would be helpful. I wasn’t able to get good feedback on this observation and it doesn’t seem to have a trivial mechanism so I really want to investigate it more.
Equivalent algorithm: This is a related observation that led to me finding the above. Take any starting number n, and a variable m which begins as m = 0. Repeat the following steps for each iteration: Add 3^m to n. If n is odd, do a shortcut step (3n+1)/2 and increase m by 1. If n is even, divide n by 2. The number n-3^m follows the Collatz sequence for n - 1.
I would say what interests me most about Collatz right now is the prospect of finding a counterexample. Particularly a cycle. I’m only beginning to consider what that would even entail. Yes, from a purely probabilistic standpoint, the chances that one exists is astronomically low, but we all know that Collatz isn’t purely probabilistic.
To this end, one of my current objectives is to collect and analyze data from rational cycles (3n+b cycles). I’ve amassed lots of Python programs which generate and process numbers and vectors in all sorts of different ways. A crazy hypothesis I have is that the information on how to build a cycle in a given 3n+b system, including 3n+1 if it exists, is accessible as you build the vector. For example, the first cycle in 3n+5 after ‘10’ is ‘11100’. With enough data, and maybe with some kind of machine learning (with which I have no experience), maybe it’s possible to find a set of rules a program can use such that, for example, when you tell it to use 3n+5 and come up with a cycle that isn’t the ‘10’ cycle, it will come up with the bits 1, 1, 1, 0, 0, algorithmically by generating metrics on the current vector and consulting the rules every time it adds a step. Again, this is just a crazy idea and only represents my current line of thinking, which is ever-changing.
Oh yeah, and I’m also interested in visualizations. I mean, if I listed everything that interested me I would never stop.
This is all just a small but relevant selection of things. I’m always happy to talk Collatz with people and I plan on joining in on your threads. If anyone has anything to say about anything I brought up here, I would be happy to discuss. Thanks!