Pull to refresh

Решение задачи о приближении иррациональных

Reading time26 min
Views18K
В данной статье рассматриваются различные методы приближений иррациональных чисел, а также попутно затрагиваются вопросы, косвенно связанные с этой темой



В сборнике Арнольда есть следующая задача

38. Вычислить сумму:

$\frac{ 1 }{ 1\cdot2 } + \frac{ 1 }{ 2\cdot3 } + \frac{ 1 }{ 3\cdot4 } + ... + \frac{ 1 }{ 99\cdot100 }$


(с ошибкой не более 1% от ответа)

Ниже представлен алгоритм для вычисления частичных сумм этого ряда на языке Scheme (Lisp), который позволяет производить вычисления в обыкновенных дробях

#lang racket
(define series_sum
 ( lambda (n)
  (if (= n 0) 0
    (+ (/ 1 (* n (+ n 1))) (series_sum(- n 1)))
  ) ) )
(series_sum 10)
(series_sum 100)
(series_sum 1000)
(series_sum 10000)
(series_sum 100000)
(series_sum 1000000)

(define series_sum_1
 ( lambda (n)
  (if (= n 0) 0 
    (+ (/ 1.0 (* n (+ n 1.0))) (series_sum_1(- n 1.0)))
  ) ) )
(series_sum_1 10)
(series_sum_1 100)
(series_sum_1 1000)
(series_sum_1 10000)
(series_sum_1 100000)
(series_sum_1 1000000)


Два последних примера drRacket вычислил с ошибкой



Этот же алгоритм на Python
def series_sum(n):
	if n==0:
		return 0
	else:
		return 1.0/(n*(n+1.0))+series_sum(n-1.0)
 
print(series_sum(10))
print(series_sum(100))


Для перевода периодической десятичной дроби $ 0,(90) $ в обыкновенную
$ x=0,(90) $
домножим обе части на $ 10^{n} $, где $ n $ равняется периоду десятичной дроби
$ 100x=90,(90) $
вычтем из данного равенства предыдущее
$ 99x=90 \rightarrow\ x=\frac{90}{99}=\frac{10}{11} $

Если последовательность частичных сумм имеет предел $ S $, то говорят, что сумма ряда равна этому пределу $ S $

Если рассмотреть частичные суммы в обыкновенных дробях, то можно заметить, что сумма ряда равна

$ \frac{ n }{ n + 1 } $



Доказательство из книги «Метод математической индукции»:
1. При $ n=1 $ гипотеза верна, так как $ S_{1}= \frac{ 1 }{ 2 }$
2. Предположим, что гипотеза верна и для $n=k $, т.е. что

$ S_{k}= \frac{ 1 }{ 1\cdot2 } + \frac{1}{2\cdot3}+...+\frac{1}{k(k+1)}=\frac{k}{k+1} $


где $ k $ — некоторое натуральное число
Установим справедливость и при $ n=k+1 $

$ S_{k+1}= \frac{ k+1 }{ k+2 } $


$ S_{k+1}=S_{k} + \frac{ 1 }{ (k+1)(k+2) } = \frac{k}{k+1} + \frac{1}{(k+1)(k+2)} =\frac{k^{2}+2k+1}{(k+1)(k+2)}=\frac{k+1}{k+2} $



Последовательность частичных сумм имеет предел, равный
$ \lim_{n \to \infty} \frac{n}{n+1}=\lim_{n \to \infty} \frac{1}{1+\frac{1}{n}}=\frac{1}{1}=1$

Числа Фибоначчи


