Complex numbers demystified
Complex numbers are often introduced in an unnecessarily mystic and arcane way using the property. And suddenly multiplication breaks and looks nothing like what we're used to.
This leads to many dismissing complex numbers thinking they are too, well, complex to understand. However, in reality, complex numbers are a beautiful and simple generalization of the real numbers which you're already familiar with, and they can be introduced without using square roots at all! In fact, is just a neat consequence of complex numbers, and has nothing to do with the way they're defined.
But before we can introduce complex numbers, we have to understand another mathematical object: The field.
The classical definition of a field is a set
Formally, this means for all
- Distributivity of multiplication over addition:
- Additive and multiplicative identities both in
- Additive and multiplicative inverses are defined
Let's look at
We can generalize the real numbers to a
Here, addition is defined as vector addition, and multiplication is defined as scalar multiplication.
This way, the real numbers become which, per our definitions of vector addition and multiplication, collapses to our usual real number field.
The complex numbers would then just two dimensional tuples of numbers, , right?
Well, let's look at how many of the field properties complex numbers satisfy then:
Let , , and :
For addition, we get:
By expanding this using vector addition, we see that:
Which gives us two equations:
Which we know is true from the field properties of .
Likewise, for multiplication, we get:
Again, by expanding this using vector multiplication, we get:
Which we also know to be true from the field properties of .
We can show the same thing for commutativity and distributivity of multiplication over addition using the exact same method.
Furthermore, we can find additive and multiplicative identities of ; Namely, and .
However, we cannot find any element satisfying the conditions of the multiplicative inverses, and since all the requirements must be met in order to have a field, we now know that is not a field using our definitions for vector addition and multiplication.
Complex numbers are a solution to this problem.
Instead of using scalar multiplication as your multiplicative operator, we instead use the at first somewhat weird looking definition:
The addition operator remains the same.
Using these definitions, we recover the field properties in . Hurray!
One interesting property is that when the complex part, that is in , is zero, the complex numbers behave just like the real numbers:
For multiplication that is:
And for addition:
However, if the real number part is zero multiplying two complex numbers can result in a real number. In other words, multiplying complex numbers results in a rotation of a two dimensional coordinate system.
If we define , we see that:
Notice that this is a consequence of defining multiplication in a way that preserves the field properties in , and not something mystical crazy mathematicians have pulls out of thin air.
This property also gives us a neat way of writing complex numbers. Since , we can write the part as a real number multiple of
This representation also gives us a simple way of finding the multiplicative inverse:
Complex-valued neural networks
Since the complex numbers are a field, we can use everything we know from linear algebra with complex numbers.
This means that we can create neural networks which work with complex numbers instead of the usual real numbers.
Recent theoretical research has shown that complex neural networks have can encode more rich representations, and are more robust against noise. However, the potential of complex networks remain largely untapped.    
In an upcoming essay, we will discuss how to create complex valued neural networks.
We have seen how we can introduce complex numbers as a natural generalization of the real numbers, and how is consequence which arises from defining a multiplication operation which preserves the field properties in .
You can think of a set analogous to a bag in programming; only it can be infinitely large. That is a set is just a collection of numbers. A set doesn't need to be ordered. ↩︎