MATH 325 — Foundations of Geometry
Congruence through Euclidean Motions: A Computational Perspective
Congruence is the geometry of moving a figure without changing its size or shape. We turn that sentence into matrices, a transformation group, rigorous triangle criteria, two live JSXGraph laboratories, and reproducible Wolfram Language code.
Congruency with Mathematica
Open the video directly or download the edited lecture transcript.
Accessibility note: the edited transcript supplies a complete text route through the mathematical ideas while synchronized captions are not available.
Central question
Which transformations of \(\mathbb R^2\) preserve every distance, and how do those transformations explain the classical triangle-congruence criteria?
Learning outcomes
By the end, you should be able to:
- compute with rotation, reflection, and translation maps;
- distinguish \(O(2)\), \(SO(2)\), \(E(2)\), and \(SE(2)\);
- prove that \(x\mapsto Qx+b\) preserves distance when \(Q\) is orthogonal;
- classify every distance-preserving map of the plane;
- prove SSS, SAS, and ASA from Euclidean motions;
- verify the invariants with JSXGraph and Mathematica.
Prerequisites
- vectors and \(2\times2\) matrix multiplication;
- transpose, determinant, and inverse;
- dot product and Euclidean norm;
- elementary facts about circles, rays, and angles;
- triangle angle sum and the Pythagorean theorem.
Precision that matters
A reflection reverses orientation, but it still preserves every distance. Therefore ordinary congruence is governed by all of \(E(2)\). If reflections are forbidden, one obtains direct congruence, governed by the subgroup \(SE(2)\).
Two matrix families
For \(t\in\mathbb R\), define
\[ R(t)= \begin{pmatrix}\cos t&-\sin t\\ \sin t&\cos t\end{pmatrix}, \qquad M(t)= \begin{pmatrix}\cos t&\sin t\\ \sin t&-\cos t\end{pmatrix}. \]
\(R(t)\) rotates counterclockwise through angle \(t\). The matrix \(M(t)\) reflects across the line through the origin whose direction angle is \(t/2\). Both satisfy \(Q^{\mathsf T}Q=I\), but \(\det R(t)=1\) and \(\det M(t)=-1\).
Matrix products
\[ \begin{aligned} R(t)R(s)&=R(t+s),& R(t)M(s)&=M(t+s),\\ M(t)R(s)&=M(t-s),& M(t)M(s)&=R(t-s). \end{aligned} \]
In particular, \(R(t)^{-1}=R(-t)\), \(M(t)^{-1}=M(t)\), and the identity is \(R(0)=I\).
Exact vector images
For \(w=(\tfrac12,\tfrac12)\),
\[ R\!\left(\frac{\pi}{3}\right)w =\left(\frac{1-\sqrt3}{4},\frac{1+\sqrt3}{4}\right), \] \[ M\!\left(\frac{\pi}{3}\right)w =\left(\frac{1+\sqrt3}{4},\frac{\sqrt3-1}{4}\right). \]
The orthogonal groups
\[ O(2)=\{Q\in M_2(\mathbb R):Q^{\mathsf T}Q=I\},\qquad SO(2)=\{Q\in O(2):\det Q=1\}. \]
Every matrix in \(O(2)\) has determinant \(1\) or \(-1\). The determinant-\(1\) part \(SO(2)\) consists exactly of the rotations \(R(t)\).
Theorem: orthogonal matrices preserve length and distance
If \(Q^{\mathsf T}Q=I\), then for every \(z\in\mathbb R^2\),
\[ \|Qz\|^2=(Qz)^{\mathsf T}(Qz) =z^{\mathsf T}Q^{\mathsf T}Qz =z^{\mathsf T}z=\|z\|^2. \]
Norms are nonnegative, so \(\|Qz\|=\|z\|\). Substituting \(z=x-y\) gives \(\|Qx-Qy\|=\|Q(x-y)\|=\|x-y\|\). \(\square\)
Translations and Euclidean motions
A translation by \(b\in\mathbb R^2\) is \(T_b(x)=x+b\). For example, \[ \left(\frac13,\frac23\right)+\left(\frac23,\frac12\right) =\left(1,\frac76\right). \] A general Euclidean motion has the form \[ F_{Q,b}(x)=Qx+b,\qquad Q\in O(2),\ b\in\mathbb R^2. \]
\[ E(2)=\mathbb R^2\rtimes O(2),\qquad SE(2)=\mathbb R^2\rtimes SO(2). \]
Composition and inversion are \[ (Q,b)(P,c)=(QP,Qc+b),\qquad (Q,b)^{-1}=(Q^{\mathsf T},-Q^{\mathsf T}b). \]
Interactive laboratory 1
Move one triangle by \(F(x)=Qx+b\)
Choose a rotation or reflection, then vary \(t\) and the translation \(b=(u,v)\). The red triangle is fixed; the gold triangle is its image. Dashed segments join corresponding vertices.
The parameter in \(M(t)\) is twice the angle of the reflecting line. The signed area changes sign exactly when \(\det Q=-1\).
Rotation \(R(60^\circ)\), followed by translation \((1,0.5)\).
| Quantity | Original | Image | Absolute error |
|---|---|---|---|
| Side AB\(AB\) | 1.000 | 1.000 | 0.000e+0 |
| Side AC\(AC\) | 0.707 | 0.707 | 0.000e+0 |
| Side BC\(BC\) | 0.707 | 0.707 | 0.000e+0 |
| Signed area | +0.250 | +0.250 | same orientation |
Ordinary congruence
Subsets \(A,B\subseteq\mathbb R^2\) are congruent when there exists \(F\in E(2)\) such that \(F(A)=B\). For ordered triangles, the chosen isometry must respect the stated vertex correspondence.
Direct congruence
\(A\) and \(B\) are directly congruent when the motion can be chosen in \(SE(2)\). Direct congruence permits rotations and translations but not reflections.
Why congruence is an equivalence relation
- Reflexive: the identity \(F_{I,0}\) maps every figure to itself.
- Symmetric: if \(F(A)=B\), then the Euclidean motion \(F^{-1}\) maps \(B\) to \(A\).
- Transitive: if \(F(A)=B\) and \(G(B)=C\), then the Euclidean motion \(G\circ F\) maps \(A\) to \(C\).
Classification theorem for plane isometries
A map \(F:\mathbb R^2\to\mathbb R^2\) preserves every Euclidean distance if and only if there are \(Q\in O(2)\) and \(b\in\mathbb R^2\) for which \(F(x)=Qx+b\).
Proof of the classification theorem
The forward formula has already been checked: \[ \|F(x)-F(y)\|=\|Q(x-y)\|=\|x-y\|. \]
Conversely, suppose \(F\) preserves distances. Put \(b=F(0)\) and \(G(x)=F(x)-b\). Then \(G(0)=0\), \(G\) preserves distance, and \(\|G(x)\|=\|x\|\). The polarization identity gives \[ \langle G(x),G(y)\rangle =\frac{\|G(x)\|^2+\|G(y)\|^2-\|G(x)-G(y)\|^2}{2} =\langle x,y\rangle . \]
Thus \(G(e_1)\) and \(G(e_2)\) form an orthonormal basis. Let \(Q\) have those two vectors as its columns, so \(Q^{\mathsf T}Q=I\). For \(x=x_1e_1+x_2e_2\), \[ \langle G(x),G(e_i)\rangle=\langle x,e_i\rangle=x_i. \] Coordinates in the orthonormal basis \(\{G(e_1),G(e_2)\}\) therefore give \(G(x)=x_1G(e_1)+x_2G(e_2)=Qx\). Hence \(F(x)=Qx+b\). \(\square\)
Vertex order is mathematical data
Writing \(\triangle ABC\cong\triangle XYZ\) asserts \(A\leftrightarrow X\), \(B\leftrightarrow Y\), and \(C\leftrightarrow Z\). Consequently \(AB=XY\), \(BC=YZ\), \(CA=ZX\), with the corresponding angle equalities.
SSS congruence
If \(AB=XY\), \(BC=YZ\), and \(CA=ZX\), then \(\triangle ABC\cong\triangle XYZ\).
Proof by aligning the common base
First choose a Euclidean motion sending \(A\) to \(X\) and \(B\) to \(Y\); this is possible because \(AB=XY\). After this alignment, the image of \(C\) must lie on the circle centered at \(X\) of radius \(AC=XZ\), and on the circle centered at \(Y\) of radius \(BC=YZ\). Two such circles have at most two intersection points, which are reflections of one another across line \(XY\). The point \(Z\) is one of them. If needed, compose with that reflection, which fixes \(X\) and \(Y\), to send the image of \(C\) to \(Z\). The resulting Euclidean motion maps all three vertices correctly. \(\square\)
SAS congruence
If \(AB=XY\), \(AC=XZ\), and the included angles \(\angle BAC=\angle YXZ\), then \(\triangle ABC\cong\triangle XYZ\).
Proof by a ray–circle intersection
Align \(A\) with \(X\) and \(B\) with \(Y\). If necessary, reflect across line \(XY\) so the image of \(C\) lies on the same side as \(Z\). The included angle fixes the ray from \(X\), while the equality \(AC=XZ\) fixes the distance from \(X\). Exactly one point on that ray lies at the required distance, so the image of \(C\) is \(Z\). \(\square\)
ASA congruence
If \(AB=XY\), \(\angle A=\angle X\), and \(\angle B=\angle Y\), then \(\triangle ABC\cong\triangle XYZ\).
Proof by intersecting two rays
Align \(A\) with \(X\) and \(B\) with \(Y\), again choosing the correct side of the base by reflection if needed. The angle at \(X\) fixes the ray containing the image of \(C\); the angle at \(Y\) fixes a second ray. Nondegeneracy ensures those rays meet in exactly one point. Since \(Z\) satisfies both angle conditions, that intersection is \(Z\). \(\square\)
Useful consequences
- AAS: the triangle angle sum supplies the third angle, reducing to ASA.
- HL: in right triangles, the Pythagorean theorem recovers the missing leg, reducing to SSS.
Data that do not suffice
- AAA fixes shape but not scale.
- SSA may produce two noncongruent triangles—the ambiguous case.
Interactive laboratory 2
See where the third vertex can live
Switch among the criteria. Each diagram turns the proof into an intersection problem: circle–circle for SSS, ray–circle for SAS, and ray–ray for ASA.
In the SSS view, the two possible third vertices are mirror images across the base. They are different placements but belong to the same congruence class.
SSS: two circle intersections are exchanged by reflection across the base.
| Criterion | Given data | Location of \(C\) |
|---|---|---|
| SSS | \(AB=4,\ AC=3.2,\ BC=2.6\) | Intersection of two circles; two reflected positions |
| SAS | \(AB=4,\ AC=3.2,\ \angle A=55^\circ\) | Positive-ray intersection with one circle |
| ASA | \(AB=4,\ \angle A=55^\circ,\ \angle B=48^\circ\) | Unique intersection of two interior rays |
These Wolfram Language cells reproduce the algebra behind the lesson. Run each block in a fresh notebook; the assertions return exact symbolic results.
Companion Mathematica notebook
Open the instructor-supplied notebook to run, modify, and extend the computations presented in this section.
1. Define and verify \(R(t)\) and \(M(t)\)
ClearAll[R, M, t, s];
R[t_] := {{Cos[t], -Sin[t]}, {Sin[t], Cos[t]}};
M[t_] := {{Cos[t], Sin[t]}, {Sin[t], -Cos[t]}};
FullSimplify[Transpose[R[t]].R[t]]
FullSimplify[Transpose[M[t]].M[t]]
FullSimplify[Det[R[t]]]
FullSimplify[Det[M[t]]]
FullSimplify[R[t].R[s] == R[t + s]]
FullSimplify[R[t].M[s] == M[t + s]]
FullSimplify[M[t].R[s] == M[t - s]]
FullSimplify[M[t].M[s] == R[t - s]]
2. Apply an affine Euclidean motion
ClearAll[F, Q, b, x];
Q = R[Pi/3];
b = {2, -1};
F[x_] := Q.x + b;
triangle = {{0, 0}, {1, 0}, {1/2, 1/2}};
image = F /@ triangle;
Graphics[{
{Directive[Red, Thick], Polygon[triangle]},
{Directive[RGBColor[0.66, 0.38, 0], Thick], Polygon[image]},
Black, PointSize[Large], Point /@ Join[triangle, image]
},
Axes -> True, PlotRange -> All, ImageSize -> Large]
3. Build the interactive motion
Manipulate[
Module[{Q, F, tri, img},
Q = If[motion == "Rotation", R[t], M[t]];
F[x_] := Q.x + {u, v};
tri = {{0, 0}, {1, 0}, {1/2, 1/2}};
img = F /@ tri;
Graphics[{
{Red, Thick, Polygon[tri]},
{Darker[Orange], Thick, Polygon[img]},
{Purple, Dashed, MapThread[Line[{#1, #2}] &, {tri, img}]}
}, Axes -> True, PlotRange -> {{-3, 4}, {-3, 3}}],
{{motion, "Rotation"}, {"Rotation", "Reflection"}},
{t, -Pi, Pi}, {u, -2, 2}, {v, -2, 2}]
4. Test distance and orientation invariants
ClearAll[pairDistances, signedArea];
pairDistances[pts_] :=
EuclideanDistance @@@ Subsets[pts, {2}];
signedArea[{a_, b_, c_}] :=
Det[Transpose[{b - a, c - a}]]/2;
tri = {{0, 0}, {1, 0}, {1/2, 1/2}};
rotated = (# + {1, 1/2}) & /@ (R[Pi/3].# & /@ tri);
reflected = (# + {1, 1/2}) & /@ (M[Pi/3].# & /@ tri);
FullSimplify[pairDistances[tri] == pairDistances[rotated]]
FullSimplify[pairDistances[tri] == pairDistances[reflected]]
{signedArea[tri], signedArea[rotated], signedArea[reflected]}
Example 1: rotate by \(\pi/3\), then translate by \((2,-1)\)
For \(F(x)=R(\pi/3)x+(2,-1)\), \[ F(0,0)=(2,-1),\qquad F(1,0)=\left(\frac52,-1+\frac{\sqrt3}{2}\right), \] \[ F\!\left(\frac12,\frac12\right) =\left(2+\frac{1-\sqrt3}{4}, -1+\frac{1+\sqrt3}{4}\right). \] Since \(\det R(\pi/3)=1\), the image triangle is directly congruent to the original.
Example 2: identify the motion from its formula
Consider \[ F(x,y)=\left(\frac{\sqrt3}{2}x+\frac12y+3,\, \frac12x-\frac{\sqrt3}{2}y-2\right). \] Its linear part is \(M(\pi/6)\), so \(F\in E(2)\) and \(\det Q=-1\). It is a reflection followed by a translation: it gives ordinary congruence, but not direct congruence.
Example 3: recover the inverse motion
If \(F(x)=Qx+b\), then \[ F^{-1}(y)=Q^{\mathsf T}y-Q^{\mathsf T}b. \] Indeed, \(Q^{\mathsf T}(Qx+b)-Q^{\mathsf T}b=x\). This calculation is the symmetry step in the equivalence-relation proof.
Non-example: a dilation is not a congruence
The map \(D(x)=2x\) has matrix \(2I\), and \((2I)^{\mathsf T}(2I)=4I\ne I\). It doubles every distance, so it produces similar figures but generally not congruent figures.
Quick checks
Six common errors
- excluding reflections from ordinary congruence;
- forgetting the translation vector in a general isometry;
- confusing \(M(t)\) with reflection across a line at angle \(t\);
- matching vertices in the wrong order;
- using AAA as a congruence criterion;
- treating SSA as unambiguous.
Exit ticket
In two sentences, explain why distance preservation allows a reflection, while orientation preservation excludes it. Name the two relevant groups.
Exercises
- Verify directly that \(M(t)^2=I\).
- Compute \(R(\pi/4)M(\pi/3)\) and identify the resulting reflection parameter.
- For \(F(x)=R(\pi/2)x+(3,-1)\), compute \(F^{-1}\).
- Prove that the composition of two Euclidean motions is a Euclidean motion.
- Use the classification proof to explain why a plane isometry is determined by the images of three noncollinear points.
- Construct numerical SSA data that produce two noncongruent triangles.
The whole lesson in one implication chain
\[ Q^{\mathsf T}Q=I \Longrightarrow \|Qz\|=\|z\| \Longrightarrow F(x)=Qx+b\text{ preserves distance} \Longrightarrow \text{congruent images}. \]
The classification theorem reverses the central implication: every distance-preserving map of the plane has exactly this affine-orthogonal form. SSS, SAS, and ASA then state that limited triangle data are sufficient to produce such a motion.
Ordinary congruence\(E(2)\)
Direct congruence\(SE(2)\)
Invariantdistance
Vocabulary
- Orthogonal matrix
- A matrix \(Q\) satisfying \(Q^{\mathsf T}Q=I\).
- Euclidean motion
- A map \(x\mapsto Qx+b\) with \(Q\in O(2)\).
- Orientation
- The sign of an ordered area; rotations preserve it and reflections reverse it.
- Congruence criterion
- A data set sufficient to determine one triangle up to Euclidean motion.
References and provenance
- Congruency.nb, instructor-supplied Mathematica notebook, exported as Congruency.pdf. Open the notebook (opens in a new tab) .
- The instructor’s lecture transcript, edited for mathematical clarity.
- JSXGraph documentation for the coordinate constructions.
- Wolfram Language documentation for the computation blocks.