login

Year-end appeal: Please make a donation to the OEIS Foundation to support ongoing development and maintenance of the OEIS. We are now in our 61st year, we have over 378,000 sequences, and we’ve reached 11,000 citations (which often say “discovered thanks to the OEIS”).

Inputs n that yield a record-breaking value of A008908(n)/(log_2(n)+1) for the Collatz conjecture.
0

%I #37 Aug 21 2021 05:54:19

%S 1,3,7,9,27,26623,35655,52527,142587,156159,230631,626331,837799,

%T 1723519,3542887,3732423,5649499,6649279,8400511,63728127,

%U 3743559068799,100759293214567,104899295810901231

%N Inputs n that yield a record-breaking value of A008908(n)/(log_2(n)+1) for the Collatz conjecture.

%C The metric A008908(n)/(log_2(n)+1) is always equal to 1 for any power of 2 (where 1 is the smallest possible value).

%H <a href="/index/3#3x1">Index entries for sequences related to 3x+1 (or Collatz) problem</a>

%e a(1) = 1, which is trivial, because the first element in any sequence is record setting.

%e a(5) = 27, because A008908(n)/(log_2(n)+1) yields a maximum value at n=27 among the first 27 elements, and there are 4 record-breaking elements beforehand.

%o (Python)

%o import math

%o oeis_A006877 = [1, 2, 3, 6, 7, 9, 18, 25, 27, 54, 73, 97, 129, 171, 231, 313, 327, 649, 703, 871, 1161, 2223, 2463, 2919, 3711, 6171, 10971, 13255, 17647, 23529, 26623, 34239, 35655, 52527, 77031, 10623, 142587, 156159, 216367, 230631, 410011, 511935, 626331, 837799, 1117065, 1501353, 1723519, 2298025, 3064033, 3542887, 3732423, 5649499, 6649279, 8400511, 11200681, 14934241, 15733191, 31466382, 36791535, 63728127]

%o def stopping_time(n):

%o time = 1

%o while n>1:

%o n = 3*n + 1 if n & 1 else n//2

%o time += 1

%o return time

%o def stopping_time_metric(n):

%o time = stopping_time(n)

%o logarithmic_distance = (math.log(n, 2)+1)

%o return float(time/logarithmic_distance)

%o result = []

%o record_input = oeis_A006877[0]

%o record_stopping_time_metric = stopping_time_metric(record_input)

%o result.append(record_input)

%o for n in range(1, len(oeis_A006877)):

%o current_input = oeis_A006877[n]

%o current_stopping_time_metric = stopping_time_metric(current_input)

%o if current_stopping_time_metric > record_stopping_time_metric:

%o record_input = current_input

%o record_stopping_time_metric = current_stopping_time_metric

%o result.append(record_input)

%o for n in range(len(result)):

%o print(result[n], end=", ")

%Y Cf. A008908, A006877, A033492.

%K nonn,more

%O 1,2

%A _Matthew Russell Downey_, Dec 10 2020