login
a(1) = 1; for n>1, a(n) = smallest number > a(n-1) such that a(1)*a(2)*...*a(n) + 1 is a Fibonacci number.
0

%I #16 Mar 14 2020 17:21:29

%S 1,2,6,133,97479304649455554938377

%N a(1) = 1; for n>1, a(n) = smallest number > a(n-1) such that a(1)*a(2)*...*a(n) + 1 is a Fibonacci number.

%C a(6) = (Fibonacci(7937)-1)/(a(2)*a(3)*a(4)*a(5)) has 1633 digits and it is thus too large to be included in Data section or in a b-file. - _Giovanni Resta_, Jul 05 2016

%e After a(1)=1 and a(2)=2, we want m, the smallest number > 2 such that 1*2*m+1 is a Fibonacci number: this is m = 6 = a(3).

%t a[1] = 1; a[n_] := a[n] = Block[{p = Times @@ Array[a, n-1], i, m}, For[i=2, ! (IntegerQ[m = (Fibonacci[i] - 1)/p] && m > a[n-1]), i++]; m]; Array[a, 6] (* _Giovanni Resta_, Jul 05 2016 *)

%o (Sage)

%o product = 1

%o seq = [ product ]

%o prev_fib_index = 0

%o max_n = 5

%o for n in range(2, max_n+1):

%o fib_index = prev_fib_index + 1

%o found = False

%o while not found:

%o fib_minus_1 = fibonacci(fib_index) - 1

%o if product.divides(fib_minus_1):

%o m = int( fib_minus_1 / product )

%o if m > seq[-1]:

%o product = product * m

%o seq.append( m )

%o found = True

%o prev_fib_index = fib_index

%o break

%o fib_index += 1

%o print(seq)

%Y Cf. A000045, A046966.

%K nonn

%O 1,2

%A _Robert C. Lyons_, Jul 04 2016

%E a(5) from _Giovanni Resta_, Jul 05 2016