%I #23 Nov 16 2023 15:43:16
%S 1,2,8,2,20,8,16,4,8,20,10,8,28,16,40,8,12,8,6,20,16,10,16,8,100,28,
%T 24,16,14,40,10,16,40,12,80,8,76,6,56,20,40,16,88,10,40,16,32,8,112,
%U 100,24,28,36,24,20,16,24,14,58,40,20,10,16,32,140,40,136,12,16,80,70,8,148,76
%N Pisano period of the 4-Fibonacci numbers A001076.
%C Period of the sequence defined by reading A001076 modulo n.
%H Vincenzo Librandi, <a href="/A175183/b175183.txt">Table of n, a(n) for n = 1..1000</a>
%H Sergio Falcon and Ángel Plaza, <a href="http://dx.doi.org/10.1016/j.chaos.2008.02.014">k-Fibonacci sequences modulo m</a>, Chaos, Solit. Fractals 41 (2009), 497-504.
%H Eric Weisstein's World of Mathematics, <a href="http://mathworld.wolfram.com/PisanoPeriod.html">Pisano period</a>.
%H Wikipedia, <a href="http://en.wikipedia.org/wiki/Pisano_period">Pisano period</a>.
%p F := proc(k,n) option remember; if n <= 1 then n; else k*procname(k,n-1)+procname(k,n-2) ; end if; end proc:
%p Pper := proc(k,m) local cha, zer,n,fmodm ; cha := [] ; zer := [] ; for n from 0 do fmodm := F(k,n) mod m ; cha := [op(cha),fmodm] ; if fmodm = 0 then zer := [op(zer),n] ; end if; if nops(zer) = 5 then break; end if; end do ; if [op(1..zer[2],cha) ] = [ op(zer[2]+1..zer[3],cha) ] and [op(1..zer[2],cha)] = [ op(zer[3]+1..zer[4],cha) ] and [op(1..zer[2],cha)] = [ op(zer[4]+1..zer[5],cha) ] then return zer[2] ; elif [op(1..zer[3],cha) ] = [ op(zer[3]+1..zer[5],cha) ] then return zer[3] ; else return zer[5] ; end if; end proc:
%p k := 4 ; seq( Pper(k,m),m=1..80) ;
%t Table[s = t = Mod[{0, 1}, n]; cnt=1; While[tmp = Mod[4*t[[2]] + t[[1]], n]; t[[1]] = t[[2]]; t[[2]] = tmp; s!= t, cnt++]; cnt, {n, 100}] (* _Vincenzo Librandi_, Dec 20 2012, after _T. D. Noe_ *)
%Y Cf. A001076, A001175, A175181, A175182, A175184, A175185.
%K nonn,easy
%O 1,2
%A _R. J. Mathar_, Mar 01 2010