The Collatz conjecture by a DIFFERENT point of view
In the past, I have already dealt with the Collatz conjecture, a fascinating topic because it is simple to verify but impossible to demonstrate at the same time (www.facultiesofthesoul.com/collatz-conjecture).
I have recently been sent an article regarding the possibility of seeing Collatz in binary notation by my friend Vincs (Aka Vincenzo Sambito), an enthusiast and scholar of the most interesting enigmas of mathematics. I have already collaborated with him on the sidelines of his conjecture on the creation of increasingly larger prime numbers through primorial numbers (www.facultiesofthesoul.com/generate-primes-by-primorials).
About this topic, you can look at his website www.vincs.it.
The author, goliardically, wanted to call his reinterpretation "The Vincs-Collatz bisconjecture " VincS also claims that he has got a wonderful demonstration of his conjecture but, unfortunately, it doesn’t fit in the margin of this page.
The VincS-Collatz bisconjecture
For those who don't know it, we propose the famous VincS-Collatz bisconjecture below. The classic Collatz conjecture supposes that if, to any natural number n (excluding zero), the passage (group of logical/arithmetic operations) is applied cyclically “• if even, n/2 • if odd, n*3+1”, it always reduces to 1. For more information on the Collatz conjecture, the literature is extensive and easily available. Let us instead see what the VincS-Collatz bisconjecture supposes.
Premise:
Every natural number can be expressed as a sum of powers of 2. For example 5=2^2+2^0. The evidence for this is clear if the natural number is expressed in binary notation. When we talk about "decomposition" it will therefore be necessary to specify whether in terms of "product of prime factors, possibly raised to an exponent" or as "sum of powers of 2". We will indicate with the suffix “b” the numbers expressed in binary notation. We will indicate with the suffix “d” the numbers expressed in decimal notation. 5d = 101b, …. 10d = 1010b, …. 256d = 100000000b
The VincS-Collatz bisconjecture assumes that:
Take any natural number (excluding zero) and subject it repeatedly to these steps until the cycle exit conditions, defined in point 1., are reached:
-
if the number (the input number or the exit number at the final point of this passage) is equivalent to any power of 2 (including zero or 2^0=1), the cycle is exited!
-
the number is multiplied by a "multiplier" (an integer natural number greater than 0)
-
the smallest power of 2 that makes up the number itself is added to the number obtained (compound as the sum of powers of 2)
The VincS-Collatz bisconjecture states that, whatever the initial number, for a "multiplier" equal to 1, 2 or 3, the exit from the cycle will be always as described in point 1. of the passage.
Considerations:
it can easily be demonstrated that the VincS-Collatz bisconjecture is completely analogous to the Collatz conjecture where the "multiplier" is equal to 3. When the VincS-Collatz bisconjecture will be proven, the Collatz conjecture will be proven as well. Reasoning with the powers of 2 in decimal notation hides some calculation difficulties. Reasoning in binary notation makes the calculations much simpler and of considerable visual impact for our reasoning on the Collatz conjecture and the VincS-Collatz bisconjecture. In reality, this way of looking at the Collatz conjecture is not even original. However, the author adds, in his conjecture, the variants of the multiplier that are 1 and 2, in addition to the canonical 3. It may seem trivial and perhaps it really is.
See, here below, how it works!
Note on the left side the exact equivalence of “classic Collatz” numbers with the VincS-Collatz numbers.

Note:
“inc” is the increaser and represents the smallest power of 2 into which the number can be decomposed, in sum of powers of 2, after being multiplied by 3. It is the analogue of 1, which is added, after multiplying by 3, in the classical Collatz conjecture. In the example shown, the final number, which allows exit from the cycle, is 100000000000000000000b = 1048576d which is exactly a power of 2 or 2^20 (2 raised to the power of 20). With the classical Collatz conjecture, it takes 26 cycles to get to 1 (because divisions by 2 are included). With the VincS-Collatz bisconjecture it only takes 6 steps because it avoids the steps where you divide by 2 when the number is even. In the example above you will be able to notice, in the first column, that the numbers that are generated, step after step, are completely similar (if taken from the most significant bit 1 to the least significant bit 1) to those of the classic conjecture of Collatz (alternatively, exactly equal before they are multiplied by 3 and deficient by 1 before 1 is added to them). The analogy with the classic Collatz conjecture is also evident from the fact that the exponent of 2 at the exit of the cycle is equal to the number of divisions by 2 that are carried out with the classic Collatz algorithm to exit the cycle with 1.
The analogy between the Collatz conjecture and the VincS-Collatz bisconjecture
It can easily be shown that the VincS-Collatz bisconjecture is completely analogous to the Collatz conjecture for the “multiplier” equal to 3. Once the VincS-Collatz bisconjecture is proven for this multiplier, the Collatz conjecture will also be proven. Thinking in binary notation also makes the analogy evident visually. First of all, we point out how, in the example just shown, the exponent of the power of 2 of the number exiting the cycle, i.e. 2^20, is equal to the number of divisions by 2, in the classical Collatz development, for the same number 1325. That is there are 20 divisions by 2 in the development of the classical Collatz conjecture for the same input number. I have personally developed many examples and this analogy has always manifested itself. It is not just an observation but can also be easily demonstrated. It seems to offend the reader's intelligence to want to explain the proof here.
Division by 2, until the number becomes odd, is trivial but not in a derogatory sense. That is, it adds nothing to keep the number multiplied to the power of 2 equivalent to the current passage. If this is not obvious when working in decimal notation, it becomes obvious in binary notation. The Collatz loop, in the *3+1 part, pushes the least significant 1 bit inexorably to the left. When the number becomes even, it means that some bits have been added to the 0 on the right. Removing a bit from 0 on the right means dividing by 2. Precisely for this reason, if you consider odd numbers, you can consider the number, relating to each step, from the most significant bit 1 on the left to the least significant bit 1 on the right. All 0 bits to the right of it, i.e. to the right of the rightmost least significant 1 bit, can be “ignored” or, if you prefer another term, “set aside”.
In binary notation, the analogy is evident even if we start with an even number. In fact, if there are zeros on the right, they will continue to be ignored, as will the first series of divisions by 2 in classical Collatz, if the starting number is even. Among other things, the link between the number of divisions by 2 of classical Collatz and the power of 2 resulting from the VincS-Collatz bisconjecture is preserved.
001010000b = inputNumber
011110000b = inputNumber * 3
increaser
00010000b
inputNumber*3+increaser
100000000b
From what you can see in the example above, starting with the number 5 or starting with the number 80 is identical if the VincS-Collatz bisconjecture is applied. The loop exits with an exact power of 2, with the same number of steps, regardless of the number of zeros queued in the least significant bits of the starting number. I am sure that a forest could have been saved if this simple reasoning had been applied to the classical Collatz conjecture for the numbers 5, 10, 20, 40, 80, 160, etc., but also 13, 26, 52, 104, 208, etc., and so on. In the following considerations and examples, we will neglect this aspect and take it for granted that we always start from an odd number, without in any way affecting the value of the same and of the final proof.
Thanks
Last but not least, I thank my friend Silvio Gabbianelli for reawakening my interest in a work that began in the first days of 2021 and had been lying in a drawer for some time. I also thank him for keeping me company in these last months and for having written the first program in Python that experimentally validates the VincS-Collatz bisconjecture.
Here is the output of his program that implements my algorithm, updated to today 26 February 2025, for input number 55 and multiplier 3. It will remain in history as the first validation of the VincS-Collatz bisconjecture.

