<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://neerc.ifmo.ru/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=5.165.73.140&amp;*</id>
		<title>Викиконспекты - Вклад участника [ru]</title>
		<link rel="self" type="application/atom+xml" href="http://neerc.ifmo.ru/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=5.165.73.140&amp;*"/>
		<link rel="alternate" type="text/html" href="http://neerc.ifmo.ru/wiki/index.php?title=%D0%A1%D0%BB%D1%83%D0%B6%D0%B5%D0%B1%D0%BD%D0%B0%D1%8F:%D0%92%D0%BA%D0%BB%D0%B0%D0%B4/5.165.73.140"/>
		<updated>2026-04-14T20:25:57Z</updated>
		<subtitle>Вклад участника</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://neerc.ifmo.ru/wiki/index.php?title=%D0%94%D0%B8%D1%81%D0%BA%D1%80%D0%B5%D1%82%D0%BD%D0%BE%D0%B5_%D0%BF%D1%80%D0%B5%D0%BE%D0%B1%D1%80%D0%B0%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D0%A4%D1%83%D1%80%D1%8C%D0%B5&amp;diff=68162</id>
		<title>Дискретное преобразование Фурье</title>
		<link rel="alternate" type="text/html" href="http://neerc.ifmo.ru/wiki/index.php?title=%D0%94%D0%B8%D1%81%D0%BA%D1%80%D0%B5%D1%82%D0%BD%D0%BE%D0%B5_%D0%BF%D1%80%D0%B5%D0%BE%D0%B1%D1%80%D0%B0%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D0%A4%D1%83%D1%80%D1%8C%D0%B5&amp;diff=68162"/>
				<updated>2019-01-05T13:03:09Z</updated>
		
		<summary type="html">&lt;p&gt;5.165.73.140: Исправление пределов суммирования.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Определение&lt;br /&gt;
|definition=&lt;br /&gt;
'''Дискретное преобразование Фурье''' (англ. ''Discrete Fourier Transform, DFT'') многочлена &amp;lt;tex&amp;gt;A(x)&amp;lt;/tex&amp;gt; называют вектор значений этого многочлена в точках &amp;lt;tex&amp;gt;x = \omega_{n,k}&amp;lt;/tex&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt;&lt;br /&gt;
\mathrm{DFT}(a_0, a_1, \ldots , a_{n-1}) = (y_0, y_1, \ldots , y_{n-1}) = (A(\omega_{n,0}), A(\omega_{n,1}), \ldots , A(\omega_{n,n-1}))&lt;br /&gt;
&amp;lt;/tex&amp;gt;&lt;br /&gt;
&amp;lt;tex&amp;gt;&lt;br /&gt;
 = (A(\omega_n^0), A(\omega_n^1), \ldots , A(\omega_n^{n-1})),&lt;br /&gt;
