I am using an FFT to multiply polynomials. Because I want the program to be as fast as possible I am leaving away the zero padding. For example, if we want to calculate: $(58 + 37x + 238x^2 + 155x^3)^2$. Apply FFT and then multiply the array with itself and do an inverse FFT. After downscaling the polynomial will be: $71478 + 78072x + 53002x^2 + 35592x^3$. This is a cyclical convolution meaning it is a multiplication modulo $(x^4 - 1)$. However I would like to convert this to a Negacyclic convolution meaning: Multiplication modulo $(x^4 + 1)$. Or universally $(x^n + 1)$. Does anyone have an idea how to accomplish this?
2026-03-26 11:16:25.1774523785
Negacyclic FFT multiplication
2.1k Views Asked by Bumbble Comm https://math.techqa.club/user/bumbble-comm/detail At
1
There are 1 best solutions below
Related Questions in POLYNOMIALS
- Alternate basis for a subspace of $\mathcal P_3(\mathbb R)$?
- Integral Domain and Degree of Polynomials in $R[X]$
- Can $P^3 - Q^2$ have degree 1?
- System of equations with different exponents
- Can we find integers $x$ and $y$ such that $f,g,h$ are strictely positive integers
- Dividing a polynomial
- polynomial remainder theorem proof, is it legit?
- Polyomial function over ring GF(3)
- If $P$ is a prime ideal of $R[x;\delta]$ such as $P\cap R=\{0\}$, is $P(Q[x;\delta])$ also prime?
- $x^{2}(x−1)^{2}(x^2+1)+y^2$ is irreducible over $\mathbb{C}[x,y].$
Related Questions in FOURIER-ANALYSIS
- An estimate in the introduction of the Hilbert transform in Grafakos's Classical Fourier Analysis
- Verifying that translation by $h$ in time is the same as modulating by $-h$ in frequency (Fourier Analysis)
- How is $\int_{-T_0/2}^{+T_0/2} \delta(t) \cos(n\omega_0 t)dt=1$ and $\int_{-T_0/2}^{+T_0/2} \delta(t) \sin(n\omega_0 t)=0$?
- Understanding Book Proof that $[-2 \pi i x f(x)]^{\wedge}(\xi) = {d \over d\xi} \widehat{f}(\xi)$
- Proving the sharper form of the Lebesgue Differentiation Theorem
- Exercise $10$ of Chapter $4$ in Fourier Analysis by Stein & Shakarchi
- Show that a periodic function $f(t)$ with period $T$ can be written as $ f(t) = f_T (t) \star \frac{1}{T} \text{comb}\bigg(\frac{t}{T}\bigg) $
- Taking the Discrete Inverse Fourier Transform of a Continuous Forward Transform
- Is $x(t) = \sin(3t) + \cos\left({2\over3}t\right) + \cos(\pi t)$ periodic?
- Translation of the work of Gauss where the fast Fourier transform algorithm first appeared
Related Questions in FAST-FOURIER-TRANSFORM
- Translation of the work of Gauss where the fast Fourier transform algorithm first appeared
- Arcsin of a number greater than one
- Unable to solve nonlinear equation using scipy.optimize.fsolve
- Fourier transform on formal series
- Optimization of a Fast Fourier Transformation-based correlation function?
- Example of 1-D Poisson Equation in physics field, engineering field, or others in daily life
- Fourier Curve Fitting
- The best textbook on Fourier Transformation for beginners
- What is the intuition of FFT for polynomial multiplication?
- Which part of formula is FFT changing the basis?
Trending Questions
- Induction on the number of equations
- How to convince a math teacher of this simple and obvious fact?
- Find $E[XY|Y+Z=1 ]$
- Refuting the Anti-Cantor Cranks
- What are imaginary numbers?
- Determine the adjoint of $\tilde Q(x)$ for $\tilde Q(x)u:=(Qu)(x)$ where $Q:U→L^2(Ω,ℝ^d$ is a Hilbert-Schmidt operator and $U$ is a Hilbert space
- Why does this innovative method of subtraction from a third grader always work?
- How do we know that the number $1$ is not equal to the number $-1$?
- What are the Implications of having VΩ as a model for a theory?
- Defining a Galois Field based on primitive element versus polynomial?
- Can't find the relationship between two columns of numbers. Please Help
- Is computer science a branch of mathematics?
- Is there a bijection of $\mathbb{R}^n$ with itself such that the forward map is connected but the inverse is not?
- Identification of a quadrilateral as a trapezoid, rectangle, or square
- Generator of inertia group in function field extension
Popular # Hahtags
second-order-logic
numerical-methods
puzzle
logic
probability
number-theory
winding-number
real-analysis
integration
calculus
complex-analysis
sequences-and-series
proof-writing
set-theory
functions
homotopy-theory
elementary-number-theory
ordinary-differential-equations
circles
derivatives
game-theory
definite-integrals
elementary-set-theory
limits
multivariable-calculus
geometry
algebraic-number-theory
proof-verification
partial-derivative
algebra-precalculus
Popular Questions
- What is the integral of 1/x?
- How many squares actually ARE in this picture? Is this a trick question with no right answer?
- Is a matrix multiplied with its transpose something special?
- What is the difference between independent and mutually exclusive events?
- Visually stunning math concepts which are easy to explain
- taylor series of $\ln(1+x)$?
- How to tell if a set of vectors spans a space?
- Calculus question taking derivative to find horizontal tangent line
- How to determine if a function is one-to-one?
- Determine if vectors are linearly independent
- What does it mean to have a determinant equal to zero?
- Is this Batman equation for real?
- How to find perpendicular vector to another vector?
- How to find mean and median from histogram
- How many sides does a circle have?
I found an answer in Bernsteins Paper. The first part is found in: http://cr.yp.to/lineartime/multapps-20080515.pdf which states the following: One can multiply in $R[x]/(x^{2n} +1)$ with $(34/3)n \log(n) + O(n)$ in R if n is a power of two. Map $R[x]/(x^{2n} +1)$ to $C[x]/(x^n−i)$, twist $C[x]/(x^n−i)$ into $C[x]/(x^n −1)$, and apply the tangent FFT.
Mapping from $R[x]/(x^{2n} +1)$ to $C[x]/(x^n−i)$ is fairly easy. This would look like: $a_0 + a_1 x + \dots + a_{2n-1}x^{2n-1}$ => $(a_0+ i*a_n) + (a_1 + i*a_{n+1})x + \dots + (a_{n-1} + i*a_{2n-1})x^{n-1}$ However twisting to $C[x]/(x^n −1)$ was not clear to me until I found the following in another paper by Bernstein about the Tangent FFT. This could be done by applying $\zeta_{4n}^k$ where $\zeta_n^k= exp^{\frac{k2\pi i}{n}}$. Thus would now be $(a_0+ i*a_n) + (a_1 + i*a_{n+1})\zeta_{4n}^1 x + \dots + (a_{n-1} + i*a_{2n-1})\zeta_{4n}^{n-1} x^{n-1}$. After doing the FFT one needs to inverse this twist and also inverse the mapping.