В следующей задаче требуется найти НОД двух соседних чисел Фибоначчи
43.Числа кроликов («Фибоначчи»), образуют последовательность $(a_{1}=1, 1, 2, 3, 5, 8, 13, 21, 34, ..., $ в которой $ a_{n+2} = a_{n+1} + a_{n} $ для всякого $ n = 1, 2, ... $. Найти наибольший общий делитель чисел $ a_{100} $ и $ a_{99} $.

Для решения данной задачи необходимо доказать, что два соседних числа Фибоначчи взаимно просты, то есть $ НОД(a_{n+1},a_{n}) = 1 $
иными словами $ a_{n+1} $ и $ a_{n} $ не имеют общих делителей (кроме единицы)

Доказательство из книги «За страницами учебника математики» [10-11]
Из равенства $ u_{n+2} = u_{n+1} + u_{n} $ следует, что $ НОД(u_{n+2},u_{n+1}) = НОД(u_{n+1},u_{n})$. Пятясь таким образом назад, придём к $ НОД(u_{2},u_{1}) = НОД(1,1) = 1 $, а потому два соседних числа Фибоначчи взаимно просты.


Добавлю, что
$ НОД(u_{n+2},u_{n+1}) = НОД(u_{n+1},u_{n})$ по алгоритму Евклида
$НОД(u_{n+2},u_{n+1}) = НОД(u_{n+1},r)$
где $ r $ — остаток от деления $u_{n+2} $ на $ u_{n+1}$
и в данном конкретном случае $ r = u_{n}$ поскольку $ u_{n+2} = u_{n+1} + u_{n} $

Доказательство из книги «Числа Фибоначчи» Н.Н.Воробьёва, не использующее алгоритм Евклида
Пусть некоторое число $ d $ является делителем чисел $ u_{n} $ и $ u_{n+1} $. Тогда и их разность $ u_{n+1}-u_{n} = u_{n-1} $ будет делиться на $ d $.
Пятясь таким образом назад, придём к тому, что на $ d $ будут делиться и $ u_{n-2} $ и $ u_{n-3} $ и так далее, а значит и $u_{1}=1$ должно делиться на $ d $, а значит два соседних числа Фибоначчи взаимно просты


Тожество Кассини


Похожий метод, метод перебора последовательности $ F_{n} $ используется для доказательства тождества Кассини, которое выражается соотношением:
$ F_{n-1}F_{n+1}-F_{n}^2= (-1)^n $

Предположим, что
$ F_{n-1}F_{n+1}-F_{n}^2=F_{n-1}^2-F_{n-2}F_{n} $
Пятясь таким образом назад, придём или к $ F_{1}F_{3}-F_{2}^2=1 $ или к $ F_{2}F_{4}-F_{3}^2=-1 $


Доказательство

Домножим левую и правую части уравнения $ F_{n+1}=F_{n}+F_{n-1}$ на $ F_{n-1} $:
$ F_{n+1}F_{n-1} = F_{n}F_{n-1}+F_{n-1}^2 $

Вычтем из левой и правой части $ F_{n}^2 $:
$ F_{n+1}F_{n-1}-F_{n}^2=F_{n }F_{n-1}+F_{n-1}^2-F_{n}^2 $
$ F_{n+1}F_{n-1}-F_{n}^2=F_{n-1}^2-F_{n}^2+F_{n}F_{n-1} $
$ F_{n+1}F_{n-1}-F_{n}^2=F_{n-1}^2-F_{n}(F_{n}-F_{n-1}) $
а поскольку $ F_{n}=F_{n-1}+F_{n-2} \rightarrow F_{n}-F_{n-1}=F_{n-2} $
после замену получим верное равенство

Поэтому $ F_{n+1}F_{n-1}-F_{n}^2=F_{n-1}^2-F_{n}F_{n-2} |(-1)$
равносильно $ F_{n}^2-F_{n+1}F_{n-1}=F_{n}F_{n-2}-F_{n-1}^2 $
Таким образом
$ F_{1} \rightarrow F_{2}: $
$ 1 - 0 = 1 \rightarrow 1 - 2= -1 $
$ F_{2} \rightarrow F_{3}: $
$ 1 - 2 = -1 \rightarrow 4 - 3 = 1 $
$ F_{3} \rightarrow F_{4}: $
$ 4 - 3 = 1 \rightarrow 9 - 10 = -1 $
и т.д.



Приближения к золотому сечению


В следующей задаче необходимо вычислить золотое сечение, $ \frac {\sqrt{5} + 1}{2} \approx 1,618 $. [Это соотношение сторон открытки, остающейся себе подобной при отрезании квадрата, стороной которого является меньшая сторона открытки.]

53. Для последовательности чисел Фибоначчи $a_{n}$ задачи 43 найти предел отношения $ \frac { a_{n+1} }{ a_{n} } $ при стремлении $ n $ к бесконечности:

$ \frac { a_{n+1} }{ a_{n} } = 2, \frac {3}{2}, \frac {5}{3}, \frac {8}{5}, \frac {13}{8},\frac {21}{13}, \frac {34}{21}. $



Рассмотрим отрезки, представляющие собой разности двух соседних членов ряда $ \frac { a_{n+1} }{ a_{n} } $

Четные члены ряда $ \frac { a_{n+1} }{ a_{n} } $ представляют растущую последовательность $ x_{n} $

$\frac{ 3 }{ 2 }, \frac{ 8 }{ 5 }, \frac{ 21 }{ 13 }, ..., $



Нечетные члены ряда $ \frac { a_{n+1} }{ a_{n} } $ представляют убывающую последовательность $ y_{n} $

$2 , \frac{ 5 }{ 3 }, \frac{ 13 }{ 8 }, ..., $



По лемме о вложенных промежутках (Курс дифференциального и интегрального исчисления, 38)

$ c = \lim x_{n} = \lim y_{n} $


Для нашего ряда в точке $ c $ справедливо равенство $ \frac { a_{n+2} }{ a_{n+1} } = \frac { a_{n+1} }{ a_{n} } $

Разделив $ a_{n+2} = a_{n+1} + a_{n} $ на $ a_{n+1} $, получим уравнение $ \frac{a_{n+2}}{a_{n+1}} = 1 + \frac{a_{n}}{a_{n+1}} $.
Произведя замену $\frac{a_{n+2}}{a_{n+1}}=x , \frac{a_{n}}{a_{n+1}} = \frac{1}{x} $, получим квадратное уравнение $ x = 1 + \frac{1}{x} $, положительным решением которого является золотое сечение.
Решения этого уравнения приводятся ниже

Если в программе geogebra соединить дугами окружности точки 2 и $ \frac{3}{2}$, $ \frac{3}{2}$ и $ \frac{5}{3}$, $ \frac{5}{3}$ и $ \frac{8}{5}$ и т.д. — получим самоподобную фигуру

Для сравнения



Кстати, в правильной пятиконечной звезде (звёздчатом пятиугольнике) каждый отрезок делится другим отрезком, пересекающим его, в золотом сечении

В самом деле, так как треугольники ACD и ABE подобны, то AC:AB=AD:AE. Но AD=BC, а AE=AC, и поэтому AC:AB=BC:AC — уже известная нам пропорция золотого сечения.

В правильном пятиугольнике отношение диагонали к стороне также равно $\varphi $



Вообще, существует стандартный алгоритм вычисления чисел Фибоначчи на Python
Этот алгоритм представлен на сайте Python.org
def fib(n):
	    a, b = 0, 1
	    while a < n:
		print(a)
		a, b = b, a+b
fib(100)

Приближения к $\varphi $ являются отношением суммы двух соседних чисел $a$ и $b$ к числу $ b $
def fib(n):
	    a, b = 0.0 , 1.0
	    while a < n:
		print((a+b)/b)
		a, b = b, a+b
fib(12)

На двенадцатом шаге получим приближение, равное 1.61805

Формула Бине использует $\varphi $ для вычисления $n$-ого числа Фибоначчи
$ F_{n}=\frac{(\frac{1+\sqrt{5}}{2})^n-(\frac{1-\sqrt{5}}{2})^n}{\sqrt {5}} $
Можно заметить, что второе слагаемое всегда меньше единицы при любом целом неотрицательном $n$
Поэтому, зная, что формула Бине даёт целые числа, можно утверждать справедливость тождества, в котором данная дробь округляется до ближайшего целого
$ F_{n}=\frac{(\frac{1+\sqrt{5}}{2})^n}{\sqrt{5}}$


Пусть $ j^2=5 $
Тогда выражения вида $ (a+bj)(1+j) $ будут принадлежать множеству
$ a+bj (a,b \in \mathbb{N})$ поскольку
$ (a+bj)(1+j)=(a+5b)+(a+b)j $
то есть $ a_{n+1}=a_{n}+5b_{n},b_{n+1}=a_{n}+b_{n} $
Приняв $ a=b=1 $
получим приближение
$ F_{2} \approx \frac{(1+j)(1+j)}{j2^2}=\frac{6+2j}{4j} \approx 1.17 $

$ F_{n+1} \approx \frac{(a_{n}+b_{n}j)(1+j)}{j2^n} $

Алгоритм вычисления чисел $ a,b,2^{n} $ на питоне
a=b=1
t=2
for i in range(n):
    A=a+5*b
    B=a+b
    t=t*2
    a=A
    b=B
print ((a+b*5**0.5)/(t*5**0.5))
#n=10 Fn=88.99775275224582




Задача из учебника SICP
Упражнение 1.35.
Покажите, что золотое сечение $ \varphi $ (раздел 1.2.2) есть неподвижная точка трансформации $ x \to 1 + 1/x $, и используйте этот факт для вычисления $\varphi $ с помощью процедуры fixed-point.

Если использовать алгоритм вычисления факториала
(define ! 
 (lambda (n) 
  (if (= n 0) 
    1 
    (* n (! (- n 1))))))
(display (! 5))

то одним из способов решения задачи 1.35 будет такой
(define fixed-point 
 (lambda (n) 
  (if (> n 10) 
    1 
    (+ 1 (/ 1.0 (fixed-point (+ n 1)))))))
(display (fixed-point 1) )


Сперва опишем счётчик, инкрементирующий переменную $ i $ в цикле
(do ((i 1 (+ 1 i)))
    ((> i 10))
  (display i)(newline))

Оператор set! позволяет переопределить значение глобальной переменной
Определим глобальную переменную fixed-point и будем переопределять значение данной переменной в цикле do c помощью оператора set!
(define fixed-point 1)
(do ((i 1 (+ 1 i)))
    ((> i 10))
   (set! fixed-point (+ 1 (/ 1.0 fixed-point)))   
  (display fixed-point)
  (newline))




Цепные дроби


Если в уравнении $ x = 1 + \frac{1}{x} $ в правой части заменить x на $ 1 + \frac{1}{x} $ получим $ x = 1 + \frac{1}{1 + \frac{1}{x}} $
Продолжая производить замены, придём к представлению золотого сечения в виде цепной дроби

$1+ \frac{1}{1 + \frac{1}{1+ \frac{1}{1+ \frac{1}{1+ \frac{1}{1+...}}}}}$


Ниже представлен алгоритм (Python) для вычисления приближений к золотому сечению, использующий формулу $ x \to 1 + \frac{1}{1 + \frac{1}{x}} $
arr=[1.0]
def foo(a):
	b=1.0+1.0/(1.0+1.0/a[len(a)-1])
	return b
arr.append(foo(arr)) #первый шаг
arr.append(foo(arr)) #второй шаг
arr.append(foo(arr)) #третий шаг
print (arr)

На десятом шаге получим приближение, равное 1.618033985

В книге «Задачи для детей от 5 до 15 лет» есть похожий пример
54. Вычислить бесконечную цепную дробь

$1+ \frac{1}{2 + \frac{1}{1+ \frac{1}{2+ \frac{1}{1+ \frac{1}{2+...}}}}}$



Решение
Рассмотрим уравнение

$ \alpha = 1+ \frac{1}{2 + \frac{1}{ \alpha}}$


Согласно теоремам 236 и 235 из книги «Теория чисел»:

$ \alpha = \frac{ P_{1}\alpha+ P_{0}}{Q_{1}\alpha+ Q_{0} } $


Составляем таблицу значений $ P_{n} $ и $ Q_{n} $ при $ n=0,1:$

1 2
P 1 3
Q 1 2


так что $\alpha = \frac{ 3\alpha + 1 }{ 2\alpha + 1}, 2\alpha^{2} - 2\alpha -1 = 0$

и поскольку $ \alpha > 0 ,$ то

$ \alpha = \frac{ 1 + \sqrt{3} }{ 2 } $



Кстати, бесконечно вложенные радикалы, в некоторых случаях могут быть тождественны некоторому рациональному числу, например выражение
$ x=\sqrt{2+ \sqrt{2 +\sqrt{2 + ...} } } $ тождественно числу два

Для того чтобы это увидеть, возведем обе части выражения в квадрат и отнимем число два:
$x^{2}-2=\sqrt{2+ \sqrt{2 +\sqrt{2 + ...} } }=x $
$ x^{2}-x-2=0 $
$x_{1}=2,x_{2}=-1 $
Очевидно, что $-1$ не может являться значением исходного радикала


Вообще, $a=\sqrt{a \sqrt{a\sqrt{a ...} } }$

Пусть $ a=2 $
Здесь показатели степеней представляют геометрическую прогрессию, то есть
$ 2^\frac{1}{2} \cdot 2^\frac{1}{4} \cdot 2^\frac{1}{8} ... $
При перемножении степеней с одинаковыми основаниями показатели степеней складываются

$2^{\frac{1}{2}+\frac{1}{4}+\frac{1}{8}+... } $


Сумма геометрической прогрессии $ S_{n} = \frac{1}{2}+\frac{1}{4}+\frac{1}{8}+...=1 $
Легко понять, что $ S_{n} $ отличается от $ 1 $ на
$ (\frac{1}{2})^n $ и что эта разность становится сколь угодно малой или «стремится к нулю» при неограниченном возрастании $ n $


Python:
>>> def foo(n,a):
... 	temp=a
... 	while(n>0):
... 		a=temp*(a**0.5)
... 		n=n-1
... 	return a**0.5
... 
>>> print(foo(50,2))
#1.9999999999999993

Сриниваса Рамануджан Айенгор установил некоторые зависимости между бесконечно вложенными радикалами и рациональными числами
Например, он установил, что
$ \sqrt{1+2\sqrt{1+3\sqrt{1+ 4\sqrt{1+... } } } } = 3 $
Вывод формулы:
$ 3 = \sqrt{9} = \sqrt{1+2\cdot4} = \sqrt{1+2\sqrt{16}} $
$ 16 = 1+15=1+3\cdot5=1+3\sqrt{25} = 1+3\sqrt{1+24}=1+3\sqrt{1+4\cdot6}=1+3\sqrt{1+4\sqrt{36}} $
$ 36 = 1+35=1+5\cdot7=1+5\sqrt{49} = 1+5\sqrt{1+48}=1+5\sqrt{1+6\cdot8}=1+5\sqrt{1+6\sqrt{64}} $
$ 64 = 1+63=1+7\cdot9=... $

Если уравнение $ \varphi^2-\varphi-1=0 $ переписать в виде $ \varphi^2 = 1 +\varphi $, то заменяя $ \varphi $ под корнем на $ \sqrt{1+\varphi} $, получим $ \varphi=\sqrt{1+\sqrt{1+\varphi}} $
Тогда
$ \varphi=\sqrt{1+ \sqrt{1 +\sqrt{1 + ...} } }$

Данное выражение является частным случаем варианты $ x_{n} = \sqrt{c+ \sqrt{c +... + \sqrt{c } } } $
Курс дифференциального и интегрального исчисления, 35 (2)
Таким образом $ x_{n+1}$ получается из $ x_{n}$ по формуле

$ x_{n+1} = \sqrt{c + x_{n} } $


… По основной теореме, варианта $ x_{n}$ имеет некий конечный предел $ a $. Для определения его перейдём к пределу в равенстве

$ x_{n+1}^{2} = c + x_{n}; $


Мы получим, таким образом, что $ a $ удовлетворяет квадратному уравнению

$ a^{2} = c + a $


Уравнение это имеет корни разных знаков; но интересующий нас предел $ a $ не может быть отрицательным, следовательно, равен именно положительному корню:

$ a = \frac{ \sqrt{4c + 1} + 1}{2} $



То есть $ \varphi $ является одним из бесконечного множества пределов, являющихся решениями уравнения $ a^{2} = c + a $ при различных $ c $



Далее в «Курсе дифференциального и интегрального исчисления», 35(3) рассматривается алгоритм вычисления обратного числа (такого числа 1/с, произведение которого на данное число с равно единице)
Пусть $ c $ — любое положительное число, и положим $ x_{n} = cy_{n} $
Написанное выше рекуррентное соотношение заменится таким:

$ y_{n+1} = y_{n}(2 - cy_{n}) $


Взяв начальное значение $ y_{0} $ под условием: $ 0< y_{0}<\frac{1}{c} $, получим, что $ y_{n} $, монотонно возрастая, будет стремиться к $ \frac{1}{c} $. По этой схеме на счётных машинах и вычисляется число, обратное $ c $.


Алгоритм вычисления числа, обратного числу $ c $ на языке Python:

def reciprocal(c,y0,n):
	arr=[]
	for i in range(n):
		arr.append(y0)
		y0=y0*(2-c*y0)
        return arr


Функция reciprocal принимает на вход число $ c $, начальное значение $ y_{0} $, количество итераций $ n $ и возвращает массив «приближений» к числу $ \frac{1}{c} $.
$ y_{0} = 0.1 $ при $ c<10 $
$ y_{0} = 0.01 $ при $ 10<c<100 $
$ y_{0} = 0.001 $ при $ 100<c<1000 $
и т.д.
Примеры работы функции reciprocal при подстановке в переменную $ c $ чисел 3,5 и 8

>>> reciprocal(3,0.1,5)
[0.1,   0.17,   0.2533,   0.31411733000000003,   0.3322255689810133]
>>> reciprocal(5,0.1,5)
[0.1,0.15000000000000002,0.18750000000000003,0.19921875000000003,0.19999694824218753]
>>> reciprocal(8,0.1,5)
[0.1,0.12,0.1248,0.12499968,0.1249999999991808]




Геометрическая интерпретация алгоритма


Уравнение прямой

$ y=kx+b \; (I)$


Уравнение прямой, проходящей через точку $ (x_{0},y_{0}) $

$ y_{0}=kx_{0}+b \; (II)$


Вычтем из уравнения (I) уравнение (II)

$ y-y_{0}=kx- kx_{0} \leftrightarrow\ y=k(x-x_{0})+f(x_0)$


Так как угловой коэффициент касательной к графику дифференцируемой функции в точке с абсциссой $ x_{0}$ равен $ f'(x_{0}) $, то уравнение касательной имеет вид

$ y=f'(x_{0})(x-x_{0})+f(x_0) $



Производной функции $ y=f(x) $ называется предел отношения приращения функции $ \Delta y $ к приращению аргумента $ \Delta x $:

$ y'= \lim_{\Delta x\to 0} \frac{ \Delta y }{ \Delta x } =\lim_{\Delta x\to 0} \frac{ f(x_{0}+\Delta x)-f(x_{0}) }{ \Delta x } $


Для гиперболы

$ f(x+ \Delta x) = \frac{1}{x+ \Delta x} $


$ \Delta y = \frac{1}{x + \Delta x} - \frac{1}{x} = \frac{- \Delta x}{x(x+ \Delta x)} $


$ \frac{ \Delta y }{ \Delta x } = \frac{- \Delta x}{x(x+\Delta x)\Delta x}= \frac{-1}{x(x+ \Delta x)}$


Знаменатель состоит из двух слагаемых, второе при малых значениях $ \Delta x $ пренебрежимо мало по сравнению с первым, значит

$ \lim_{\Delta x\to 0}\frac{-1}{x^2+x\Delta x}=-\frac{1}{x^2} $




Для приближенного вычисления обратного числа здесь используется метод касательных (метод Ньютона)

Касательными $ y=f'(x_{0})(x-x_{0})+ f(x_{0})$ к гиперболе $ y=\frac{1}{x} $ являются функции
$ y=-\frac{x-x_{0}}{x_{0}^2}+\frac{1}{x_{0}} \rightarrow y=\frac{2x_{0}-x}{x_{0}^2}$, т.е.
$ y = \frac{2}{x_{0}} - \frac{x}{x_{0}^{2}} $

Подставляя числа $1,2,3,4, ...$ вместо $ x_{0} $ получим уравнения касательных

$ y=2-x $


$ y=1-\frac{x}{4} $


$ y=\frac{2}{3}-\frac{x}{9} $


$ y=\frac{1}{2}-\frac{x}{16} $





Если сдвинуть гиперболу вниз на $ \alpha $, то она пересечёт ось абсцисс в точке $ \frac{1}{\alpha} $
Уравнение касательных преобразуется в $ y = \frac{2}{x_{0}} - \frac{x}{x_{0}^{2}} - \alpha $
Далее, приравняв уравнение касательной к нулю и выразив $ x $, получим уравнение $ x= x_{0} - \frac{f(x_{0})}{f'(x_{0})}$

Вместо $ f(x_{0}) $ подставим $ \frac{1}{x_{0}} - \alpha$
Вместо $ f'(x_{0}) $ подставим $ -\frac{1}{x_{0}^{2}} $

Получим выражение $ x= x_{0} + (\frac{1}{x_{0}}-\alpha) x_{0}^{2} $
Раскрыв скобки, получим $ x= x_{0} + x_{0}-\alpha x_{0}^{2} $

Подставим $ 0.1 $ в уравнение $ x=x_{0}(2-\alpha x_{0}) $ и посмотрим, какие значения будет «пробегать» $ x $.
При $ \alpha=2 $ получим приблизительные значения $ ~0.1, ~0.18, ~0.29, ~0.42, ~0.49, ~0.5 $

Подставив эти значение в уравнение $y=\frac{2}{x_{0}}-\frac{x}{x_{0}^{2}}-2 $, получим касательные, которые с каждой новой итерацией всё ближе приближаются к искомой величине $ 0.5 $

$ y= 0.111 - \frac{x}{0.897} $


$ y= 0.222 - \frac{x}{0.81} $


$ y= 0.816 - \frac{x}{0.504} $


$ y= 0.857 - \frac{x}{0.49} $


$ y= 1.5 - \frac{x}{0.326} $


$ y= 2 - \frac{x}{0.25} $




Заголовок спойлера

Модифицированный метод касательных


Преобразуем $ \frac{1}{x}-\alpha =0 \rightarrow \frac{1}{x}=\alpha \rightarrow 1=\alpha\cdot x $
$ \alpha\cdot x -1 =0 $
и возведём это уравнение в квадрат, чтобы получить квадратную параболу
$ \alpha^2 x^2 - 2\alpha x + 1 =0 $
Все параболы данного вида будут иметь с осью абсцисс одну общую точку (точку касания), равную $ \frac{1}{\alpha} $
Для того, чтобы найти приближения к точке касания, надо взять производную этой функции. Она будет равна $ 2\alpha^2 x - 2 \alpha $
Тогда касательными к параболе будут функции вида

$ y = (2\alpha^2 x_{0} - 2 \alpha)(x-x_{0})+(\alpha^2 x_{0}^2-2\alpha x_{0} + 1) $


$ y = (2\alpha^2 x_{0} - 2 \alpha)x - \alpha^2 x_{0}^2 + 1 $



Пусть требуется найти приближения к $ \frac{1}{3} $
Тогда параболой будет функция $ 9x^{2}-6x+1 $

Касательными будут функции
$ y= (18 x_{0}-6)x-9x_{0}^2+1 $
В точке $ x_{0}=0 $ касательной будет $ -6x+1=0 $
Первым приближением будет $ \frac{1}{6} \approx 0.17 $
Подставив это значение в уравнение касательной, получим
$ y=-3x+ \frac{3}{4} $
Касательная пересечёт ось абсцисс в точке $ -3x+ \frac{3}{4}= 0 \rightarrow x=\frac{1}{4}=0.25 $
Приравняв $y $ к нулю и выразив $ x $ в уравнении касательной, получим уравнение, позволяющее получать новые приближения

$ x=\frac{9x_{0}^2-1}{18x_{0}-6} $



Напишем функцию, которая вычисляет данное значение при различных $ x_{0}$
Python:
def foo(x_null):
    x=(9.0*x_null**2.0-1.0)/(18.0*x_null-6.0)
    return x 
print (foo(foo(foo(foo(foo(foo(foo(0))))))))

Scheme
(define (foo x)( /(-(* 9 (* x x))1)(- (* 18 x)  6) ))
(display (foo(foo(foo(foo(foo(foo(foo 0))))))))

Добавим в функцию переменную, равную количеству рекурсивных вызовов функции

def foo(x_null,i):
    i=i-1
    x=(9.0*x_null**2.0-1.0)/(18.0*x_null-6.0)
    print(x)
    if i>=0:
        foo(x,i)
foo(0,7)   

получим приближение, равное $ 0.33 $
Далее этот алгоритм используется для подсчёта приближений в обыкновенных дробях на Scheme

Обработка переменных в цикле производится следующим образом
(define (do_cycle n)
  (do ((i 1 (+ i 1))) ((> i n)  )
   (display i)(display " ")   ))
(do_cycle 10)

Далее do_cycle используется для вычисления приближений в цикле
(define (foo x)( /(-(* 9 (* x x))1)(- (* 18 x)  6) ))
(define x0 0)
(define (do_cycle n)
  (do ((i 1 (+ i 1))) ((> i n)  )
   (foo x0)(set! x0 (foo x0))   ))
(do_cycle 7)
(display x0)

Если ограничиться однократным вычислением производной в точке начального приближения, то пересечения прямых, параллельных касательной $ y=-6x+1 $ с осью абсцисс дадут новые приближения
Подставив значение $ -6x+1=0 \rightarrow x= \frac{1}{6} $ в уравнение параболы $ 9x^{2}-6x+1 $ получим значение, на которое требуется сдвинуть касательную

Новой касательной будет $ -6x+1+0.25=-6x+1.25 $

а следующим приближением будет точка пересечения этой касательной с осью абсцисс
$ x=1.25/6 $

Подставив это значение в уравнение параболы $ 9x^{2}-6x+1 $ получим значение, на которое необходимо сдвинуть касательную по оси ординат

Напишем программу, реализующую данный метод
Пусть proxima — это последовательные приближения
b_coef — это коэффициент, на который сдвигается касательная по оси абсцисс
parabola() — это параболическая функция

proxima=0.17
b_coef=1.0
def parabola(x):
    return 9.0*x*x-6.0*x+1.0 
i=0
while i<=100000:
    b_coef = b_coef+parabola(proxima)
    proxima = b_coef/6.0
    i=i+1
print(proxima)    

Результат $ \approx 0.3333 $

Число $ b $ в уравнении линейной функции $ y = kx+b $ называется свободным коэффициентом
Предположим, что свободные коэффициенты касательных являются рациональными числами, то есть $ b \in \mathbb {Q} $. Тогда $ proxima \in \mathbb {Q} $, поскольку является результатом деления коэффициента $b$ на натуральное число
При подстановке proxima в $ y=(3x-1)^2 $ получим число рациональное. Тогда $ b \in \mathbb {Q} $ по предположению

В обыкновенных дробях:
(define proxima 1/6)
(define b_coef 1)
(define (parabola x)(  +( -(* 9 (* x x))(* 6 x))1  ) )

(define (do_cycle n)
  (do ((i 1 (+ i 1))) ((> i n)  )
  (set! b_coef (+ b_coef (parabola x0)))
  (set! proxima (/ b_coef 6)) 
     ))
(do_cycle 5)
(display proxima)




Извлечение квадратного корня


Существует несколько методов для приближенного вычисления (вычисления приближений) квадратного корня из натурального числа

Следующий алгоритм использует итерационный метод Герона

$ x_{n+1} = \frac{1}{2}(x_{n}+\frac{a}{x_{n}}) $


def square_root(a,n):        # a - подкоренное значение, n - количество циклов
        x0=1                      # первое приближение 
	arr=[]
	for i in range(n):
		arr.append(x0)       # добавляем к массиву новые приближения
		x0=0.5*(x0+a/x0)  # вычисляем приближения по формуле Герона
        return arr

Пусть $ x^2 =2 $, а значит $ x= \frac{2}{x} $
Пусть отрезок $ AB $ лежит на прямой $ y= \sqrt{2} $
Тогда точка $ B $ лежит на пересечении графиков функций $ y= \frac{2}{x} $ и $ y=x $
Пусть отрезок $ CD $ лежит на прямой $ x=1 $
отрезок $ EF $ лежит на прямой $ y=\frac{3}{2} $
Подставив $ \frac{3}{2} $ в уравнение $ y= \frac{2}{x} $
получим уравнение прямой $ x= \frac{4}{3} $, на которой лежит точка $ F $





Вычисление квадратного корня с помощью цепных дробей использовал Рафаэль Бомбелли

Чтобы найти значение $\sqrt{n}$, сначала определим его целое приближение: $\sqrt {n}=a\pm r $, где $ 0 < r < 1 $. Тогда $ n=(a\pm r)^{2}=a^{2}\pm 2ar+r^{2} $. Отсюда несложно вывести, что $ r={\frac {|n-a^{2}|}{2a\pm r}} $. Повторно подставляя полученное выражение в формулу $\sqrt {n}=a\pm r $, мы получаем разложение в цепную дробь:

$ a\pm {\frac {|n-a^{2}|}{2a\pm {\frac {|n-a^{2}|}{2a\pm {\frac {|n-a^{2}|}{2a\pm \cdots }}}}}} $




Алгоритм извлечения квадратного корня из натурального числа, используя разложение в цепную дробь:
arr=[]
def square_root(n,a,n_count): # n-подкоренное значение, a - целая часть корня 
    x0=a                                # первое приближение равно a
    global arr
    for i in range(n_count): # результат будет больше искомой величины на a
        arr.append(x0-a)  # вычитаем a
        x0=2*a+(n-a*a)/x0
 


Способ выделения целой части позволяет представить иррациональное число в виде бесконечной цепной дроби с единицами в числителях (частыми числителями, равными единице)
Вот пример разложения в цепную дробь числа $ \sqrt{5} $ из книги «Алгебра»

$ \sqrt{5}-2= \frac{(\sqrt{5}-2)(\sqrt{5}+2)}{\sqrt{5}+2}=\frac{1}{\sqrt{5}+2} $



Таким образом, $ \sqrt{5} = 2+\frac{1}{\sqrt{5}+2} $

Выделим целую часть числа $ \sqrt{5}+2:E(\sqrt{5}+2)=4 $. Значит, $ \sqrt{5}+2 $ можно представить в виде $ 4 + \alpha $. Ясно, что $ \alpha = \sqrt{5}+2-4=\sqrt{5}-2 $, поэтому $ \sqrt{5}+2=4+\sqrt{5}+2$. Снова уничтожим иррациональность в числителе второго слагаемого:

$ \sqrt{5}-2 = \frac{1}{\sqrt{5}+2} $


В итоге получилось:

$ \sqrt{5} = 2 + \frac{1}{4+\frac{1}{\sqrt{5}+2}} $


Проделаем еще один аналогичный шаг:

$ \sqrt{5} = 2 + \frac{1}{4+\frac{1}{4+\frac{1}{\sqrt{5}+2}}} $


Нетрудно заметить, что процесс выделения целой части и образования цепной дроби в данном примере не имеет конца. В каждом новом знаменателе будет появляться $ 4 $ и слагаемое $ \sqrt{5}-2 $. Поэтому ясно, что $ \sqrt{5}$ представляется в виде бесконечной цепной дроби:

$ \sqrt{5} = [2, 4, 4, 4, ...] $




Гипотеза


Если $ d \in \mathbb{N}, \sqrt{d} \notin \mathbb{N}$, то цепная дробь числа $ \sqrt{d} + [\sqrt{d}] $ чисто периодическая.
Эту гипотезу доказал Эварист Галуа

Т.е. если к непериодической части дроби $[1;2,2,2,...] = \sqrt{2}$ прибавить целую часть $ [\sqrt{2}] =1 $, то получится чисто периодическая дробь $ [2,2,2,...]$.

$\sqrt{3} = [1;1,2,...];$
$ \sqrt{3}+1 = [2,1,...] $

$\sqrt{5} = [2;4,4,4,...];$
$ \sqrt{5}+2 = [4,4,4,...] $

$\sqrt{6} = [2;2,4,...]; $
$ \sqrt{6}+2 = [4,2,...] $

$\sqrt{13} = [3;1,1,1,1,6,...];$
$ \sqrt{13}+3 = [6,1,1,1,1,...] $

Вычисление в облаке WolframAlpfa
WolframAlpfa производит вычисление цепных дробей с помощью операции continued fraction
Вычислим значение $ \sqrt{3} $
ссылка
Вычислим значение $\sqrt{3}+1$
ссылка

Если в разложении корня по методу Бомбелли

$ \sqrt{n} =a\pm {\frac {|n-a^{2}|}{2a\pm {\frac {|n-a^{2}|}{2a\pm {\frac {|n-a^{2}|}{2a\pm \cdots }}}}}} $


к первому слагаемому прибавить $ a $, получим чисто периодическую дробь

$ \sqrt{n}+a =2a\pm {\frac {|n-a^{2}|}{2a\pm {\frac {|n-a^{2}|}{2a\pm {\frac {|n-a^{2}|}{2a\pm \cdots }}}}}} $



Остаётся привести дробь к виду, в котором числителями дробей являются единицы

Разделив числитель и знаменатель дроби на $ |n-a^{2}| $, получим выражение

$ \sqrt{n}+a =2 a\pm {\frac {1}{\frac{2a}{|n-a^{2}|} \pm {\frac {1}{2a \pm {\frac {1}{\frac{2a}{|n-a^{2}|}\pm \cdots }}}}}} $


Таким образом

$ \sqrt{2}+1 = 2+ \frac{1}{\frac{2}{1} + \frac{1}{2 + \frac{1}{\frac{2}{1}+...} } } =[2,2,2,...] $


$ \sqrt{3}+1 = 2+ \frac{1}{\frac{2}{2} + \frac{1}{2 + \frac{1}{\frac{2}{2}+...} } } =[2,1,...] $


$ \sqrt{5}+2 = 4+ \frac{1}{\frac{4}{1} + \frac{1}{4 + \frac{1}{\frac{4}{1}+...} } } =[4,4,4,...] $


$ \sqrt{6}+2 = 4+ \frac{1}{\frac{4}{2} + \frac{1}{4 + \frac{1}{\frac{4}{2}+...} } } =[4,2,...] $


$ \sqrt{13}+3 = 6+ \frac{1}{\frac{6}{4} + \frac{1}{6 + \frac{1}{\frac{6}{4}+...} } } =[6,\frac{3}{2},...] $


Алгоритм приближения цепной дроби $ [6,\frac{3}{2},...] $
#lang racket
(define continued_fraction
 ( lambda (n)
  (if (= n 0) 1 
    (+ 6 (/ 1  (+ 3/2 (/ 1 (continued_fraction(- n 1)))))) 
  )))
(continued_fraction 4)

codepad.org
На четвёртом шаге получаем $ 6\frac{3818}{6305} $, что равно $ 6,6055511...$ в то время как $ \sqrt{13}+3 \approx 6.6055512... $.



Приближения к квадратному корню методом касательных


Для вычисления $ \sqrt{2} $ рассмотрим уравнение
$ x^{2}-2=0 $
$ x^{2}=2 $
$ x=\pm\sqrt{2} $
Эта парабола пересекает ось абсцисс в точках $ \pm\sqrt{2} $


Проведём через точку $(x=1;y=-1)$ касательную к параболе
Производная функции $ y=x^{2}-2 $ равна $ 2x $
Значение функции в точке $ x_{0} = 1^2-2=-1 $
Таким образом график прямой $ y=2x-3 $, пересекающий ось абсцисс в точке $ x=1.5 $ является касательной к параболе $ y=x^{2}-2 $ в точке с координатами $ x=1;y=-1 $

Проведем касательную в точке $ x_{0} = 1.5 $
Такой касательной будет функция $ y = 3x-\frac{17}{4} $
Точка пересечения с ось абсцисс $\frac{17}{12} $

Следующая касательная пересечёт ось абсцисс в точке $\frac{3462}{2448} $, и так далее…

В статье «Геометрический смысл производной» представлен метод построения касательной, основанный на определении длины подкасательной.
Обозначим через $P$ проекцию точки касания $M$ на ось $OX$, а через $K$ — точку, в которой касательная пересекает ось $OX$. Из прямоугольного треугольника $KPM$ получаем: $ |KP|\cdot|tg\alpha|=|y| $
или, поскольку $ tg\alpha=y' $

$ |KP|=\frac{|y|}{|y'|} $





Таким образом график прямой, пересекающий ось абсцисс в точке $ x=1+0.5=1.5 $ является касательной к параболе $ y=x^{2}-2 $ в точке с координатами $ x=1;y=-1$



Рассмотрим метод половинного деления или метод бисекции

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


Значит если разделить отрезок пополам и взять ту из половин, на концах которой функция по прежнему принимает значения разных знаков, то и обращаться в ноль она будет в этой половинке
Далее необходимо уже эту половинку разделить пополам и взять ту из половинок, на концах которой функция по прежнему принимает значения разных знаков…

Если произведение значений функции на концах отрезка меньше нуля, то функция обращается в ноль на этом отрезке
$ f(1)f(2)=(1^2-2)(2^2-2)<0 $

Сама функция $ x^2-2 $ определяется как
def foo(x):
    return x*x-2

а функция бисекции, принимающая границы интервала $ a $ и $ b $, а также количество итераций $ i $ в качестве параметров

def bisection(a, b, i):
    i=i-1 # уменьшаем количество итераций
    middle=(a+b)/2.0 # делим отрезок пополам
    print(middle)
    if i>0: 
        if(foo(a)*foo(middle)<0): # определяем нужный отрезок
            bisection(a,middle,i)
        if(foo(middle)*foo(b)<0):
            bisection(middle,b,i) #загружаем в функцию новые значения 




Следующий метод основан на лемме об охотнике и зайцах, которая гласит, что если луч $l$ проходит через узел $A$ некоторой решётки, тогда найдётся такой узел, расстояние от которого до луча $l$ будет меньше любого наперёд заданного числа $\epsilon$
Следствием является то, что для любого иррационального числа $ \alpha>0$ и любого положительного $\epsilon $ найдутся такие натуральные $m$ и $n$, что $ |m\alpha-n|<\epsilon $

Проведём прямую $ y=\alpha x$, где $ \alpha=\sqrt{2} $
Прямая $ y=\alpha x$ пересекает каждую вертикальную прямую $ x=m $ в точке $ (m,m\alpha) $
Найдём на прямой $ x=m $ такую точку $n>m$, что $ \frac{(n-1)^2}{m^2}<2 $ и $ \frac{n^2}{m^2}>2 $

for m in range(1,20):
	for n in range(m,20):
		if n**2/m**2>2:
			print('n / m=',n,'/',m)
			break





Уравнения Пелля



Пусть натуральное число $ a $ не является квадратом. Легко видеть, что $ \sqrt{a} $ не выражается отношением натуральных чисел, т.е. не существует такой обыкновенной дроби $ \frac{x}{y} $, что $ (\frac{x}{y})^2=a $. Другими словами, если натуральное число $ a $ не является точным квадратом, то уравнение $ x^2-ay^2=0 $ не имеет решения в натуральных числах.
Попытаемся в этом случае выразить $ \sqrt{a} $ отношением натуральных чисел приближённо. Если $ \sqrt{a} \approx \frac{x}{y} $, то $ x^2-ay^2 \approx 0 $. Самое близкое к нулю натуральное число — это единица. Поэтому дело сводится к решению в натуральных числах диофантова уравнения

$ x^2-ay^2=1 $


которое носит название… уравнения Пелля

Уточню, что $\sqrt{N}$ является иррациональным, если $ N $ не является точным квадратом
Доказательство иррациональности $\sqrt{N}$ («Квант»)
Пусть дано число $ N $, и $ \sqrt{N}=\frac{p}{q} $, где $ p $ и $ q $ — натуральные числа.
Пусть дробь $ \frac{p}{q} $ — несократимая (ведь любую дробь можно сокращать, пока у числителя и знаменателя не сократятся все общие делители).
Тогда $ \frac{p^2}{q^2}=N. $
В левой части стоит несократимая дробь (ведь $ p $ и $ q $ не имеют общих делителей), а в правой части уравнения — заведомо целое число. Но дробное число не может быть равно целому.
Значит,… число $\sqrt{N}$ не является рациональным, откуда следует, что оно иррациональное, что и требовалось доказать.


Теме исторического исследования данного вопроса посвящена статья «Как древнегреческие математики доказывали иррациональность $\sqrt{N}:1$»

При подстановке $ (x;y)=(1;1),(3;2),(7;5) $ в уравнение
$ x^{2}=2y^{2} \pm 1 $
получим тождества
$1^2=2 \cdot 1^2-1 $
$ 3^{2}=2 \cdot 2^{2} + 1 $
$ 7^{2}=2 \cdot 5^{2} - 1 $
Здесь каждая новая пара выражается через предыдущую подстановкой в рекуррентную формулу
$ y_{n+1} = x_{n}+y_{n} $
$ x_{n+1} = y_{n+1}+y_{n}=x_{n}+y_{n}+y_{n}=x_{n}+2 \cdot y_{n} $
Следующая программа использует данные соотношения для вычисления приближений к корню из двух
x0=1
y0=1
x=0 
y=0 
i=0
while i<=6:
    y=x0+y0
    x=2*y0+x0
    x0=x
    y0=y
    i=i+1 
print(x)
print(y)

Получившиеся приближение $ \frac{577}{408} $ было известно ещё математикам древней Индии



Указания к решению квадратного уравнения


Полином $ n- $ой степени от переменной $ x $ есть сумма вида $ P(x)=c_{0}+c_{1}x^{1}+...+c_{n}x^{n} $

Из теоремы Безу:

остаток от деления полинома $ P(x)$ на полином первой степени $ (x-a) $ равен $ P(a) $

следует, что если остаток от деления равен нулю, то число $ a $ является решением уравнения $ P(x)=0 $, поскольку $ (a-a)Q(x)+P(x) =0 $, где $ Q(x) $ — это полином степени $ n-1 $ от переменной $ x $

Квадратное уравнение $ x^2+px+q=0 $ можно представить как $ (x-x_{1})(x-x_{2})=0 $, где $ x_{1} $ и $ x_{2} $ являются корнями квадратного уравнения

По теореме Виета
сумма корней приведённого квадратного уравнения равна второму коэффициенту с противоположным знаком, а их произведение равно свободному коэффициенту

$ x_{1}+x_{2} = -p $
$ x_{1} \cdot x_{2} = q $
поскольку
$ (x-x_{1})(x-x_{2}) = x^2-xx_{2}-xx_{1}+x_{1}x_{2}=x^2-(x_{1}+x_{2})x+x_{1}x_{2} $
Значит сумма и произведение корней уравнения $ x^2-x-1=0 $ равны
$ x_{1}+x_{2}=1 $
$ x_{1}x_{2}=-1 $

По формуле сокращенного умножения квадрат разности корней
$ (x_{1}-x_{2})^2=x_{1}^2-2x_{1}x_{2}+x_{2}^2=$
$=x_{1}^2+2x_{1}x_{2}+x_{2}^2-4x_{1}x_{2}= (x_{1}+x_{2})^2-4x_{1}x_{2} $
Подставив числовые значения в уравнение, получим
$ (x_{1}+x_{2})^2-4x_{1}x_{2}= 1-4(-1)=5 $
Значит
$ (x_{1}-x_{2})^2=5 $
$ x_{1}-x_{2}= \sqrt{5} $
Решив систему уравнений
$ x_{1}-x_{2}= \sqrt{5} $
$ x_{1}+x_{2}=1 $
в ответе получим золотое сечение
$ 2x_{1}= \sqrt{5}+1 \rightarrow x_{1}=\frac{\sqrt{5}+1}{2} $

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

Лемма Ферма утверждает, что производная дифференцируемой функции в точке экстремума равна нулю. Её касательная в данной точке параллельна оси абсцисс.
Производная приведённого квадратного уравнения $ x^2+px+q=0 $ равна $ 2x+p=0 $

Точки пересечения параболы с осью абсцисс симметричны относительно вершины
Будем сдвигать параболу $ y=x^2-x $ вниз до тех пор, пока точки пересечения не приблизятся к $-\frac{1}{\phi} $ и $\phi $

Пускай расстояние между корнями увеличивается на определённый шаг до тех пор, пока произведение корней не превысит модуль единицы
def foo(x1,x2,step):
    x1=x1+step
    x2=x2+step
    if x1*x2<1:
        foo(x1,x2,step)
    else:
        print(x1-step)               
foo(0,1,0.1)

При длине шага $0.1$ $ \phi \approx 1.6 $
При уменьшении длины шага $ step= 0.01 $ $ \phi \approx 1.61 $
При $ step= 0.001 $ $ \phi \approx 1.618 $ и так далее…

P.S.
Следующая задача из сборника Арнольда рассматривается в статье журнала «Квант» Удивительные приключения периодических дробей

27. Доказать, что остаток от деления числа $ 2^{p-1} $ на простое нечетное число
$ p $ равен $ 1 $
(примеры: $ 2^{2} = 3a+1, 2^{4}=5b+1, 2^{6}=7c+1, 2^{10} -1 = 1023 = 10 \cdot 93) $.

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

Книги


Задачи для детей от 5 до 15 лет В. И. Арнольд
Курс дифференциального и интегрального исчисления Г. М. Фихтенгольц
Теория чисел А. А. Бухштаб
За страницами учебника математики Н. Я. Виленкин, Л. П. Шибасов, З. Ф. Шибасова
Алгебра Н. Я. Виленкин, Р. С. Гутер, С. И. Шварцбурд
Что такое производная Виленкин Н., Мордкович А., журнал «Квант»
Геометрический смысл производной Хинчин А., журнал «Квант»
Метод математической индукции И.С. Соминский
Число Фидия — золотое сечение Савин А., журнал «Квант»
Числа Фибоначчи Н. Н. Воробьёв
Числа Фибоначчи Спивак А., журнал «Квант»
Уравнения Пелля Сендеров В., Спивак А., журнал «Квант»
Золотое сечение Бендукидзе А. Д., журнал «Квант»
Решётки и правильные многоугольники Егоров А., журнал «Квант»
Числа и многочлены Ашманов С., журнал «Квант»
Что такое математика? Курант Р., Роббинс Г.
Как древнегреческие математики доказывали иррациональность $\sqrt{N}:1$ А.И. Щетников
Digital Arithmetic Ercegovac Milos D., Lang Tomas
Tags:
Hubs:
Total votes 24: ↑18 and ↓6+12
Comments26

Articles