ルーカス数列は,フィボナッチ数列から生成される。
Fibonacci numbers are define by: Fn=Fn-1 + Fn-2
Lucas numbers are define by: Ln=Fn + 2Fn-1
フィボナッチ数列のときと同じようにして,
import scipy as sp
n = 100000
tbl = sp.zeros(10, dtype=int)
a, b = 1, 3
tbl[1], tbl[3] = 1, 1
for i in range(2, n):
a, b = b, a+b
tbl[int(str(b)[0])] += 1
print(tbl[1:])
これによって,先頭桁が 1 ~ 9 である項数が以下のようであることが分かる。
[30104 17609 12494 9691 7919 6695 5799 5115 4574]
フィボナッチ数列の場合は
[30103 17610 12494 9690 7918 6695 5798 5117 4575]
だったので,ほとんど同じである。両方ともベンフォードの法則にしたがうといえる。
それにしても,実に良く一致している。