Returns the Farey sequence of order \(n\)

farey(n, print=FALSE, give.series = FALSE)

Arguments

n

Order of Farey sequence

print

Boolean, with TRUE meaning to print out the text version of the Farey sequence in human-readable form. Default value of FALSE means not to print anything

give.series

Boolean, with TRUE meaning to return the series explicitly, and default FALSE meaning to return a 3 dimensional array as detailed below

Details

If give.series takes its default value of FALSE, return a matrix a of dimension c(2,u) where u is a (complicated) function of n. If v <- a[i,], then v[1]/v[2] is the \(i^{\mathrm{th}}\) term of the Farey sequence. Note that det(a[(n):(n+1),])== -1

If give.series is TRUE, then return a matrix a of size c(4,u-1). If v <- a[i,], then v[1]/v[2] and v[3]/v[4] are successive pairs of the Farey sequence. Note that det(matrix(a[,i],2,2))== -1

References

G. H. Hardy and E. M. Wright 1985. An introduction to the theory of numbers, Oxford University Press (fifth edition)

Author

Robin K. S. Hankin

See also

Examples

farey(3)
#>      [,1] [,2] [,3] [,4]
#> [1,]    0    1    1    2
#> [2,]    1    3    2    3
#> [3,]    1    1    2    1
#> [4,]    3    2    3    1