I am about to start a distributed computing project to check the convergence of the Collatz problem. So far, the convergence of the problem has been verified for all numbers below $87 \times 2^{60} \approx 2^{66.4}$. See this question for details.
The algorithm which I intend to use is described here. After some thought, I have decided to divide the problem into sub-problems, each having the size of $2^{40}$ numbers. Now I am facing a question of how to verify that each sub-problem has been verified correctly (i.e. the worker does not cheat).
For convenience, the algorithm which verifies a particular $n = n_0$ is as follows: \begin{align} \text{repeat} &~ \\ n &← n + 1 \\ \alpha &← \operatorname{ctz}(n) \\ n &← n × 3^\alpha / 2^\alpha \\ n &← n − 1 \\ \beta &← \operatorname{ctz}(n) \\ n &← n / 2^{\beta} \\ \text{until } &~ n < n_0\text{,} \end{align} where the $\operatorname{ctz}$ is the count trailing zeros operator.
My idea so far is to sum all the $\alpha$s (or $\beta$s, or both) for all $n$ inside the specified sub-problem ($2^{40}$ numbers). This sum seems to be quite independent of the magnitude of the numbers tested. Someone else could then independently verify this checksum (i.e. double-checking). Is this a good way or do you have a better idea (to prevent cheating)?