@collagen, this is great. If I understand right, your bound \cfrac{3^x(x/3)}{2^k-3^x} is not only tighter than \cfrac{3^x(x/2)}{2^k-3^x}, but also more flexible, since the proof of the latter is restricted to k=\lceil x \log_2 3 \rceil, while the former is proven for any k > x \log_2 3. Fixing that problem motivated the first post in this thread.
I ran some numeric checks. Below, f(v_h) is a rational number that returns to itself after k steps. (It’s the largest among the minimal members of all rational cycles that do so, so it’s most “testing” of any upper bound.)
For k=66,x=41,b=1,
f(v_h) = \cfrac{519869004464865760111}{37313979917667420061} \approx 13.9
\cfrac{x}{(b+1)\ln 2} \approx 0.72 \cdot 41 = 29.52
\cfrac{x}{3(2^b-1)} \approx 13.66
For k=67,x=41,b=2,
f(v_h) = \cfrac{776800962102176080751}{111100956212505626525} \approx 6.99
\cfrac{x}{(b+1)\ln 2} \approx 19.71
\cfrac{x}{3(2^b-1)} \approx 4.55
For k=68,x=41,b=3,
f(v_h) = \cfrac{1228809109959019553647}{258674908802182039453} \approx 4.75
\cfrac{x}{(b+1)\ln 2} \approx 14.78
\cfrac{x}{3(2^b-1)} \approx 1.95
To explain this data, I’m gonna guess that your bound applies to all (putative) integer cycles, while mine applies to all rational cycles.
Do you think that’s right?