Interested Article - Жадный алгоритм для египетских дробей

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

Разложение, полученное жадным алгоритмом для числа , называется жадным египетским разложением , разложением Сильвестра или разложением Фибоначчи — Сильвестра числа .

История

Среди нескольких различных методов построения египетских дробей, приведённых Фибоначчи в « Книге абака », был жадный алгоритм, который предлагался к применению, лишь если прочие методы не сработали . Впоследствии жадный алгоритм и его расширения для приближения иррациональных чисел был переоткрыт несколько раз, наиболее ранний и известный случай — алгоритм Сильвестра . Метод, дающий ближайшее приближение на каждом шаге, для чего разрешаются отрицательные дроби, принадлежит Ламберту .

Алгоритм и примеры

Алгоритм Фибоначчи осуществляет разложение путём последовательного проведения замены:

(упрощая второй член, если необходимо). Например:

.

В этом разложении знаменатель первой аликвотной дроби является результатом округления до следующего (большего) целого числа, а остаток — результат сокращения . Делитель второй дроби — , — является результатом округления до следующего (большего) целого числа, а остаток — это то, что осталось от после вычитания и .

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

,

в то время как другие методы дают куда более простое разложение:

,

а для жадный алгоритм даёт разложение на десять дробей, последняя из которых имеет в знаменателе 500 знаков, тогда как существует представление :

.

Последовательность Сильвестра

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

,

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

Разложения максимальной длины и условия сравнения по модулю

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

  • любая дробь приводит к одному члену в разложении, самая простая такая дробь — ;
  • любая дробь вида для нечётных требует двух членов в разложении, самая простая такая дробь — ;
  • в разложении дроби необходимы три члена в том и только в том случае, когда , в этом случае — и нечётно, так что остаток разложения после первого шага:
    несократим, самая простая дробь вида , дающая разложение с тремя членами — ;
  • разложение дроби даёт четыре члена тогда и только тогда, когда или . В этих случаях числитель — остаточной дроби равен и знаменатель сравним с . Самая простая дробь вида с четырьмя членами разложения — , гипотеза Эрдёша — Штрауса утверждает, что все дроби вида имеют разложение с тремя или меньше членами, но при или такие разложения следует искать методами, отличными от жадного алгоритма.

В общем случае последовательность дробей с минимальным знаменателем , имеющих разложение жадным алгоритмом с членами :

.

Приближённое вычисление корней многочленов

Существует метод приближённого вычисления корней многочлена , основанный на жадном алгоритме , определяющем жадное разложение корня. На каждом шаге образуется дополнительный многочлен, который имеет остаток разложения в качестве корня. Например, для вычисления жадного разложения золотого сечения как одного из двух решений уравнения алгоритм осуществляет следующие шаги.

  1. Поскольку для и для всех , корень должен находиться между и . Таким образом, первый член разложения — . Если — остаток после первого шага жадного разложения, должно выполняться уравнение , которое можно преобразовать в .
  2. Поскольку для и для всех , корень лежит между и , первый член в разложении (второй член в разложении золотого сечения) равен . Если — остаток после этого шага жадного разложения, он удовлетворяет уравнению , которое можно преобразовать в .
  3. Поскольку для и для всех , следующим членом разложения будет . Если — остаток после этого шага жадного разложения, он удовлетворяет уравнению , которое можно преобразовать в уравнение с целыми коэффициентами .

Продолжая этот процесс приближения, получается разложение золотого сечения в египетскую дробь :

.

Другие целочисленные последовательности

Длина, минимальный знаменатель и максимальный знаменатель жадного разложения для дробей с малыми числителями и знаменателями включены в Энциклопедии целочисленных последовательностей . Кроме того, жадное разложение любого иррационального числа приводит к бесконечной возрастающей последовательности целых, и OEIS содержит разложения некоторых хорошо известных констант.

Связанные разложения

Возможно определить жадный алгоритм с некоторыми ограничениями на знаменатель:

,

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

Примечания

  1. , chapter II.7
  2. .
  3. .
  4. .
  5. .
  6. .
  7. .
  8. .
  9. .
  10. .
  11. последовательность в OEIS
  12. .
  13. .
  14. последовательность в OEIS
  15. , ,

Литература

  • E. Cahen. Note sur un développement des quantités numériques, qui presente quelque analogie avec celui en fractions continues // Nouvelles Annales des Mathématiques. — 1891. — Т. 10 . — С. 508–514 .
  • D. R. Curtiss. On Kellogg's diophantine problem // American Mathematical Monthly . — 1922. — Т. 29 , вып. 10 . — С. 380–387 . — doi : . — JSTOR .
  • H. T. Freitag, G. M. Phillips. Applications of Fibonacci numbers, Vol. 8 (Rochester, NY, 1998). — Dordrecht: Kluwer Acad. Publ., 1999. — С. 155–163.
  • J. H. Lambert. Beyträge zum Gebrauche der Mathematik und deren Anwendung. — Berlin: Zweyter Theil, 1770. — С. 99–104 .
  • Michael Mays. A worst case of the Fibonacci–Sylvester expansion // Journal of Combinatorial Mathematics and Combinatorial Computing. — 1987. — Т. 1 . — С. 141–148 .
  • H. E. Salzer. // American Mathematical Monthly . — 1947. — Т. 54 , вып. 3 . — С. 135–142 . — doi : . — JSTOR .
  • H. E. Salzer. Further remarks on the approximation of numbers as sums of reciprocals // American Mathematical Monthly . — 1948. — Т. 55 , вып. 6 . — С. 350–356 . — doi : . — JSTOR .
  • Laurence E. Sigler (trans.). Fibonacci's Liber Abaci. — Springer-Verlag, 2002. — ISBN 0-387-95419-8 .
  • K. Soundararajan. Approximating 1 from below using n Egyptian fractions. — 2005. — arXiv : .
  • O. Spiess. Über eine Klasse unendlicher Reihen // Archiv der Mathematik und Physik, Ser. 3. — 1907. — Т. 12 . — С. 124–134 .
  • R. E. Stong. // Mathematische Annalen. — 1983. — Т. 265 , вып. 4 . — С. 501–512 . — doi : .
  • G. Stratemeyer. Stammbruchentwickelungen für die Quadratwurzel aus einer rationalen Zahl // Mathematische Zeitschrift. — 1930. — Т. 31 . — С. 767–768 . — doi : .
  • J. J. Sylvester. On a point in the theory of vulgar fractions // American Journal of Mathematics . — 1880. — Т. 3 , вып. 4 . — С. 332–335 . — doi : . — JSTOR .
  • S. Wagon. . — W. H. Freeman, 1991. — С. –277 .
Источник —

Same as Жадный алгоритм для египетских дробей