Logjam 3: Tabling some vulgarity
Armed with the knowledge of the previous section, I made code to generate a crude table for base-10 logarithms (click on “Make table”) and compared the values with what the computer came up with (obviously much more accurate).
Generate log10x estimates
Base (b): |
The javascript code generates a list of powers of the given base (initially 1.1) up to and just beyond 10, and then uses linear interpolation between the whole number values to give an estimate for \(\log_{b}\) for any value of x. To translate to base-10, one just needs to calculate the scaling factor to give \(\log_{10}10 = 1\). Looking at the two result columns, I see that my effort achieves 3-figure accuracy for \(b = 1.1\). Using 1.01 instead of 1.1 gives 5-figure accuracy for the vaules of x listed above, and I expect more generally for the range 1–10. Some improvement might be expected from higher order (quadratic or cubic) interpolation methods, but my purpose is not to create great tables, but rather to see how they might be derived without resorting to calculus, power series and so on.
The logarithms as mathematical objects trace back to John Napier (1550–1617), a Scots aristocrat. From English translations of a posthumous publication in Latin (1619), I surmise that his main focus was providing means to ease trigonometric calculations, but the text is quite difficult to follow. Napier did publish tables, with instructions for use, before he died (1614), also in Latin. On the tricentenary of this publication (1914), E.W. Hobson gave a lecture on the discovery, claiming that Napier’s description of the construction was “clear”. To him, maybe. I don’t remember any celebrations in 2014. Perhaps, this has to do with the rise of electronic devices making logarithms “useless”. Intel’s technique for calculating logaithms and so on in its IA-64 chips is at this link.