Rotations and reflections
4. Thinking of rotations in terms of reflections
We will explore this relationship both geometrically and algebraically. Let's start with the algebriac approach. However, first we need to understand the concept of a reflection matrix. One can think of reflection around a point, a line or a hyperplane. We will start with reflection around a line and then derive some properties for reflection around a hyperplane.
4.1 Reflection matrices
The reflection of a vector \( v \) about the line represented by a unit vector \( u \) keeps the component of \( v \) along \( u \) the same and negates the component of \( v \) perpendicular to \( u \). We define these components first and then the reflected vector:
The component parallel to \( u \): \( v_{∥} = (uu^T)v \)
The component perpendicular to \( u \): \( v_\perp = (I - uu^T)v \)
The original vector: \( v = v_{∥} + v_\perp \)
The reflected vector: \( v_{out} = v_{∥} - v_\perp = (2uu^T - I)v \)
Thus the matrix \( M = 2uu^T - I \) reflects any vector around the line given by a unit vector \( u \).
Now we define reflection around a hyperplane - it means reflection around a line in 2D, reflection across a plane in 3D and reflection around a \( n-1 \) hyperplane in a \( n- \)dimensional space. We represent this hyperplane using a unit vector \( u \) that is orthogonal to this space. This reflection flips the component of the vector parallel to the vector \( u \) while keeping the rest of the components the same. Using the same logic as above, we have:
The reflected vector: \( v_{out} = v_\perp - v_{∥} = (I - 2uu^T)v \)
4.3 Algebriac approach
It is easy to see that if \( M = I - 2uu^T \) is a reflection matrix, \( MM^T = I - 2uu^T - 2uu^T + 4u(u^Tu)u^T = I \). Thus, just like a rotation matrix, a reflection matrix is orthogonal and its inverse is its transpose. Note that this matrix maps \( u \) to \( -u \) and keeps the rest of the orthogonal vectors the same. In other words, it has \( n-1 \) eigenvalues equal to 1 and one eigenvalue equal to -1. Its determinant is -1. To summarize, if \( M \) is a reflection matrix:If \( R \) is a rotation matrix, we have:
\( MM^T = I \)
\( det(M) = -1 \)
\( RR^T = I \)
\( det(R) = 1 \)
It is easy to see that if \( M_1, M_2 \) are two reflection matrices,Thus \( M_1M_2 \) is a rotation matrix. In other words, a composition of two reflections is a rotation.
\( (M_1M_2)(M_1M_2)^T = I \)
\( det(M_1M_2) = (-1)^2 = 1 \)
4.1 Geometric approach
We visualize a rotation as a composition of two reflections around two axes. We will show this for both 2D and 3D rotations - for both these visualizations we will use the 2D plane. Let's start with 2D rotations:
Two reflections by any pair of lines with angle \( \theta \) = one rotation by \( 2 \theta \)
Reflection of a vector around two lines (———then···): Orange → violet → Orange.
We can see that a rotation by \( 2\theta \) is equivalent to two reflections around any pair of lines with an angle of \( \theta \) between them. The fact that we can pick any pair of lines will come in handy shortly. Now we will show that a 3D rotation can be represented as a composition of two reflections around two lines. We will map the plane defined by the two lines to reflection to the xy-plane and then visualize the reflection of the vector (not necessarily in the plane) around the xy-plane.
Two reflections in a 3D space: note that here the rotation happens in the plane defined by the two lines of reflection
Reflection of a vector around two lines (———then···): Orange (above the plane) → violet (below the plane) → Orange (above the plane).
Note that each reflection changes the z-value of the vector. If the vector is above the xy-plane, the first reflection will change the z-value to negative and the second reflection will change it back to positive. If the vector is below the xy-plane, the first reflection will change the z-value to positive and the second reflection will change it back to negative. The z-values of the input vector and the vector obtained after second reflection are the same. However, the final rotation that is equivalent to these two reflections keeps the z-value of the vector constant throughout the rotation. What it means is that the rotation happens in the plane defined by the two lines of reflection - the component of the vector perpendicular to this plane remains the same throughout the rotation.
We will use these insights to describe a rotation using geometric algebra now.