Complex number algebra & vector algebra are usually taught as separate subjects, with little cross-over. However, I find the following operations to be extremely useful -- at least in programming & Maxima hacking -- when dealing with complex numbers. They are often more useful/perspicuous than the conjugate operation. dot(A,B) = dot(B,A) = realpart(A)*realpart(B)+imagpart(B)*imagpart(B) = (conjugate(A)*B+conjugate(B)*A)/2 = A.B cross(A,B) = -cross(B,A) = determinant([realpart(A),imagpart(A)],[realpart(B),imagpart(B)]) = realpart(A)*imagpart(B)-imagpart(A)*realpart(B) = (conjugate(A)*B-conjugate(B)*A)/2i = AxB 1.A = dot(1,A) = realpart(A) i.A = dot(i,A) = imagpart(A) 1xA = cross(1,A) = imagpart(A) Axi = cross(A,i) = realpart(A) (A.B)^2+(AxB)^2 = (A.A)*(B.B) For example, the vector A can be decomposed into the parallel & perpendicular components of B: A = (B.A)/(B.B)*B + i*(BxA)/(B.B)*B Trying to express this just with conjugates isn't particularly perspicuous. How come these vector operations on complex numbers aren't defined & used more often? (So what if complex numbers are only 2-dimensional; they're incredibly useful in that 2D domain.)