The Peculiar Math That Could Underlie the Laws of Nature
quantamagazine.org
quantamagazine.org
What I learned in school was that we have complex numbers and vectors. Vectors have their own peculiar two types of products, dot-product and cross-product. Complex numbers you just "multiply".
I always had this question in the back of my brain, aren't complex numbers and vectors really the same. Why do we need both?
SEE ALSO: https://nautil.us/blog/the-strange-numbers-that-birthed-mode...
Turns out Hamilton invented Quaternions but then "Hostilities broke out when a Yale professor named Josiah Gibbs defined the modern vector."
So vectors are like handicapped quaternions
If I understood the articles correctly Quaternions subsume complex numbers, but at the same time they are an alternative for the vector representation.
I would like to get rid of vectors if all I need is quaternions.
It leaves me a bit puzzled then what kind of an entity is a vector of complex numbers? Could that also be replaced by Quaternions?
Getting back to your original question, it might make things easier to look at a simpler example. Imagine all we had was the rational numbers, called Q. Then Pythagoras comes along and proves that sqrt(2) is not rational.
To fix this, we introduce the new number √2; and define a new number system where all number take the form a+b√2. To formalize this system, we say that what these numbers are actually 2 dimensional vectors (a,b) with addition and multiplication defined as follows:
(a,b) + (x,y) = (a+x, b+y)
(a,b) * (x,y) = (ax+2by, bx+ay)
We can call this new number system Q(√2), to reflect the fact that we got it by adding √2 to Q.Note that this is almost the exact vector definition for complex numbers, except that we have a "2" instead of "-1" when we define multiplication.
Now, having done that, suppose Pythagoras comes back and points out that we are still missing the square root of 3. We can use the same trick to introduce √3
(a,b) + (x,y) = (a+x, b+y)
(a,b) * (x,y) = (ax+3by, bx+ay)
Giving us Q(√2)(√3)In this case, a,b,x,y are not rational numbers, but elements of Q(√2). In this was, elements of Q(√2)(√3) can themselves be seen as 2 dimensional vectors of elements of Q(√2).
On the other hand, if we wanted to, we could also define Q(√2)(√3) directly as a 4 dimensional vector over Q, which we can express as Q(√2,√3) to reflect the fact that we are constructing it in a single step:
(a,b,c,d) + (w,x,y,z) = (a+w, b+x, c+y, d+z)
(a,b,c,d) * (w,x,y,z) = (aw+2bx+6c7+3dz, ax+bw+3cz+3dy, ay+bz+cw+dx, az+2by+2cx+dw)
Assuming I didn't make a mistake typing out the above, you can verify that it does infact represent the number system where all numbers take the form: a+b√2 + c√2√3 + d√3
And addition and mulitplication behave as you would expect.The thing to notice here is that, while it is straightforward to work out what the multiplication rule for Q(√2,√3) is, it is far from a simple rule. On the other hand, by instead thinking of it as Q(√2)(√3), we can break it down into 2 relativly simple multiplication rules.
Simmilarly, if we were to start with Q(√2,√3), we could then view Q(√2) not as a 2 dimensional vector over Q, but instead as a portion of Q(√2,√3) where all the elements take the form (a,b,0,0). As a practical matter, the rule for multiplying in Q(√2,√3) is more complicated then the rule for multiplying in Q(√2), so we tend to prefer to stick with the simpler system until we have a need to go to the more complicated system.
In the same way, you can define quaternions directly as a 4 dimensional extension of the real numbers. However, it generally makes life easier to view them as a 2 dimensional extension of the complex numbers.
As an aside, the complex numbers are often defined not as a simple ordered pair of real numbers, but rather a 2x2 matrix of real numbers that take the form:
a b
-b a
This works out to give us multiplication "for free" as matrix multiplication; where our original definition required us to invent a new defintion of multiplication.The quaternions are similarly defined as complex values matricies of the form:
a+bi c+di
-c+di a-bi
Or, if you are familiar with the complex conjugate a b
-b‾ a‾
Again, you get multiplication "for free" from matrix multiplication.In contrast, if you wanted to define the quaternions directly from the real numbers, they would take the form:
a b c d
-b a -d c
-c d a -b
d -c b a
Which, again is more complicated then what you get by going through the complex numbers.Just to be sure you would say that a vector is an ordered sequence of numbers or vectors?
So a complex vector is simply a sequence of complex numbers? And a complex number is a sequence of two numbers.
Then a complex number's two parts could both be complex numbers too right? Multiplying such numbers could mean simply multiplying their element complex numbers.
We write a complex number as c+di why not simply write it as (c, d)?
I guess I'm back to my original question: Why do we need BOTH vectors AND complex numbers? Or would it make it easier to say that complex numbers are a subset of vectors?
The big conceptual leap to make is that mathematicians tend to avoid defining things by what they are; but instead define things by what properties they poses. So, an ordered pair such as (c, d) is not a vector except in a context where you also defined operations on it that satisfy the properties that we want vectors to satisfy. I'll put a more complete description on what those properties are later in this post.
> We write a complex number as c+di why not simply write it as (c, d)?
As I mentioned in my previous post, it is also possible to define complex numbers not as an ordered sequence of 2 real numbers, but instead as a 2x2 matrix of the form:
a b
-b a
By making complex numbers a matrix, we can re-use many facts we already know about matrices when studying complex numbers.It is also possible to define complex numbers as a type of modular arithmetic of polynomials, denoted by R[x] / <x^2 - 2>. The R[x] here says to start with all polynomials with real coefficients, and the /<x^2 + 1> says to consider them mod x^2 + 1 [0]. For instance, we have:
x^3 = x(x^2 + 1) - x mod x^2 +1
x^3 = x(0) - x mod x^2 +1
x^3 = -x mod x^2 +1
Similarly, you have: x^2 = (x^2 + 1) - 1 mod x^2 + 1
x^2 = 0 - 1 mod x^2 + 1
x^2 = -1 mod x^2 + 1
So "x" is (almost by definition) a square root of -1. This structure also gives you the complex numbers.For the most part, we don't actually care what construction of the complex numbers we are using. As long as we know that all the possible constructions are equivalent, we can switch between them freely based on what is most convenient.
When you write (c,d) you are committing to thinking of complex numbers as an ordered pair of 2 real numbers. This makes it harder to both think about complex numbers as their own abstract object, or as matrices, or as polynomials. However, in some circumstances it is useful to think of complex numbers in those other ways.
In contrast, when you write complex numbers as c+di, you are making no statement about what complex numbers actual are. As long as someone's idea of complex numbers includes:
1) some square root of -1 that is written by "i" 2) An obvious way of turning a real number into a complex one ( e.g, x -> (x,0) ). 3) Addition/subtraction/multiplication/division that work as expected
They can use the above notation.
Additionally, the c+di notation allows you to use complex numbers without decomposing them. For instance, you can say: x=c+di, then carry around x as a single term.
You could, in theory, also say x=(c,d) and carry x around, but then you are just a few short steps away from someone saying:
i = (0,1)
1 = (1,0)
2 = (2,0)
3.7 = (3.7, 0)
r = (r, 0) for all real numbers r.
At which point you are right back to the c+di notation.> Then a complex number's two parts could both be complex numbers too right?
Kind of. In all of the definitions of complex numbers I gave, it was assumed that each individual component is a real number. Letting components themselves be complex means that you are defining complex numbers in terms of complex numbers. Circular/recursive definitions like this are not impossible, but are more difficult to reason about (and I'm not sure how well it would work in the case of complex numbers).
In terms of the c+di notation, really c,d,i are all just complex numbers, and c+di is what you get when you multiply d with i and add c. We tend to write them with c and d being real numbers because that is the "simplest" form. For instance, if we had c=(x+yi) and d=a+bi, we would have:
c+di = (x+yi) + (a+bi) = (x+a) + (y+b)i
At which point we might as well compute m=x+a and n=y+b and just write: m + ni
> Multiplying such numbers could mean simply multiplying their element complex numbers.This doesn't work. Or, at least, does not give you the complex numbers. If the complex numbers are C, the structure you just described is called C x C, or the cartesian product of C by itself. To see why this is not equivelent to the complex numbers consider the following mulitplication in C x C:
(0+0i, 0+1i) * (0+1i, 0+0i) = (0,i) * (i,0)
Multiplying these elements indiviually gives us: (0,i) * (i,0) = (0,0)
However, in the complex numbers, the only way to get to 0 by multiplication is if one of the factors is also 0.> Just to be sure you would say that a vector is an ordered sequence of numbers or vectors?
Not quite. At this point, I will just link to the definition of vector [1]. Essentially, it is just a list of properties that a structure must have. Any structure with those properties is a vector.
Any ordered sequence of "numbers" (assuming a suitable definition of "number") becomes a vector when you attach to it:
A) the obvious definition of addition: (a,b,...,k) + (m,n,...z) = (a+m, b+n, k+z)
B) and the obvious definition of multiplying a sequence of numbers by a single number: a(m,n,...,z) = (am,an, ..., az)
A sequence of 2 real numbers is therefore a vector over the real numbers when you attach the above notions of addition and multiplication.
Notice that the above says nothing about multiplying 2 vectors together. It does not always make sense to multiply 2 vectors together; and when it does, there are often different notions of multiplication you can use. The defining feature of complex numbers is arguably how they behave under multiplication with other complex numbers, which has nothing to do with them being vectors.
Even though every ordered sequence of "numbers" is a vector, not every vector is a ordered sequence of "numbers"
For example, the set of all real functions, { f : R -> R } for a vector-space relative to the real numbers, with addition and multiplication defined as follows:
(f + g)(x) = f(x) + g(x)
(a * f)(x) = a * f(x)
However, it is impossible to express all such functions as sequence of numbers.> Just to be sure you would say that a vector is an ordered sequence of ... vectors?
Technically, any ordered sequence of vectors is also an ordered sequence of numbers. E.g ((a,b), (x,y)) can be thought of as just (a,b,x,y). So an ordered sequence of vectors is itself a vector.
However, it seems like you are thinking of something more specific. Specifically, Normally, when we think of a vector as an ordered sequence, each component of that ordered sequence is the same type of object as a scalar is. This only works for an ordered sequence of vectors if the vectors themselves can also be scalars. As it turns out, the complex numbers (with their particular notion of multiplication) happen to fit the requirements to be a scalar as well, but most vectors do not.
> Why do we need BOTH vectors AND complex numbers? Or would it make it easier to say that complex numbers are a subset of vectors?
I think I answered this, but to make it explicit. The complex numbers are an example of vectors, but not all vectors are complex numbers. The complex numbers have interesting properties that are unrelated to them being vectors. Vectors have proven properties that can be applied to any example of vectors. This allows us to apply everything we know about vectors to the complex numbers; even things we learned about vectors while studying very different types of vectors.
[0] Technically, the notation in R[x] / <x^2 - 2> is a bit more general then I am describing here, but not by much.
Just to explain a bit what made me think of this: I'm doing Object-Oriented Programming. I have data-structures like Array, let's say 2-array. But because it is OOP I can also associate operations with the data-structures. If I store numbers into a two-array and add operations of complex arithmetic as my methods I now have Complex Numbers. But what If I want to do cross-product and dot-product too? I just add those methods into my class. I now have a class I could name ComplexNumber, or I could name it Vector2D.
Instead of creating separate classes for Complex Numbers and Vectors it seems to me it gets simpler if I create just one class, and add operations to it as needed.
So I wonder when I was taught complex numbers why didn't they tell me that I can also do cross-products on them . And when I was taught vectors why didn't they tell me they are really complex numbers, they just added two new operations to them, the cross-product and dot-product... ?
The nature of vectors, pseudovectors, complex numbers, quaternions etc. can be understood only in the context of the theory of geometric algebras. For example, an element of a 2-dimensional geometric algebra has 4 components (2^2). 2 components form a vector and the other 2 form a complex number. Similarly, the 8 components of an element of a 3-dimensional geometric algebra are partitioned into a quaternion, a 3-dimensional vector and the last element, which is a pseudoscalar.
The confusion is increased by the fact that the word "vector" is used with 2 different meanings. The original, physical and etymological, meaning is that a vector is a translation of an affine space. This is almost always the meaning of "vector" in physics. Many mathematicians also use the word "vector" for the elements of linear spaces a.k.a. vector spaces.
The "vectors" of the second meaning have only a subset of the properties of the "vectors" of the first meaning, i.e. only the properties that can be derived from the axioms of a vector space. The complex numbers and the quaternions, octonions etc. are "vectors" in the second meaning, but they are not "vectors" in the first meaning, i.e. in the original physical meaning.
I suggest the parenthesis are not artificial: they specify an order of operations. i.e. they specify the timing of operations.
Choosing a, b, c as things that change with time makes it easy to think of nonassociative examples:
(Crack open an egg) then (cook it) = (scrambled egg)
(Cook an egg) then (peel it) = (boiled egg)
(Crack an egg) then (cook it then eat it)
vs
(Crack an egg then cook it) then (eat it)