Design Science, Inc.

Н. М. БЕСКИН

Еще в глубокой древности ученых интересовало, как для любого нецелого числа найти его хорошее приближение дробями с небольшими знаменателями.
В статье рассказывается о самом простом способе нахождения таких дробей.
[Maple OLE 2.0 Object]

I  ДВЕ ЗАГАДКИ   

1.  Загадка Архимеда

Многие полагают: чтобы найти что-нибудь необыкновенное, надо отправиться очень далеко, лучше всего в космос. В обыденной жизни вокруг нас все хорошо известно, и ничего интересного нет.
Какое заблуждение! Мы окружены загадочными явлениями, но не задумываемся над ними, потому что они привычны. Здесь будет рассказано о двух загадочных фактах из истории математики.
Все школьники мира "проходят" в курсе геометрии, что Архимед нашел для числа  p 
 приближенное значение 22/7 *).

 

К этому факту так привыкли, что не подозревают, какая тайна в нем скрыта. А между тем стоит только задать естественный вопрос: почему Архимед предпочел седьмые доли? Почему не восьмые? Попытка ответить на этот вопрос приведет нас в новую область арифметики.

*

На  самом деле  Архимед  в  сочинении "Об измерении круга"  сформулировал  этот результат чуть-чуть иначе. Он указал границы для   [Maple OLE 2.0 Object] :

[Maple OLE 2.0 Object]
Во всеобщее употребление вошло значение
[Maple OLE 2.0 Object]  , как более простое, хотя
p     ближе к [Maple OLE 2.0 Object]  .

Уточним задачу " дать приближенное выражение действительного числа a  в виде дроби со знаменателем q ". Это значит: из всех дробей со знаменателем q найти ближайшую к числу a  . Если на числовой оси нанесены все дроби со знаменателем q , то число a   попадает между двумя такими соседними дробями (случай, когда a  совпадает с одной из них, неинтересен)

[Maple OLE 2.0 Object]

Из этих двух дробей выбирается та, которая ближе к [Maple OLE 2.0 Object] . Например, на рис. 1 точка a   ближе к правому концу отрезка [Maple OLE 2.0 Object]  , и поэтому следует  принять

[Maple OLE 2.0 Object]

  Рисунок 1

[Maple OLE 2.0 Object]


Если
[Maple OLE 2.0 Object] есть середина отрезка
[Maple OLE 2.0 Object]

то для  определенности условимся выбирать его левый конец.


Процесс замены числа
[Maple OLE 2.0 Object]  его приближенным значением называют аппроксимацией  (приближением).


Из изложенного понятно, что для аппроксимации числа
[Maple OLE 2.0 Object]  можно пользоваться дробями с любым знаменателем. Выбор знаменателя зависит от нашего желания. Ради технического удобства почти всегда пользуются десятичными дробями. Однако во времена Архимеда десятичные дроби еще не были изобретены, и Архимед мог выбрать любые доли. Он выбрал седьмые. Почему? Терпение, скоро мы в этом разберемся.


При аппроксимации действительного числа
[Maple OLE 2.0 Object]  дробью - возникает погрешность

[Maple OLE 2.0 Object]

(запомним: погрешность есть точное значение минус приближенное ). Если приближенное значение взято с недостатком, то погрешность положительна, а если с избытком - отрицательна.
Абсолютная величина погрешности называется
абсолютной погрешностью .
Ясно, что при избранном способе аппроксимации абсолютная погрешность не может превышать
[Maple OLE 2.0 Object]  (см. рис.1)
[Maple OLE 2.0 Object]

Число   [Maple OLE 2.0 Object]  есть верхняя граница   абсолютной погрешности . При другом способе аппроксимации верхняя граница может быть иной. Например, если бы мы условились всегда брать приближение с недостатком, то она равнялась бы   [Maple OLE 2.0 Object] .


Абсолютная погрешность достигает верхней границы в том (самом неблагоприятном) случае, когда
[Maple OLE 2.0 Object] есть середина отрезка

[Maple OLE 2.0 Object] .

Ясно, что приближение выгодно, если оно при малом знаменателе q  дает высокую точность . Чтобы характеризовать выгодность, надо сравнить две величины: 1) фактическую абсолютную погрешность, 2) верхнюю границу абсолютной погрешности:
[Maple OLE 2.0 Object]

