Tableless Calculation of Circular Functions on Dyadic Rationals

Peter Kourzanov
(TU Delft)

I would like to tell a story. A story about a beautiful mathematical relationship that elucidates the computational view on the classic subject of trigonometry. All stories need a language, and for this particular story an algorithmic language ought to do well. What makes a language algorithmic? From our perspective as the functional programming community, an algorithmic language provides means to express computation in terms of functions, with no implementation-imposed limitations. We de- velop a new algorithm for the computation of trigonometric functions on dyadic rationals, together with the language used to express it, in Scheme. We provide a mechanically-derived algorithm for the computation of the inverses of our target functions. We address efficiency and accuracy concerns that pertain to the implementation of the proposed algorithm either in hardware or software.

In Jeremy Gibbons and Max S. New: Proceedings Ninth Workshop on Mathematically Structured Functional Programming (MSFP 2022), Munich, Germany, 2nd April 2022, Electronic Proceedings in Theoretical Computer Science 360, pp. 45–70.
Published: 30th June 2022.

ArXived at: https://dx.doi.org/10.4204/EPTCS.360.3 bibtex PDF
References in reconstructed bibtex, XML and HTML format (approximated).
Comments and questions to: eptcs@eptcs.org
For website issues: webmaster@eptcs.org