Python programs (by Silvio Gabbianelli)
After having reported the VincS-Collatz bisconjecture, below you will find examples and the two Python programs I developed for the implementations, the classic one where I report the numbers of the steps also in binary notation and that of my friend Vincenzo Sambito (aka VincS).
To abbreviate I will use small numbers that need a few steps to reach the conclusion but in theory larger numbers can also be inserted.
Example file implementing the classical Collatz conjecture:
Program to implement Collatz conjecture from every positive integer)
Edited by Gasbion 02/2025
Enter a positive integer: 7
10110 22
1011 11
100010 34
10001 17
110100 52
11010 26
1101 13
101000 40
10100 20
1010 10
101 5
10000 16
1000 8
100 4
10 2
1 1
(11, 'steps down') (5, 'steps up)', (16, 'total steps'))
Now an example with the same number with the program I developed to implement the conjecture of my friend Vincenzo equivalent to the classical one, the program is limited to 300 steps but can be modified to go beyond this number:
Program to implement VincS Collatz bis conjecture from every positive integer)
Edited by Gasbion 02/2025
If True return last x as a 2 power
Enter a positive integer in binary notation: 111
Iteration, 1: x0=('111', 7), k0=('10101', 21), fi=('1', 1), x=('10110', 22)
Iteration, 2: x0=('10101', 21), k0=('1000010', 66), fi=('10', 2), x=('1000100', 68)
Iteration, 3: x0=('1000010', 66), k0=('11001100', 204), fi=('100', 4), x=('11010000', 208)
Iteration, 4: x0=('11001100', 204), k0=('1001110000', 624), fi=('10000', 16), x=('1010000000', 640)
Iteration, 5: x0=('1001110000', 624), k0=('11110000000', 1920), fi=('10000000', 128), x=('100000000000', 2048)
Note how the number of steps up coincides in the two conjectures, the steps down coincides with te exponent of the 2 powers of last value of x. Below you will find the codes of the two programs that you can try by copying them onto the appropriate Python IDLE.
First program:
# -*- coding: cp1252 -*-
def nBin(n):
binario = bin(n)[2:]
return binario
while True:
n=0
def main():
print ("Program to implement Collatz conjecture from every positive integer)")
print ("Edited by Gasbion 02/2025")
n=int(input("Enter a positive integer: "))
a=0
b=0
while(n>0):
if n%2==0:
n=int(n/2)
print (nBin(n), (n))#, (n)%9#, totient(n)
a=a+1
else:
n=3*n+1
print (nBin(n), (n))#,(n)#%9, totient(n)
b=b+1
if(n==1):
print((a, "steps down"), (b, "steps up)", (a+b, "total steps")))
break
if __name__=='__main__':
main()
ans = raw_input('wish to continue? y=yes' )
if not 'y' in ans.lower():
exit()
Second program:
while True:
def TP2p(n):
Bitp = 1
while (Bitp & n) == 0:
Bitp <<= 1
return Bitp
def NBin(n):
binario = bin(n)[2:]
return binario
def main():
print ("Program to implement VincS Collatz bis conjecture from every positive integer)")
print ("Edited by Gasbion 02/2025")
print ("If True return last x as a 2 power")
x0 = int(input("Enter a positive integer in binary notation: "), 2)
k0 = x0 * 3
iterazioni = 1
while iterazioni <=300:
fi = TP2p(k0)
x = k0 + fi
if x == 2 ** (x.bit_length() - 1):
print(f"Iteration, {iterazioni}: x0={NBin(x0), x0}, k0={NBin(k0), k0}, fi={NBin(fi), fi}, x={NBin(x), x}")
break
print(f"Iteration, {iterazioni}: x0={NBin(x0), x0}, k0={NBin(k0), k0}, fi={NBin(fi), fi}, x={NBin(x), x}")
x0 = k0
k0 = x * 3
fi = TP2p(k0)
iterazioni += 1
if __name__ == "__main__":
main()