Принято рассматривать половину этой величины. Назовем ее приведенной погрешностью
[Maple OLE 2.0 Object]

и запомним: приведенная погрешность h есть половина отношения фактической абсолютной погрешности к максимально возможной . Очевидно,
[Maple OLE 2.0 Object]
Чем меньше
h , тем выгоднее приближение. Если h  близко к нулю, значит, число
a   расположено близко к одному из концов отрезка
[Maple OLE 2.0 Object]

Чем ближе h  к [Maple OLE 2.0 Object] , тем [Maple OLE 2.0 Object]  ближе к середине отрезка.
Величину

[Maple OLE 2.0 Object]
назовем
коэффициентом выгодности . Его смысл очень прост: коэффициент выгодности показывает, во сколько раз фактическая абсолютная погрешность меньше максимально возможной.  Чем больше [Maple OLE 2.0 Object] , тем выгоднее приближение. Очевидно,
[Maple OLE 2.0 Object]
 Не следует думать, что более мелкие доли всегда дают более точное приближение! Может случиться, что при нанесении на числовую ось восьмых долей число
a  занимает менее выгодное положение, чем при нанесении седьмых. Сделаем опыт с числом p  , аппроксимируя его разными долями - от первых до десятых. Вычисления опущены, читатель может воспроизвести их сам.

 

[Maple OLE 2.0 Object]


Эта таблица показывает, что для аппроксимации
p   седьмые доли резко выгоднее ближайших соседних долей. Фактическая погрешность в 56 раз меньше, чем можно думать, судя по размеру долей.

*) Вычисление дает

[Maple OLE 2.0 Object]

Чтобы правильно получить цифры десятых, надо взять h с пятью цифрами noсле запятой

 

На рисунке 2 показано расположение числа p  на числовой оси.

Рисунок 2

[Maple OLE 2.0 Object]

 

Случайно (а впрочем, случайно ли?)  p   оказывается очень близко к 

[Maple OLE 2.0 Object]

Если бы нам заранее предписали аппроксимировать так,   чтобы абсолютная погрешность не превысила 0,0013, какие доли выбрали бы? Мы записали бы условие

[Maple OLE 2.0 Object] ,

откуда

[Maple OLE 2.0 Object] ,
а Архимед достиг той же точности, взяв гораздо меньший знаменатель.

Теперь Вы убедились, читатель, что Архимед выбрал седьмые доли не случайно?

Через много веков голландский математик Ариан Меций дал приближенное значение

[Maple OLE 2.0 Object] .

Число Меция обладает теми же удивительными свойствами, что и числе Архимеда: знаменатель 113 гораздо выгоднее, чем другие близлежащие знаменатели. Рекомендуем читателю исследовать число Меция так, как выше исследовано число Архимеда. Например, чему равен коэффициент выгодности?

2. Загадка Григория XIII

Григорий XIII не был математиком. Он был римским папой. Тем не менее его имя связано с важной математической задачей - с проблемой календаря.


Природа дала нам две естественные единицы времени: год и сутки (солнечные). Как сказано в одном старом учебнике космографии  "к сожалению, год не равен целому числу суток".

*

Космография - так раньше назывался учебный предмет, содержавший общие сведения по астрономии и физической географии

 

С этим нельзя не согласиться, так как из упомянутого факта проистекает много неудобств. Зато он порождает интересную математическую проблему.

[Maple OLE 2.0 Object]
 или

[Maple OLE 2.0 Object]
Узаконить в гражданской жизни такую длину года невозможно. А что получится, если считать год равным 365 суткам?

  Рисунок 3

[Maple OLE 2.0 Object]

 

На рис. 3 показана орбита Земли. 1 января 1970 г. в 0 час. Земля находилась в точке А. За 365 суток она не придет в ту же точку орбиты и, следовательно, 1 января 1971 г. в 0 час. окажется в точке В, а 1 января 1972 г. - в точке С и т. д. Получится, что если фиксировать некоторую дату, то положение Земли на орбите будет каждый год иное (оно будет отставать почти на 6 часов).
За четыре года отставание составит почти сутки, и фиксированная дата будет попадать на разные времена года, т. е. 1 января с зимы постепенно переместится на осень, потом на лето. Это неудобно: периодические мероприятия (посев, начало учебного года) нельзя будет связывать с определенными календарными датами.


