Теорема 3.1. (Алгоритм Кука — Тоома [3.2].) Апериодическая свертка (3.4) может быть вычислена за  общих умножений.
 общих умножений. 
Конструктивное доказательство теоремы можно получить, если заметить, что  имеет степень
 имеет степень  Следовательно,
 Следовательно,  не изменится, если оно определено по модулю любого полинома
 не изменится, если оно определено по модулю любого полинома  степени, равной
 степени, равной  
 
 
Предположим, что  выбран так, что
 выбран так, что 
 
где  есть
 есть  различных чисел в поле
 различных чисел в поле  коэффициентов.
 коэффициентов.  может быть вычислен путем приведения
 может быть вычислен путем приведения  по модулю
 по модулю  что эквивалентно подстановке а вместо Z в
 что эквивалентно подстановке а вместо Z в  Тогда
 Тогда  вычисляется за
 вычисляется за  общих умножений с помощью
 общих умножений с помощью  произведений
 произведений  и восстановления
 и восстановления  в соответствии с китайской теоремой об остатках.
 в соответствии с китайской теоремой об остатках.  Заметим, что приведение по модулю
 Заметим, что приведение по модулю  и восстановление в соответствии с китайской теоремой об остатках подразумевают умножения на скаляры, которые являются степенями
 и восстановление в соответствии с китайской теоремой об остатках подразумевают умножения на скаляры, которые являются степенями  Для коротких сверток в качестве
 Для коротких сверток в качестве  различных
 различных  можно выбрать просто целые числа, например,
 можно выбрать просто целые числа, например,  так что эти умножения становятся либо тривиальными, либо сводятся к нескольким сложениям. Для больших сверток, однако, требование, чтобы все а; были различными, приводит к необходимости выбора больших чисел, так что эти скалярные произведения должны либо трактоваться как общие умножения, либо будут требовать большого числа сложений. Таким образом, алгоритм Кука — Тоома практически используется только для коротких сверток. Для больших сверток лучшего баланса между минимизацией числа умножений и минимизацией числа сложений можно достичь с помощью методов преобразования, которые, как мы покажем, тесно связаны с алгоритмом Кука — Тоома.
 так что эти умножения становятся либо тривиальными, либо сводятся к нескольким сложениям. Для больших сверток, однако, требование, чтобы все а; были различными, приводит к необходимости выбора больших чисел, так что эти скалярные произведения должны либо трактоваться как общие умножения, либо будут требовать большого числа сложений. Таким образом, алгоритм Кука — Тоома практически используется только для коротких сверток. Для больших сверток лучшего баланса между минимизацией числа умножений и минимизацией числа сложений можно достичь с помощью методов преобразования, которые, как мы покажем, тесно связаны с алгоритмом Кука — Тоома. 
В алгоритме Кука — Тоома результирующий полином  степени
 степени  восстановлен из
 восстановлен из  числовых значений
 числовых значений  полученных заменой Z на
 полученных заменой Z на  Таким образом, алгоритм Кука — Тоома может рассматриваться как реализация интерполяционного метода Лагранжа [3.2]. Выбор
 Таким образом, алгоритм Кука — Тоома может рассматриваться как реализация интерполяционного метода Лагранжа [3.2]. Выбор  различных а, - и поля коэффициентов произволен. Если различные а; выбраны в качестве последовательных степеней числа
 различных а, - и поля коэффициентов произволен. Если различные а; выбраны в качестве последовательных степеней числа  и если поле
 и если поле  таково,
 таково,  все различны, алгоритм Кука—Тоома приводит к вычислению апериодической свертки с помощью преобразований, имеющих структуру ДПФ. Например, если
 все различны, алгоритм Кука—Тоома приводит к вычислению апериодической свертки с помощью преобразований, имеющих структуру ДПФ. Например, если  и
 и  есть кольцо чисел по модулю числа Мерсенна (
 есть кольцо чисел по модулю числа Мерсенна ( — простое) или числа Ферма
 — простое) или числа Ферма  то такие преобразования будут преобразованиями Мерсенна или Ферма [3.8, 3.9].
 то такие преобразования будут преобразованиями Мерсенна или Ферма [3.8, 3.9]. 
