login
a(n) = smallest k such that Fibonacci(k) = n, or -1 if n is not a Fibonacci number.
1

%I #11 May 13 2023 15:29:12

%S 0,1,3,4,-1,5,-1,-1,6,-1,-1,-1,-1,7,-1,-1,-1,-1,-1,-1,-1,8,-1,-1,-1,

%T -1,-1,-1,-1,-1,-1,-1,-1,-1,9,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,

%U -1,-1,-1,-1,-1,-1,-1,10,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,11

%N a(n) = smallest k such that Fibonacci(k) = n, or -1 if n is not a Fibonacci number.

%t Module[{nn=11,fibs},fibs=Fibonacci[Range[nn]];Join[{0},Drop[Flatten[Table[If[MemberQ[ fibs,n],Position[fibs,n],-1],{n,Range[Last[fibs]]}]],{2}]]] (* _Harvey P. Dale_, May 13 2023 *)

%o (Python)

%o from sympy import log, ceiling, sqrt, S

%o from sympy.ntheory.primetest import is_square

%o def A361508(n): return n if n<=1 else (ceiling(log(n*sqrt(5)-S.Half,(1+sqrt(5))/2)) if is_square(m:=5*n**2-4) or is_square(m+8) else -1) # _Chai Wah Wu_, Mar 30 2023

%Y Cf. A000045, A010056.

%K sign

%O 0,3

%A _N. J. A. Sloane_, Mar 30 2023