&amp;lt;/tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
где &amp;lt;tex&amp;gt;\omega_{n,k} = e^{i\frac{2\pi k}{n}}&amp;lt;/tex&amp;gt; {{---}} &amp;lt;tex&amp;gt; k-&amp;lt;/tex&amp;gt;ый из &amp;lt;tex&amp;gt;n&amp;lt;/tex&amp;gt; комплексных корней из единицы. &amp;lt;tex&amp;gt;\omega_n = \omega_{n,1} = e^{i\frac{2\pi}{n}}&amp;lt;/tex&amp;gt; называется главным значением корня &amp;lt;tex&amp;gt;n&amp;lt;/tex&amp;gt;-ой степени из единицы, а все остальные корни являются его степенями: &amp;lt;tex&amp;gt;\omega_{n,k} = (\omega_n)^k&amp;lt;/tex&amp;gt;.&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
{{Определение&lt;br /&gt;
|definition=&lt;br /&gt;
'''Обратное дискретное преобразование Фурье''' (англ. ''Inverse DFT'') для вектора значений многочлена &amp;lt;tex&amp;gt;A(\omega_n)&amp;lt;/tex&amp;gt; &amp;lt;tex&amp;gt;(y_0, y_1, \ldots , y_{n-1})&amp;lt;/tex&amp;gt; {{---}} вектор коэффициентов этого многочлена &amp;lt;tex&amp;gt;(a_0, a_1, \ldots , a_{n-1})&amp;lt;/tex&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;tex&amp;gt;&lt;br /&gt;
\mathrm{InvDFT}(y_0, y_1, \ldots , y_{n-1}) = (a_0, a_1, \ldots , a_{n-1}).&lt;br /&gt;
&amp;lt;/tex&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Применение ДПФ ==&lt;br /&gt;
Дискретное преобразование Фурье используют для быстрого перемножения двух полиномов &amp;lt;tex&amp;gt;A&amp;lt;/tex&amp;gt; и &amp;lt;tex&amp;gt;B&amp;lt;/tex&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Для того чтобы получить произведение двух многочленов за время, меньшее чем &amp;lt;tex&amp;gt;O(n^2)&amp;lt;/tex&amp;gt;, необходимо сначала посчитать &amp;lt;tex&amp;gt;DFT&amp;lt;/tex&amp;gt; обоих многочленов. Так как при умножении двух многочленов их значения просто перемножаются в каждой точке. Следовательно, если &amp;lt;tex&amp;gt;DFT&amp;lt;/tex&amp;gt; {{---}} это вектор значений многочлена, то мы можем получить значение произведения двух многочленов, просто перемножив их ДПФ. Значит, чтобы получить коэффициенты полученного многочлена, применим обратное ДПФ.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;tex&amp;gt;&lt;br /&gt;
A \times B = \mathrm{InvDFT}(\mathrm{DFT}(A) \times \mathrm{DTF}(B)).&lt;br /&gt;
&amp;lt;/tex&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Так как ДПФ многолчена {{---}} это вектор его значений, значит, перемножение двух ДПФ требует только &amp;lt;tex&amp;gt;O(n)&amp;lt;/tex&amp;gt; операций. Осталось только вычислять ДПФ и обратное ДПФ за время &amp;lt;tex&amp;gt;O(n \log n)&amp;lt;/tex&amp;gt;. Для этого используем [[Быстрое преобразование Фурье| быстрое преобразование Фурье]].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
ДПФ также применяют для быстрого умножения двух длинных чисел, которые в свою очередь могут быть представлены в виде полиномов.&lt;br /&gt;
&lt;br /&gt;
== ДПФ в модульной арифметике ==&lt;br /&gt;
В основе ДПФ используются комплексные числа, являющиеся корнями &amp;lt;tex&amp;gt;n&amp;lt;/tex&amp;gt;-ой степени из единицы. Для эффективного вычисления использовались свойства комплексных корней, которые образуют [[Группа | группу]], то есть степень одного корня всегда является другим корнем. Среди них есть корень, называемый [[Первообразные корни | примитивным]].&lt;br /&gt;
&lt;br /&gt;
Однако, то же верно и в случае корней &amp;lt;tex&amp;gt;n&amp;lt;/tex&amp;gt;-ой степени из единицы в модульной арифметике. Не для любого модуля &amp;lt;tex&amp;gt;p&amp;lt;/tex&amp;gt; найдется &amp;lt;tex&amp;gt;n&amp;lt;/tex&amp;gt; различных корней, но такие модули все же существуют. Необходимо найти примитивный корень, то есть:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;tex&amp;gt;&lt;br /&gt;
(\omega_n)^n = 1 \ \mod p,&lt;br /&gt;
&amp;lt;/tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;tex&amp;gt;&lt;br /&gt;
(\omega_n)^k \ne 1 \ \mod p, 1 \leqslant  k &amp;lt; n.&lt;br /&gt;
&amp;lt;/tex&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Как и с комплексными корнями, остальные &amp;lt;tex&amp;gt;n-1&amp;lt;/tex&amp;gt; корней &amp;lt;tex&amp;gt;n&amp;lt;/tex&amp;gt;-ой степени из единицы по модулю &amp;lt;tex&amp;gt;p&amp;lt;/tex&amp;gt; можно получить как степени примитивного корня &amp;lt;tex&amp;gt;\omega_n&amp;lt;/tex&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Следствия ==&lt;br /&gt;
{{Утверждение&lt;br /&gt;
|statement= &amp;lt;tex&amp;gt;\mathrm{DFT}(\mathrm{DFT}(a_0, a_1, \ldots , a_{n-1})) = \dfrac{1}{n} (a_0, a_{n-1}, \ldots , a_1) &amp;lt;/tex&amp;gt;&lt;br /&gt;
|proof=&lt;br /&gt;
Применим к обеим частям обратное ДПФ и получим:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;tex&amp;gt;&lt;br /&gt;
\mathrm{DFT}(a_0, a_1, a_{n-1}) = \mathrm{InvDFT}\left(\dfrac{1}{n} (a_0, a_{n-1}, \ldots , a_1)\right)&lt;br /&gt;
&amp;lt;/tex&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Заметим, что слева у нас находится вектор значений многочлена с коэффициентами &amp;lt;tex&amp;gt;(a_0, a_1, \ldots , a_{n-1})&amp;lt;/tex&amp;gt; и обозначим его за &amp;lt;tex&amp;gt;(y_0, y_1, \ldots , y_{n-1})&amp;lt;/tex&amp;gt;. Заметим, что:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;tex&amp;gt;&lt;br /&gt;
y_k = \sum\limits_{j=0}^{n-1} a_j e^{i\frac{2\pi k}{n} j}&lt;br /&gt;
&amp;lt;/tex&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Теперь рассмотрим правую часть. По определению, справа у нас находится вектор коэффициентов многочлена со значениями &amp;lt;tex&amp;gt;\left( \dfrac{1}{n} a_0, \dfrac{1}{n} a_{n-1}, \ldots , \dfrac{1}{n} a_1 \right)&amp;lt;/tex&amp;gt; в точках &amp;lt;tex&amp;gt;x = \omega_n^k&amp;lt;/tex&amp;gt;. Обозначим его как &amp;lt;tex&amp;gt;(y_0 ', y_1 ', \ldots , y_{n-1} ')&amp;lt;/tex&amp;gt;, где:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;tex&amp;gt;&lt;br /&gt;
y_k '= \dfrac{1}{n} \sum\limits_{j=0}^{n-1} z_j e^{-i\frac{2\pi k}{n} j},&lt;br /&gt;
&amp;lt;/tex&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
где&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;tex&amp;gt;&lt;br /&gt;
\begin{pmatrix}&lt;br /&gt;
z_0 \\&lt;br /&gt;
z_1 \\&lt;br /&gt;
z_2 \\&lt;br /&gt;
\vdots \\&lt;br /&gt;
z_{n-1}&lt;br /&gt;
\end{pmatrix}&lt;br /&gt;
=&lt;br /&gt;
\begin{pmatrix}&lt;br /&gt;
\dfrac{a_0}{n}\\&lt;br /&gt;
\dfrac{a_{n-1}}{n}\\&lt;br /&gt;
\dfrac{a_{n-2}}{n}\\&lt;br /&gt;
\vdots \\&lt;br /&gt;
\dfrac{a_1}{n}&lt;br /&gt;
\end{pmatrix}&lt;br /&gt;
&amp;lt;/tex&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Тогда, подставляя значения &amp;lt;tex&amp;gt;z_j&amp;lt;/tex&amp;gt;, получаем:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;tex&amp;gt;&lt;br /&gt;
y_k ' = a_0 e^0 + \sum\limits_{j=1}^{n} a_j e^{-i\frac{2\pi k}{n} (n - j)} = a_0 + \sum\limits_{j=1}^{n} a_j e^{-i 2\pi k} e^{i\frac{2\pi k}{n} j}&lt;br /&gt;
&amp;lt;/tex&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
А так как &amp;lt;tex&amp;gt;e^{-i 2\pi k} = \left(\dfrac{1}{e^{i 2\pi}}\right)^k = 1&amp;lt;/tex&amp;gt;, получаем:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;tex&amp;gt;&lt;br /&gt;
y_k ' = a_0 + \sum\limits_{j=1}^{n} a_j e^{i \frac{2\pi k}{n} j} = \sum\limits_{j=0}^{n} a_j e^{i\frac{2\pi k}{n} j} = y_k.&lt;br /&gt;
&amp;lt;/tex&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
== Пример == &lt;br /&gt;
Посчитаем &amp;lt;tex&amp;gt;\mathrm{DFT}&amp;lt;/tex&amp;gt; для полинома степени &amp;lt;tex&amp;gt;n = 4&amp;lt;/tex&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;tex&amp;gt;&lt;br /&gt;
A(x) = 5 + 2x + 4x^2 - x^3&lt;br /&gt;
&amp;lt;/tex&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Тогда подставляя значения &amp;lt;tex&amp;gt;k&amp;lt;/tex&amp;gt; в &amp;lt;tex&amp;gt;e^{2i\frac{\pi k}{4}}&amp;lt;/tex&amp;gt; получаем:&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;tex&amp;gt;&lt;br /&gt;
x_0 = \ \ 1 \\&lt;br /&gt;
x_1 = \ \ 2 \\&lt;br /&gt;
x_2 = \ \ 4 \\&lt;br /&gt;
x_3 = -1&lt;br /&gt;
&amp;lt;/tex&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Построим матрицу Вандермонда:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;tex&amp;gt;&lt;br /&gt;
\begin{pmatrix}&lt;br /&gt;
1 &amp;amp; 1 &amp;amp; 1 &amp;amp; 1 \\&lt;br /&gt;
1 &amp;amp; i &amp;amp; -1 &amp;amp; -i \\&lt;br /&gt;
1 &amp;amp; -1 &amp;amp; 1 &amp;amp; -1 \\&lt;br /&gt;
1 &amp;amp; -i &amp;amp; 1 &amp;amp; i&lt;br /&gt;
\end{pmatrix}&lt;br /&gt;
\begin{pmatrix}&lt;br /&gt;
5 \\&lt;br /&gt;
2 \\&lt;br /&gt;
4 \\&lt;br /&gt;
-1&lt;br /&gt;
\end{pmatrix}&lt;br /&gt;
=&lt;br /&gt;
\begin{pmatrix}&lt;br /&gt;
10 \\&lt;br /&gt;
1 + 3i \\&lt;br /&gt;
8 \\&lt;br /&gt;
1 - 3i&lt;br /&gt;
\end{pmatrix}&lt;br /&gt;
&amp;lt;/tex&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Получаем вектор значений многочлена &amp;lt;tex&amp;gt;(y_0, y_1, y_2, y_3)&amp;lt;/tex&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;tex&amp;gt;&lt;br /&gt;
y_0 = 1 \cdot 5 \ + \ 1 \cdot 2 \ + \ 1 \cdot 4 \ -1 \ = \ 10 \\&lt;br /&gt;
y_1 = 1 \cdot 5 \ + \ 2i \ - \ 4 \ + \ i \ = \ 1 \ + \ 3i \\&lt;br /&gt;
y_2 = 1 \cdot 5 \ - \ 2 \ + \ 4 \ + 1 \ = \ 8 \\&lt;br /&gt;
y_3 = 1 \cdot 5 \ - \ 2i \ - \ 4 \ - \ i = 1 \ - \ 3i &lt;br /&gt;
&amp;lt;/tex&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
В итоге получаем: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;tex&amp;gt;&lt;br /&gt;
\mathrm{DFT}(A) = (10, 1 + 3i, 8, 1 - 3i)&lt;br /&gt;
&amp;lt;/tex&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Аналогично, получаем обратное ДПФ.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;tex&amp;gt;&lt;br /&gt;
\begin{pmatrix}&lt;br /&gt;
a_0 \\&lt;br /&gt;
a_1 \\&lt;br /&gt;
a_2 \\&lt;br /&gt;
a_3&lt;br /&gt;
\end{pmatrix}&lt;br /&gt;
=&lt;br /&gt;
{\begin{pmatrix}&lt;br /&gt;
1 &amp;amp; 1 &amp;amp; 1 &amp;amp; 1 \\&lt;br /&gt;
1 &amp;amp; i &amp;amp; -1 &amp;amp; -i \\&lt;br /&gt;
1 &amp;amp; -1 &amp;amp; 1 &amp;amp; -1 \\&lt;br /&gt;
1 &amp;amp; -i &amp;amp; -1 &amp;amp; i&lt;br /&gt;
\end{pmatrix}}^{-1}&lt;br /&gt;
\begin{pmatrix}&lt;br /&gt;
10 \\&lt;br /&gt;
1 + 3i \\&lt;br /&gt;
8 \\&lt;br /&gt;
1 - 3i&lt;br /&gt;
\end{pmatrix}&lt;br /&gt;
&amp;lt;/tex&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&amp;lt;tex&amp;gt;&lt;br /&gt;
\begin{pmatrix}&lt;br /&gt;
a_0 \\&lt;br /&gt;
a_1 \\&lt;br /&gt;
a_2 \\&lt;br /&gt;
a_3&lt;br /&gt;
\end{pmatrix}&lt;br /&gt;
=&lt;br /&gt;
\dfrac{1}{-16i}&lt;br /&gt;
\begin{pmatrix}&lt;br /&gt;
-4i &amp;amp; -4i &amp;amp; -4i &amp;amp; -4i \\&lt;br /&gt;
-4i &amp;amp; -4 &amp;amp; 4i &amp;amp; 4 \\&lt;br /&gt;
-4i &amp;amp; 4i &amp;amp; -4i &amp;amp; 4i \\&lt;br /&gt;
-4i &amp;amp; 4 &amp;amp; 4i &amp;amp; -4&lt;br /&gt;
\end{pmatrix}&lt;br /&gt;
\begin{pmatrix}&lt;br /&gt;
10 \\&lt;br /&gt;
1 + 3i \\&lt;br /&gt;
8 \\&lt;br /&gt;
1 - 3i&lt;br /&gt;
\end{pmatrix}&lt;br /&gt;
&amp;lt;/tex&amp;gt;&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;center&amp;gt;&lt;br /&gt;
&amp;lt;tex&amp;gt;&lt;br /&gt;
a_0 = \dfrac{1}{4} (10 + 1 + 3i + 8 + 1 - 3i) = 5 \\&lt;br /&gt;
a_1 = \dfrac{1}{4} (10 + (1 + 3i)(-i) + (-1)8 + (1 - 3i)i) = 2 \\&lt;br /&gt;
a_2 = \dfrac{1}{4} (10 + (1 + 3i)(-1) + 8 + (1 - 3i)(-1)) = 4 \\&lt;br /&gt;
a_3 = \dfrac{1}{4} (10 + (1 + 3i)i + (-1)8 + (1 - 3i)(-i)) = -1&lt;br /&gt;
&amp;lt;/tex&amp;gt;&lt;br /&gt;
&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== См. также ==&lt;br /&gt;
*[[Быстрое преобразование Фурье]]&lt;br /&gt;
&lt;br /&gt;
== Источники информации ==&lt;br /&gt;
*[https://ru.wikipedia.org/wiki/%D0%94%D0%B8%D1%81%D0%BA%D1%80%D0%B5%D1%82%D0%BD%D0%BE%D0%B5_%D0%BF%D1%80%D0%B5%D0%BE%D0%B1%D1%80%D0%B0%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5_%D0%A4%D1%83%D1%80%D1%8C%D0%B5 Википедия {{---}} Дискретное преобразование Фурье]&lt;br /&gt;
*[http://e-maxx.ru/algo/fft_multiply MAXimal::algo::Быстрое преобразование Фурье за O (N log N)]&lt;br /&gt;
&lt;br /&gt;
[[Категория: Алгоритмы и структуры данных]]&lt;br /&gt;
[[Категория: Алгоритмы алгебры и теории чисел]]&lt;br /&gt;
[[Категория: Основные элементы теории чисел]]&lt;br /&gt;
[[Категория: Основные алгоритмы теории чисел]]&lt;/div&gt;</summary>
		<author><name>5.165.73.140</name></author>	</entry>

	</feed>