Ирски логаритам

Ирски логаритaм ― поранешен систем за манипулација со броеви измислен од Перси Лудгејт за машинско множење. Системот користел комбинација од механички камери како табели за пребарување и механичко додавање на збирните псевдологаритамски индекси за производство на делумни производи, кои потоа биле додавани за да се добијат резултати. Техниката е слична на Цеховиот логаритам (исто така познат како Јакобиев логаритам), но користи систем на индекси изворни на Лудгејт.

Алгоритмот на Лудгејт го збива множењето на два единечни децимални броеви во две пребарување на табели (за претворање на цифрите во индекси), додавањето на двата индекса за да се создаде нов индекс кој е влезен во втората табела за пребарување што го создава излезниот производ. Бидејќи и двете табели за пребарување се еднодимензионални, а додавањето на линеарни движења е едноставно механички имплементирано, ова овозможува помалку сложен механизам отколку што би бил потребен за имплементација на дводимензионална табела за пребарување множење 10x10.

 Псевдокод 
Следното е применување на ирскиот логаритам на Лудгејт во програмскиот јазик Python:table1 = [50, 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]]Табела 1 е преземена од изворниот труд на Лудгејт; со оглед на првата табела, содржината на Табела 2 може тривијално да се изведе од Табела 1 и дефиницијата на алгоритмот. Имајте предвид дека последната третина од втората табела е целосно нули, ова може да се искористи за дополнително да се поедностави механичката примена на алгоритмот.

 Поврзано 

 Фабер-Кастел модел 366, правило за слајдови што функционира на слично начело дизајниран од Јоханес Шумахер

 Наводи 

 Дополнителна литература 

 Boys, C.V., „A New Analytical Engine“, Nature, км. 81, бр. 2070, 1 јули 1904 година, стр. 14–15.
 Randell, B., „Ludgate's analytical machine of 1909“, The Computer Journal, том 14, број 3, 1971 година, страници 317–326, https://doi.org/10.1093/comjnl/14.3.317 Го вклучува текстот на Лудгејтовиот изворен труд.

 Надворешни врски 
 A detailed treatment of Ludgate's Irish Logarithms, Brian Coghlan, 2019 (Archived from original link)
 Transcript of "On a Proposed Analytical Machine" 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 
 Method for deriving Ludgate's Irish Logarithms from first principles, Brian Coghlan, 2022)

Категорија:Алгоритми
Категорија:Множење
Категорија:Ирски пронајдоци
Категорија:Механички пресметувачи