Irish Logarithms
   HOME

TheInfoList



OR:

Irish logarithms were a system of number manipulation invented by
Percy Ludgate Percy Edwin Ludgate (2 August 1883 – 16 October 1922) was an Irish amateur scientist who designed the second analytical engine (general-purpose Turing-complete computer) in history. Life Ludgate was born on 2 August 1883 in Skibbereen, ...
for machine multiplication. The system used a combination of mechanical cams as look-up tables and mechanical addition to sum pseudo-logarithmic indices to produce partial products, which were then added to produce results. The technique is similar to Zech logarithms (also known as Jacobi logarithms), but uses a system of indices original to Ludgate. Ludgate's algorithm compresses the multiplication of two single decimal numbers into two table lookups (to convert the digits into indices), the addition of the two indices to create a new index which is input to a second lookup table that generates the output product. Because both lookup tables are one-dimensional, and the addition of linear movements is simple to implement mechanically, this allows a less complex mechanism than would be needed to implement a two-dimensional 10x10 multiplication lookup table.


Pseudocode

The following is an implementation of Ludgate's Irish logarithm algorithm in the
Python Python may refer to: Snakes * Pythonidae, a family of nonvenomous snakes found in Africa, Asia, and Australia ** ''Python'' (genus), a genus of Pythonidae found in Africa and Asia * Python (mythology), a mythical serpent Computing * Python (pro ...
programming language: table1 = 0, 0, 1, 7, 2, 23, 8, 33, 3, 14 table2 = [ 1, 2, 4, 8, 16, 32, 64, 3, 6, 12, 24, 48, 0, 0, 9, 18, 36, 72, 0, 0, 0, 27, 54, 5, 10, 20, 40, 0, 81, 0, 15, 30, 0, 7, 14, 28, 56, 45, 0, 0, 21, 42, 0, 0, 0, 0, 25, 63, 0, 0, 0, 0, 0, 0, 0, 0, 35, 0, 0, 0, 0, 0, 0, 0, 0, 0, 49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] def product(a, b): return table2[table1[a] + table1[b Table 1 is taken from Ludgate's original paper; given the first table, the contents of Table 2 can be trivially derived from Table 1 and the definition of the algorithm. Note since that the last third of the second table is entirely zeros, this could be exploited to further simplify a mechanical implementation of the algorithm.


See also

* Faber-Castell Model 366, a slide rule operating on a similar principle designed by Johannes Schumacher


References


Further reading

* Boys, C.V., "A New Analytical Engine," ''Nature'', Vol. 81, No. 2070, July 1, 1904, pp. 14–15. * Randell, B., "Ludgate's analytical machine of 1909", ''The Computer Journal'', Volume 14, Issue 3, 1971, Pages 317–326, https://doi.org/10.1093/comjnl/14.3.317 Includes the text of Ludgate's original paper.


External links


A detailed treatment of Ludgate's Irish Logarithms
Brian Coghlan, 2019 (Archived fro
original link
* Transcript of

by Percy Ludgate (first published in ''Scientific Proceedings of the Royal Dublin Society'' 1909 vol 12 pages 77–91), containing Ludgate's own description of the Irish logarithm tables
A reproduction of Ludgate's original 1909 paper
from {{Cite book, title=The origins of digital computers : selected papers, date=1973, publisher=Springer-Verlag, others=Randell, Brian, 1936-, isbn=978-3-642-96145-8, location=Berlin, oclc=858931618, page=71
Method for deriving Ludgate's Irish Logarithms from first principles
Brian Coghlan, 2022) Mechanical calculators Multiplication Algorithms Irish inventions