Історія алгоритму

Історія алгоритму: від Аль-Хорезмі до сучасності

Слово алгоритм походить від імені великого середньоазіатського вченого 8-9 ст. Абу Абдуллах Мухаммеда ібн Мусса аль-Хорезмі. З математичних робіт Аль-Хорезмі до нас дійшли тільки дві - алгебраїчна і арифметична. Друга книга довгий час вважалася втраченою, але в 1857 в бібліотеці Кембріджського університету був знайдений її переклад на латинську мову. У ній описані чотири правила арифметичних дій, практично ті ж, що використовуються і зараз. Перші рядки цієї книги були переведені так: «Сказав Алгоритми. Віддамо належну хвалу Богу, нашому вождю і захиснику ». Так ім'я Аль-Хорезмі перейшло в Алгоритми, звідки і з'явилося слово алгоритм. Термін алгоритм використовувався для позначення чотирьох арифметичних операцій, саме в такому значенні він і увійшов в деякі європейські мови.

Історія алгоритму

Поступово значення слова розширювалося. Вчені починали застосовувати його не тільки до суто обчислювальним, а й до інших математичних процедур. Наприклад, близько 1360 г. французький філософ Микола Орем написав математичний трактат «Algorismus proportionum» ( «Обчислення пропорцій»), в якому вперше використав ступеня з дробовими показниками і фактично впритул підійшов до ідеї логарифмів. Коли ж на зміну абаку прийшов так званий рахунок на лініях, численні керівництва по ньому стали називати «Algorithmus linealis», тобто правила рахунку на лініях.

В 1684 Готфрід Лейбніц в творі «Nova Methodvs pro maximis et minimis, itemque tangentibus ...» вперше використав слово «алгоритм» (Algorithmo) в ще більш широкому сенсі: як систематичний спосіб вирішення проблем диференціального обчислення.

Історія алгоритму

Користувався словом алгоритм і Леонард Ейлер, одна з робіт якого так і називається - «Використання нового алгоритму для вирішення проблеми Пелля» ( «De usu novi algorithmi in problemate Pelliano solvendo»). Розуміння Ейлером алгоритму як синонім способу вирішення завдання вже дуже близько до сучасного.

Історики датують тисячі шістсот дев'яносто один роком один зі списків давньоруського підручника арифметики, відомого як «Рахункова мудрість». Цей твір відоме в багатьох варіантах і сходить до ще більш стародавніх рукописів XVI в. За ним можна простежити, як знання арабських цифр і правил дій з ними поступово поширювалося на Русі. Таким чином, слово «алгоритм» розумілося першими російськими математиками так само, як і в Західній Європі. Однак його не було ні в знаменитому словнику В. І. Даля, ні через сто років в «Тлумачному словнику російської мови» за редакцією Д. Н. Ушакова (1935 р). Зате слово «алгорифм» можна знайти і в популярному дореволюційному енциклопедичному словнику братів Гранат, і в першому виданні Великої Радянської Енциклопедії (Вікіпедія), виданому в 1926 р І там, і там воно трактується однаково: як правило, за яким виконується та чи інша з чотирьох арифметичних дій в десятковій системі числення. Однак до початку XX в. для математиків слово «алгоритм» вже означало будь-арифметичний або алгебраїчний процес, що виконується за строго визначеними правилами, і це пояснення також дається в БСЕ.

Точне визначення поняття алгоритму дало можливість довести алгоритмічну нерозв'язність багатьох математичних проблем. Поява перших проектів обчислювальних машин (А. Тьюрінг, Е.Пост) стимулювало дослідження можливостей практичного застосування алгоритмів, використання яких, з огляду на їх трудомісткості, було раніше недоступне. Подальший процес розвитку обчислювальної техніки визначив розвиток теоретичних і прикладних аспектів вивчення алгоритмів.

Сучасний погляд на алгоритмізацію.

Теорія алгоритмів будує і вивчає конкретні моделі алгоритмів. З розвитком обчислювальної техніки і теорії програмування зростає необхідність побудови нових економічних алгоритмів, змінюються способи їх побудови, способи запису алгоритмів мовою, зрозумілою виконавцю. Особливий тип виконавця алгоритмів - комп'ютер, тому необхідно створювати спеціальні засоби, що дозволяють, з одного боку, розробнику в зручному вигляді записувати алгоритми, а з іншого - дають комп'ютера можливість розуміти написане. Такими засобами є мови програмування або алгоритмічні мови.

Схожі статті