Выход из этого положения есть. Надо считать некоторые годы по 365 суток, а некоторые по 366 суток, чередуя их так, чтобы средняя длина года была возможно ближе к истинной. Можно воспроизвести истинную длину года с любой точностью, но для этого может понадобиться очень сложный закон чередования коротких (простых) и длинных (високосных) лет, что нежелательно. Нужен компромисс: сравнительно простой закон чередования лет, дающий среднюю длину года, достаточно близкую к истинной.

Эту задачу впервые разрешил Юлий Цезарь. Разумеется, к правителю слово "разрешил" может применяться лишь условно. Это сделал для него александрийский астроном Созиген, вызванный для этой цели в Рим. Юлий Цезарь ввел такую систему: три года подряд коротких, четвертый - длинный.


Много позже, когда было принято христианское летосчисление, високосными стали считать годы, номер которых делится на 4. Этот календарь называют "юлианским". По юлианскому календарю средняя длина года составляет

[Maple OLE 2.0 Object]

 

Как видно, средняя длина юлианского года больше истинной на 11 мин. 14 сек. В 16 столетии папа Григорий XIII пожелал исправить эту неточность. В 1582 году он произвел следующую реформу календаря. Сохраняется чередование простых и високосных лет, но оно дополняется правилом: если номер года оканчивается двумя нулями, а число сотен не делится на 4, то этот год простой.

Например, по этому правилу 1700 год простой, но 1600 високосный.

Кроме того, считая, что от начала летосчисления (от "рождества Христова") уже накопилась ошибка в 10 дней, Григорий XIII сразу прибавил 10 дней. С тех пор накопилось еще 3 дня (в 1700, 1800 и 1900 годах). Поэтому в настоящее время между юлианским календарем и новым ("григорианским") расхождение составляет 13 дней.


Какова средняя длина григорианского года? Из 400 лет по юлианскому календарю 100 високосных, а по григорианскому - 97. Поэтому

[Maple OLE 2.0 Object] ,

т. е. она больше истинной на 26 сек.


Как видим, весьма простыми средствами достигнута очень большая точность.

В царской России до Великой Октябрьской революции пользовались юлианским календарем. Григорианский календарь был введен специальным декретом Совета Народных Комиссаров в 1918 году. Им мы и пользуемся в настоящее время. Степень его соответствия реальной длине солнечного года вполне достаточна для всех практических целей. Можно ли утверждать, что решение папы Григория XIII - самое простое и естественное? С ответом потерпите до конца этой статьи.

II  ЦЕПНЫЕ ДРОБИ  

[Maple OLE 2.0 Object]  

3. Понятие о цепной дроби   

Забудем о десятичной системе счисления. Как говорил выдающийся русский математик Николай Николаевич Лузин (1883-1950), "преимущества десятичной системы не математические, а зоологические. Если бы, у нас на руках было не десять пальцев, а восемь, то человечество пользовалось бы восьмеричной системой". Десятичная система практически очень удобна, но при исследовании теоретических вопросов арифметики она только мешает.


Итак, откажемся от специальных систем счисления, и задумаемся над вопросом: какой самый естественный способ приближенного представления положительных чисел дробями.
В ответе на этот вопрос не может быть никаких колебаний: надо прежде всего указать, между какими целыми числами оно заключено. Например,

[Maple OLE 2.0 Object]

Разумеется, достаточно указывать только меньшее из этих чисел:

[Maple OLE 2.0 Object] ,

[Maple OLE 2.0 Object] ,

[Maple OLE 2.0 Object] .

Заметим, что такая оценка не связана со способом обозначения целых чисел, т. е. с какой-нибудь конкретной системой счисления.
Займемся числом
[Maple OLE 2.0 Object] . Наша оценка "два с лишним" слишком грубая и годится лишь как первое приближение. Если мы хотим сделать второй шаг, то мы должны оценить добавку х . Поскольку она меньше единицы, естественно представить ее как дробь с числителем 1 (мы опять апеллируем к "естественности", но это - в последний раз)

[Maple OLE 2.0 Object]

Теперь  x1 больше единицы, и мы опять повторяем те же шаги: выделяем целую часть и т. д. и т. д. Приглашаем читателя внимательно проследить за чередованием этих двух шагов:

[Maple OLE 2.0 Object]

 

Выражение

[Maple OLE 2.0 Object]

где a1  , a2 , ... , as  - натуральные числа , а a0  - натуральное число или нуль, называется цепной дробью .
Числа
a0 , a1 , a2 ,..., as  называются элементами * цепной дроби.  

*

Иногда  их  называют неполными  частными.

 

Не слишком ли громоздко обозначение цепной дроби? В нашем примере получилась трехэтажная дробь, а если получится двадцатиэтажная, то ее нельзя уместить на листе бумаги.
Это  верно, и поэтому для цепных дробей употребляются различные условные обозначения. Мы будем пользоваться таким:

(*)

 

Обратите внимание на точку с запятой. Она подчеркивает, что роль целой части a0   особая, не такая, как других чисел (особая - не значит более важная, в данном случае скорее наоборот).


Можно ли утверждать, что всякое действительное *) число может быть изображено цепной дробью и притом единственным образом?

* ) Пока речь идет о положительных рациональных числах. Введение отрицательных чисел ничего не меняет в существе вопроса, а введение иррациональных чисел многое меняет. Об этом будет сказано ниже.

 

Прежде всего задумаемся над таким примером:
[Maple OLE 2.0 Object]

или, в сокращенных обозначениях,

[0;6,4] = [0;6,3,1],

Такое преобразование (отделение единицы от последнего элемента) можно произвести с любой цепной дробью, у которой последний элемент отличен от единицы. Если же последний элемент равен единице, то его можно прибавить к предпоследнему. Например,

[1;10,3,7,1] = [1;10,3,8].

Легко, однако, доказать, что это - единственная причина неоднозначности представления рационального числа цепной дробью.

 

Можно доказать,  что:

1) Процесс превращения рационального числа p/q   (р   и   q   взаимно простые натуральные числа) в цепную дробь на некотором шаге заканчивается. Иначе говоря, любое положительное рациональное число представимо в виде (*). В силу только что сказанного такое представление всегда возможно и с соблюдением ограничения as>1 .


2) Две цепные дроби [
a0;a1,...,as] и [b0;b1,...,bt]   , у которых as>1   и bt>1  , равны друг другу в том и только в том случае, если у них одинаковое число элементов, т. е. s  = t   и   ai = biпри i  = 1, 2, . . ., s .

Мы этого доказывать не будем. Цель нашей статьи в том, чтобы рассказать основные идеи и побудить читателя к более основательному изучению вопроса по книгам *).

*

Все пропущенные здесь доказательства можно найти, например, в книжке  А.  Я.   X и н ч и н а   "Цепные дроби",  изд.  3, 1961.

 

4. Бесконечные цепные дроби

А как быть с иррациональными числами? Попробуем разлагать в цепную дробь

[Maple OLE 2.0 Object]

Получим

[Maple OLE 2.0 Object] ,

[Maple OLE 2.0 Object] ,

[Maple OLE 2.0 Object] , [Maple OLE 2.0 Object] ,

Ясно, что

[Maple OLE 2.0 Object]

[Maple OLE 2.0 Object]

[Maple OLE 2.0 Object] ,

где [Maple OLE 2.0 Object] .


Хочется сразу написать

[Maple OLE 2.0 Object] ,

т. е. представить [Maple OLE 2.0 Object]  в виде бесконечной цепной дроби . Но здесь нужна крайняя осторожность: мы встретились с новым понятием "бесконечная десятичная дробь", но не знаем, что это такое. Легко понять только, что каждому положительному иррациональному числу  с о о т в е т с т в у е т  вполне определенная бесконечная последовательность

[Maple OLE 2.0 Object] ,

где  a0   - целое не отрицательное, а все ai   с номером   [Maple OLE 2.0 Object]  - натуральные числа. Во всем относящемся сюда мы разберемся только позже *), а пока удовлетворимся тем, что нам понятно: как по положительному числу [Maple OLE 2.0 Object]  построить его формальное разложение

[Maple OLE 2.0 Object]

в конечную или бесконечную цепную дробь **).

*

Этот вопрос будет полностью рассмотрен в одном из следующих номеров журнала.

**

"~"-знак соответствия. Мы боимся поставить знак равенства, пока не установлен смысл символа, стоящего в правой части.

 

