There is a recognized ternary operation that delivers a result of the same data type as its inputs; it is a particular four-dimensional generalization of the cross product.
Let A be the vector [ a0, a1, a2, a3 ]; similarly for B and C. Also let W = { W0, W1, W2, W3 } be an orthonormal basis of an 4-dimensional vector space. Then it becomes convenient to define this cross product as the determinant of a formal matrix. (This report uses an HTML table to display the matrix.)
A × B × C = det |
|
The determinant can be expanded. Let R = A × B × C. Then:
r0 = | + a3b2c1 | − a2b3c1 | + a2b1c3 | − a3b1c2 | + a1b3c2 | − a1b2c3 |
r1 = | + a2b3c0 | − a3b2c0 | + a3b0c2 | − a2b0c3 | + a0b2c3 | − a0b3c2 |
r2 = | + a1b0c3 | − a0b1c3 | + a0b3c1 | − a1b3c0 | + a3b1c0 | − a3b0c1 |
r3 = | + a0b1c2 | − a1b0c2 | + a1b2c0 | − a0b2c1 | + a2b0c1 | − a2b1c0 |