Когда  является полем комплексных чисел и
 является полем комплексных чисел и  использование алгоритма Кука — Тоома эквивалентно вычислению апериодической свертки с помощью ДПФ. В этом случае
 использование алгоритма Кука — Тоома эквивалентно вычислению апериодической свертки с помощью ДПФ. В этом случае  преобразуется к виду
 преобразуется к виду 
 
 
а апериодическая свертка  -точечной последовательности
-точечной последовательности  и
 и  -точечной
-точечной  вычисляется как циклическая свертка двух расширенных последовательностей
 вычисляется как циклическая свертка двух расширенных последовательностей 
 
из  точек, полученных добавлением
 точек, полученных добавлением  нулей к последовательности
 нулей к последовательности  нулей к последовательности
 нулей к последовательности  Таким образом, традиционный метод вычисления апериодических сверток с помощью ДПФ и метод секционирования с суммированием
 Таким образом, традиционный метод вычисления апериодических сверток с помощью ДПФ и метод секционирования с суммированием  близко связаны с алгоритмом Кука — Тоома.
 близко связаны с алгоритмом Кука — Тоома. 
Из теоремы 3.1 видно, что апериодическая ( -точечная свертка может быть вычислена с помощью
-точечная свертка может быть вычислена с помощью  умножений посредством полиномиального умножения по модулю полинома
 умножений посредством полиномиального умножения по модулю полинома  степени
 степени  причем этот полином выбирается как произведение
 причем этот полином выбирается как произведение  полиномов первой степени в поле коэффициентов
 полиномов первой степени в поле коэффициентов  Полученные результаты иа случай полиномиальных произведений по модулю любого полинома
 Полученные результаты иа случай полиномиальных произведений по модулю любого полинома  обобщает следующая важная теорема, принадлежащая Винограду [3.11].
 обобщает следующая важная теорема, принадлежащая Винограду [3.11]. 
Теорема 3.2. Минимальное число общих умножений, необходимых для вычисления произведения полиномов  равно
 равно  где
 где  — степень
 — степень  и
 и  — число неприводимых множителей
 — число неприводимых множителей  полинома
 полинома  поля
 поля  (включая 1).
 (включая 1). 
Конструктивное доказательство этой теоремы строится с помощью китайской теоремы об остатках. Поскольку  является произведением
 является произведением  неприводимых полиномов
 неприводимых полиномов  можно найти приведением
 можно найти приведением  по модулю
 по модулю  вычислением
 вычислением  полиномиальных произведений
 полиномиальных произведений  соответствующих приведенным полиномам
 соответствующих приведенным полиномам  и восстановлением
 и восстановлением  из
 из  с помощью китайской теоремы об остатках. Как и в теореме 3.1, умножения на скаляры, используемые при приведении и восстановлении по китайской теореме об остатках, не учитываются, и единственными общими умножениями являются те, которые входят в произведение
 с помощью китайской теоремы об остатках. Как и в теореме 3.1, умножения на скаляры, используемые при приведении и восстановлении по китайской теореме об остатках, не учитываются, и единственными общими умножениями являются те, которые входят в произведение  Пусть
 Пусть  — степень
 — степень  Поскольку
 Поскольку  имеет степень
 имеет степень  имеют степень
 имеют степень  то их произведение можно вычислить за
 то их произведение можно вычислить за  умножений по теореме 3.1:
 умножений по теореме 3.1: 
 
где  полином степени
 полином степени  выбирается в виде произведения
 выбирается в виде произведения  полиномов первой степени в поле
 полиномов первой степени в поле  Таким образом, число общих умножений
 Таким образом, число общих умножений  соответствует
 соответствует  
 
Важное следствие из теоремы 3.2 относится к вычислению циклических сверток. Циклическую свертку двух  -точечных последовательностей можно представлять в полиномиальных обозначениях как полиномиальное произведение по модулю
-точечных последовательностей можно представлять в полиномиальных обозначениях как полиномиальное произведение по модулю  Было показано, что, если
 Было показано, что, если  — поле комплексных чисел,
 — поле комплексных чисел,  разлагается на
 разлагается на  полиномов
 полиномов  первой степени и что циклическая свертка вычисляется с помощью ДПФ посредством
 первой степени и что циклическая свертка вычисляется с помощью ДПФ посредством  общих умножений. К сожалению,
 общих умножений. К сожалению,  — иррациональные и комплексные числа, поэтому умножения на скаляры, используемые при вычислении ДПФ, должны рассматриваться как общие умножения.
 — иррациональные и комплексные числа, поэтому умножения на скаляры, используемые при вычислении ДПФ, должны рассматриваться как общие умножения. 
Если  — поле рациональных чисел,
 — поле рациональных чисел,  разлагается на произведения полиномов с рациональными коэффициентами. Такие полиномы называются циклотомическими [3.7]. Циклотомические полиномы являются неприводимыми в поле рациональных чисел. Их корни комплексны и образуют подмножество множества
 разлагается на произведения полиномов с рациональными коэффициентами. Такие полиномы называются циклотомическими [3.7]. Циклотомические полиномы являются неприводимыми в поле рациональных чисел. Их корни комплексны и образуют подмножество множества  где
 где  
 
 
Можно показать, что для заданного  число
 число  различных циклотомических полиномиальных множителей
 различных циклотомических полиномиальных множителей  равно числу делителей
 равно числу делителей  включая 1 и
 включая 1 и  Кроме того, степень каждого циклотомического полинома, соответствующая данному делителю
 Кроме того, степень каждого циклотомического полинома, соответствующая данному делителю  числа
 числа  равна функции Эйлера
 равна функции Эйлера  . Таким образом, для циклической свертки теорема 3.2 сводится к следующей теореме.
. Таким образом, для циклической свертки теорема 3.2 сводится к следующей теореме. 
Теорема 3.3. Минимальное число общих умножений, необходимое для вычисления циклической  -точечной свертки, равно
-точечной свертки, равно  , где
, где  — число делителей
 — число делителей  включая
 включая  
 
Вычисление циклической свертки по теореме 3.2 значительно упрощается вследствие того, что коэффициенты циклотомических полиномов являются просто целыми числами. Более того, эти целые числа могут принимать значения только  или
 или  за исключением случая очень больших цнклотомическнх полиномов [3.2]. При этом приведение и восстановление по китайской теореме об остатках могут быть выполнены с малым числом сложений, что можно проиллюстрировать на простом примере
 за исключением случая очень больших цнклотомическнх полиномов [3.2]. При этом приведение и восстановление по китайской теореме об остатках могут быть выполнены с малым числом сложений, что можно проиллюстрировать на простом примере  -точечной циклической свертки. В этом случае имеются только два делителя числа 5: 1 и 5. Таким образом,
-точечной циклической свертки. В этом случае имеются только два делителя числа 5: 1 и 5. Таким образом,  разлагается на два циклотомических полинома:
 разлагается на два циклотомических полинома:  Приведение входных полиномов
 Приведение входных полиномов  по модулю
 по модулю  равносильно простой замене Z на 1 в
 равносильно простой замене Z на 1 в  и поэтому выполняется за 4 сложения. Приведения по модулю
 и поэтому выполняется за 4 сложения. Приведения по модулю  также выполняются за 4 сложения путем вычитания члена четвертой степени из всех остальных членов входных полиномов, так как
 также выполняются за 4 сложения путем вычитания члена четвертой степени из всех остальных членов входных полиномов, так как  Умножение по модулю
 Умножение по модулю  есть просто скалярное умножение, а умножение по модулю
 есть просто скалярное умножение, а умножение по модулю  выполняется за 7 умножений при использовании теоремы 3.1. Восстановление по китайской теореме об остатках может рассматриваться как обращение приведений и выполняется за 8 сложений. Таким образом,
 выполняется за 7 умножений при использовании теоремы 3.1. Восстановление по китайской теореме об остатках может рассматриваться как обращение приведений и выполняется за 8 сложений. Таким образом,  -точечная циклическая свертка с учетом приведений и восстановления по китайской теореме об остатках вычисляется только за 8 умножений и ограниченное число сложений.
-точечная циклическая свертка с учетом приведений и восстановления по китайской теореме об остатках вычисляется только за 8 умножений и ограниченное число сложений.