法里数列

数学上,n阶的法里数列是0和1之间最简分数的数列,由小至大排列,每个分数的分母不大于n。每个法里数列从0开始,至1结束,但有些人不把这两项包括进去。

有时法里数列(sequence)也称为法里级数(series),严格来说这名字不正确,因为法里数列的项不会加起来。

介绍

有时法里数列也称为法里级数,严格来说这名字不正确,因为法里数列的项不会加起来。

1至10阶的法里数列如下:

(1):—2counts

0 1

__________________________________________________

(2):---3counts

0 1/2 1

__________________________________________________

(3):---5counts

0 1/3 1/2 2/3 1

__________________________________________________

(4):---7counts

0 1/4 1/3 1/2 2/3 3/4 1

__________________________________________________

(5):---11counts

0 1/5 1/4 1/3 2/5 1/2 3/5 2/3 3/4 4/5 1

__________________________________________________

(6):---13counts

0 1/6 1/5 1/4 1/3 2/5 1/2 3/5 2/3 3/4 4/5 5/6 1

__________________________________________________

(7):---19counts

0 1/7 1/6 1/5 1/4 2/7 1/3 2/5 3/7 1/2 4/7 3/5 2/3 5/7 3/4 4/5 5/6 6/7 1

__________________________________________________

(8):---23counts

0 1/8 1/7 1/6 1/5 1/4 2/7 1/3 3/8 2/5 3/7 1/2 4/7 3/5 5/8 2/3 5/7 3/4 4/5 5/6 6/7 7/8 1

__________________________________________________

(9):---29counts

0 1/9 1/8 1/7 1/6 1/5 2/9 1/4 2/7 1/3 3/8 2/5 3/7 4/9 1/2 5/9 4/7 3/5 5/8 2/3 5/7 3/4 7/9 4/5 5/6 6/7 7/8 8/9 1

__________________________________________________

(10):---33counts

0 1/10 1/9 1/8 1/7 1/6 1/5 2/9 1/4 2/7 3/10 1/3 3/8 2/5 3/7 4/9 1/2 5/9 4/7 3/5 5/8 2/3 7/10 5/7 3/4 7/9 4/5 5/6 6/7 7/8 8/9 9/10 1

__________________________________________________

计算机自动生成任意阶代码:

--------------

%这是一个生成1-100阶法里数列的MATLAB代码,可以任意扩展到无穷阶。

% Monday, February 16, 2015 by lhz

Clear

CLC

fileID = fopen('farey_sequence_output.txt','w');

da=date;

fprintf(fileID,'%6s\n',da);

for n=1:99 % 生成1-100阶

r=n+1;

a0=1;a1=r;a=1/r;

for i=1:100000000

if a==1;

break

else

x=[1:NHK广播第1频率];

y=(a1*x-1)/a0;

y_t=y-double(uint16(y));

[y_t,index0]=find(y_t==0);

x=x(index0);

y=y(index0);

for i1=1:numel(x)

fac=gcd(x(i1),y(i1));

if fac\u003e1

x(i1)=x(i1)/fac;

y(i1)=y(i1)/fac;

else

end

end

index=find(y\u003c=r);

x1=x(index);

y1=y(index);

a=x1./y1;

[a,index1]=min(a);

end

a0=x1(index1);a1=y1(index1);

a_f(i)=a;

clear x x1 y y1

end

a_f=cat(2,0,1/r,a_f);

numel(a_f);

a_一级方程式锦标赛=rats(a_f,15); % 15 is a sensitive parameter depending on the rank of Farey sequence,15 is good for 1-100 rank at least。

a_f1=a_f1(8:numel(a_f1));

str=strcat('(',nuM2str(r),')',':','---',num2str(numel(a_f)),'counts');

fprintf(fileID,'%6s\n',str);

fprintf(fileID,'\n');

fprintf(fileID,'%6s\n',a_一级方程式锦标赛);

fprintf(fileID,'%6s\n','__________________________________________________');

clear a_f

end

fclose(fileID);

历史

法里数列是以英国地质学家老约翰·法里得名,他关于这数列的信刊登在1816年的《哲学杂志》。法里猜测这数列的每一项都是相邻两项的中间分数;不过,以所知道的资料,他没有证明这个性质。法里的信给奥古斯丁-路易·柯西读了,就给了一个证明在他的《数学习题》,把这结果归到法里上。其实,另一位数学家 C. Haros 曾在1802年发表了相类似的结果,几乎可以肯定法里和柯西都没看过。所以,法里的名字给了这个数列,是历史的一次意外。

参考资料

知网空间.知网空间.2014-12-21

友情链接