5. Подходящие дроби   

Цепную дробь можно оборвать, удержав элементы  a0 , a1 , ... , an  и отбросив an+1 ,... Полученное таким образом число называется n подходящей дробью  и обозначается [Maple OLE 2.0 Object]

В частности,  при   n  = 0 имеем нулевую подходящую дробь

  [Maple OLE 2.0 Object]  

Мы увидим, что, чем меньше n , тем подходящая дробь проще (т. е. имеет меньший знаменатель). В то же время она может использоваться как приближенное значение цепной дроби.

Пример

Возьмем опять разложение числа   [Maple OLE 2.0 Object] в цепную дробь и образуем подходящие дроби

[Maple OLE 2.0 Object] ,

[Maple OLE 2.0 Object] ,

[Maple OLE 2.0 Object] ,

[Maple OLE 2.0 Object] .

Разумеется, последняя подходящая дробь рационального числа a  равна a .


Мы получили несколько постепенно усложняющихся приближений для числа 

[Maple OLE 2.0 Object]

Для оценки их заметим, что

  [Maple OLE 2.0 Object]  .

[Maple OLE 2.0 Object] *).

[Maple OLE 2.0 Object] .

[Maple OLE 2.0 Object] .

*

  [Maple OLE 2.0 Object]  - погрешность (см. стр. 17).

Мы замечаем, что погрешность убывает (по абсолютной величине) и имеет чередующиеся знаки. Это - общее правило.
В случае разложения в цепную дробь числа  
[Maple OLE 2.0 Object]  получим

[Maple OLE 2.0 Object] ,

[Maple OLE 2.0 Object] ,

[Maple OLE 2.0 Object] ,

[Maple OLE 2.0 Object] ,

[Maple OLE 2.0 Object] .

Мы наблюдаем и здесь ту же самую картину.

6. Основное свойство подходящих дробей

Сформулируем теперь без доказательства то основное свойство подходящих дробей, которое и приведет к разгадкам наших загадок.


Если  

  [Maple OLE 2.0 Object]  

- подходящая дробь для числа [Maple OLE 2.0 Object] , то абсолютная погрешность

[Maple OLE 2.0 Object]
меньше, чем при аппроксимации числа [Maple OLE 2.0 Object] любой другой дробью с меньшим знаменателем  *).

*

Подходящие дроби во многих отношениях дают чрезвычайно выгодные приближения. Приведенное здесь свойство - не единственное и не самое главное. Другие свойства будут рассмотрены в одном из следующих номеров журнала.

 

Например, получив для [Maple OLE 2.0 Object]  подходящую дробь [Maple OLE 2.0 Object]  , мы можем быть уверены, что приближение к [Maple OLE 2.0 Object]   любой дроби со знаменателем, меньшим 12, будет хуже.

Рисунок

 

III  РАЗГАДКИ

[Maple OLE 2.0 Object]

7. Загадка Архимеда   

Попробуем разложить в цепную дробь число
[Maple OLE 2.0 Object]

[Maple OLE 2.0 Object]

Уже на этом этапе выкладок мы видим, что первыми подходящими дробями будут

[Maple OLE 2.0 Object]

Проделайте сами выкладки и убедитесь, что

[Maple OLE 2.0 Object]

[Maple OLE 2.0 Object]

Вот и все. До чего же просто! Эта таблица раскрывает секрет Архимеда, а заодно и Меция. Из нее видно:

[Maple OLE 2.0 Object] ,

[Maple OLE 2.0 Object] ,

[Maple OLE 2.0 Object] ,

[Maple OLE 2.0 Object] .

(нечетные приближения с недостатком, четные - с избытком).

Можно ли считать, что Архимед и Меций разоблачены: они пользовались цепными дробями, Архимед использовал вторую подходящую дробь, а Меций - четвертую?

Нет, про Архимеда этого сказать нельзя.
Следует ясно понять, что мы решили математическую, но не историческую задачу. Мы объяснили, как  м о ж н о   прийти к числу
[Maple OLE 2.0 Object]  .
Весьма возможно, что Архимед пользовался цепными дробями, но установить это по его работам нельзя. Суд не признал бы наших доводов. Историки не пришли к единому мнению. Преимущество седьмых долей можно обнаружить и эмпирически, сравнивая их с разными другими.

