# hp41programs

Farey Farey Sequences for the HP-41

Overview

-The Farey sequence Fn is the list of  N rational number  { a1/b1 = 0/1 ; a2/b2 = 1/n ; ....... ; aN/bN = 1/1 } sorted in increasing order
whith  0 <= ak <= bk <= n  ;  GCD(ak;bk) = 1

-The following program uses the formulae:  ak+1 =  ak.mk - ak-1  ;  bk+1 =  bk.mk - bk-1    where  mk = INT( (bk-1+ n)/bk )

F1 = { 0/1 ; 1/1 }
F2 = { 0/1 ; 1/2 ; 1/1 }
F3 = { 0/1 ; 1/3 ; 1/2 ; 2/3 ; 1/1 }
F4 = { 0/1 ; 1/4 ; 1/3 ; 1/2 ; 2/3 ; 3/4 ; 1/1 }
.............................. etc .............................

Program Listing

Data Registers:  R00 = n ;  R01 = ak-1 ; R02 = bk-1 ; R03 = k ; When the routine stops, R03 = X-register = N = the number of elements in the list.
Flag:   F29
Subroutines: /

-Line 33 is   append   /

 01  LBL "FAREY" 02  STO 00 03  STO 02 04  0 05  STO 03 06  SIGN 07  CHS 08  STO 01 09  ST+ 02 10  LBL 01 11  ISG 03 12  CLX 13  RCL 00 14  RCL 02           15  + 16  R^ 17  / 18  INT 19  ENTER^ 20  R^ 21  ST* Y 22  X<> 02           23  - 24  X<>Y 25  R^ 26  ST* Y 27  X<> 01 28  - 29  FIX 0 30  CF 29 31  " " 32  ARCL X          33  "~/" 34  ARCL Y 35  FIX 4 36  SF 29 37  AVIEW 38  X#Y? 39  GTO 01           40  RCL 03 41  CLA 42  END

( 68 bytes / SIZE 004 )

 STACK INPUTS ... AVIEW ... OUTPUTS Y / bk / X n ak N(n)

where N(n) = the number of fractions

Example:

5   XEQ "FAREY"  >>>>   0/1  1/5  1/4  1/3  2/5  1/2  3/5  2/3  3/4  4/5  1/1

and     X-register = 11 = the number of terms in this Farey sequence = R03.

References:

[1]  John H. Conway  & Richard K. Guy - "The Book of Numbers"  - Springer Verlag -  ISBN  0-387-97993-X
[2]  Robert Pulluard - "La HP-48 en Liberté" - D3i Diffusion - ISBN 2-908791-16-1 ( in French )