# Vectors of complex or hypercomplex numbers?

Is there a field which studies vectors of complex numbers or vectors of hypercomplex numbers in general? Is it useful to think of a mono audio signal as a vector of complex numbers where imaginary part encodes the timing information? Similarly, is it useful to think of a grayscale image as a quaternion vector where imaginary components encode the pixel position? Can this kind of logic be fruitful in any way?

• If you use discrete Fourier transform to save mono audio, you basically store it as a vector of imaginary numbers, where the one part specifies the amount a frequency and the other the offset. Similar things hold for images that can be saved by a discrete cosine transform. I have not heard of quaternions used in such a way. Commented Dec 19, 2020 at 19:33

Is there a field which studies vectors of complex numbers or vectors of hypercomplex numbers in general?

Not a dedicated field as such; the machinery for $$\Bbb C^n$$ or $$\Bbb H^n$$ is basically the same as for $$\Bbb R^{jn}$$, where $$j\in\{1,\,2,\,4\}$$ depending on what you're doing, but with some slight adjustments such as inner products being sesquilinear rather than bilinear.

Is it useful to think of a mono audio signal as a vector of complex numbers where imaginary part encodes the timing information?

Or even as a complex-valued function, depending on whether you'll use a Fourier series or Fourier transform to switch from time space to frequency space (or vice versa).

is it useful to think of a grayscale image as a quaternion vector where imaginary components encode the pixel position? Can this kind of logic be fruitful in any way?

It's neither useful nor fruitful. At least with audio signals complex numbers help encode phase information and facilitate the solving of relevant differential equations. But quaternions are only worth using if you'll multiply them, because the only difference between $$\Bbb H$$ and $$\Bbb R^4$$ is that we define a multiplication operation on the former. Are you going to multiply two colours to get a third colour? I don't think so. In fact, the quaternion you get won't even be part of your $$3$$-dimensional subset in general.

You could do something like this with CMYK, provided you use a coordinate transformation that lets each component be unbounded, but it'd still be pointless. If for example you learn yellow times pink is green (which wouldn't even stay true if you switched to another transformation), is that useful? No, not at all.

• Thanks for your reply. However, if you convert a grayscale image into a real vector (vectorize) you lose some information right? In that sense isn't this kind of logic more information preserving?
– user
Commented Jan 1, 2021 at 10:15
• @user What information are you losing? It takes only finitely many real-valued parameters, which can be stored in a vector, to specify a pixel's colour, be it full colour or grayscale.
– J.G.
Commented Jan 1, 2021 at 10:17
• If you vectorize an image (in linear algebra sense) you may not recover the pixels' positions back. Aren't the dimensions of a vector indistinguishable as they are pairwise orthogonal to each other? However, this is certainly not the case for an image or an audio which has spatial/temporal information.
– user
Commented Jan 1, 2021 at 10:53
• @user I'm not sure what you're talking about. We just have a conventional order in which we list a pixel's parameters, together with a conventional order in which we list pixels. There's no benefit to storing up to $4$ real parameters in a quaternion, unless there's a reason it matters that they are quaternions, but here there isn't since you're not multiplying them.
– J.G.
Commented Jan 1, 2021 at 11:27
• @user 2/2 (The term "tensor" is sometimes abused to this end, but "array" avoids such misleading connotations.) Basically, we're looking for a function whose domain is discrete but multidimensional.
– J.G.
Commented Jan 2, 2021 at 13:07