If we apply two successive reflections to a vector (using vector and vector ), we get a rotation by twice the angle between the vectors and :

two reflection gives a rotation.png

The angle of this rotation is twice the angle between the reflection vectors and .

Intuition

One way to think about this property is the following: both reflection and rotations are orthogonal transformations. The difference is that rotation preserves orientation while reflection flips it. If we apply the reflection twice, the first reflection flip the orientation and the second reflection flip it back. Also, if we apply multiple orthogonal transformation, the combined transformation is still orthogonal. Thus, at the end we get an orthogonal transformation that is orientation-preserving, which is a rotation.

rotation as two reflection orientation.png

Exception

For two reflections around two parallel lines, we get a translation instead:

References