Другое дело Меций. Невероятно предположить, что такая сложная дробь, как    

[Maple OLE 2.0 Object]  , 

найдена без теории. Очень вероятно, что Меций пользовался цепными дробями. Понятно почему он остановился на четвертой подходящей дроби: следующие настолько громоздки, что практически непригодны.

8. Загадка Григория XIII

Сначала подумаем, как мы сами решили бы проблему чередования високосных лет. Мы представили бы длину года в виде цепной дроби.

[Maple OLE 2.0 Object]


Примечание .
p - иррациональное число. Оно разлагается в бесконечную цепную дробь. Величина года - эмпирическая. Всякая эмпирическая величина измеряется лишь с определенной точностью, и говорить об ее рациональности или иррациональности не имеет смысла. Приведенная выше величина года - принятая, и мы должны считать ее точной. Она выражается конечной ценной дробью.


Находим несколько первых подходящих дробей:

[Maple OLE 2.0 Object] ,

[Maple OLE 2.0 Object] ,

[Maple OLE 2.0 Object] ,

[Maple OLE 2.0 Object] ,

[Maple OLE 2.0 Object] .

Каждая подходящая дробь дает решение проблемы календаря. Например, приближение

  [Maple OLE 2.0 Object]  

- приводит к решению Юлия Цезаря: один високосный год из каждых четырех.
Пользоваться приближением
[Maple OLE 2.0 Object]  никто не предлагал, по-видимому, потому, что следующее приближение [Maple OLE 2.0 Object]  лишь немного сложнее, но значительно точнее. Календарь, по которому високосными должны были бы считаться восемь лет из каждых тридцати трех, был предложен великим туркмено-персидским философом, математиком, астрономом и поэтом Омаром Хайямом (1040-1123).
Сведения о точности найденных приближений к истинной длине года даны в следующей таблице.

Таблица

[Maple OLE 2.0 Object]

В графе "Погрешность" знак минус указывает, что средняя длина года больше истинной.


Четвертый вариант исключительно точен. Погрешность в 1 сек. не имеет никакого практического значения. Поэтому были предложения   использовать этот календарь. Например, в 1864 году русский астроном Медлер предложил с XX столетия ввести  такой календарь в России. Для этого надо внести  в юлианский календарь следующую поправку:  каждые  128 лет пропускать один високосный (потому что по юлианскому календарю на 128 лет приходится 32 високосных). Однако этот календарь не был принят
нигде в мире, по-видимому, потому, что период 128 "некруглый".

 

Решив математическую задачу, вернемся к задаче исторической. Каковы были соображения Григория XIII (или его сотрудников)?

В начале статьи говорилось, что средняя длина григорианского года

   365 суток 5 час. 49 мин. 12 сек.    

Это значение отличается от истинного на целых 26 секунд. Получается впечатление, что папа Григорий XIII или его ученые советники придумали календарь более сложный, чем хайямовский и к тому же менее точный. Значит ли это, что они были плохими математиками? Оказывается дело не в этом.


При Григории XIII продолжительность года не была известна столь точно, как теперь. Комиссия Григория XIII пользовалась астрономическими таблицами, составленными Альфонсом X (1221 - 1284), королем Кастилии, который занимался астрономией (недаром его прозвали Альфонс-астроном). Эти таблицы впервые были изданы в Венеции через сто лет после смерти их автора. В них дается следующая продолжительность года:
[Maple OLE 2.0 Object]

Пользуясь этими таблицами, комиссия должна была прийти к выводу, что предложенная ею средняя длина календарного года только на четыре секунды отличается от истинной. Если бы комиссия и была знакома с предложением Омара Хайяма, то она пришла бы к выводу, что его календарь дает ошибку в 11 секунд.
Добавим, что нет никаких оснований предполагать, что комиссия Григория XIII использовала цепные дроби. Она кропотливо, в поте лица подбирала нужное соотношение.
Что касается Омара Хайяма, то ученые думают, что он владел, если не полной теорией цепных дробей, то каким-либо аналогичным принципиальным подходом к задачам о наиболее рациональных приближениях дробями с небольшими знаменателями. В его эпоху восточная наука во многих отношениях стояла выше европейской.

 

Глава I Глава II Глава III Задачи

16

Hosted by uCoz