Complex numbers product using only three real multiplications

The product between two complex numbers can be performed with only three real multiplications. This is an application of Karatsuba’s algorithm. Indeed,

x = a + i * b;
y = c + i * d;

real(x * y) = a * c - b * d;
imag(x * y) = (a + b) * (c + d) - a * c - b * d;

Of course, the question is: can we perform the product between two complex numbers with less than three real multiplications?

The answer is NO and is provided by Winograd’s theorem in: Winograd, “On the number of multiplications required to compute certain functions”, Commun. Pure Appl. Math. 23 (1970), 165-179.

NB. The minimum number of multiplications required in the computation of the product between two complex numbers is three.

Leave a Reply

Your email address will not be published. Required fields are marked *