Pythagorean Theorem Proof Without Words Using Circles and Similar Triangles
Loading the math board and drawing, please wait…
This GeoGebra example demonstrates a “proof without words” by constructing a compelling geometric configuration that visually encodes the Pythagorean Theorem’s area/length relationship. The key ideas include right triangles, similar triangles, angle relationships, and circle-based constraints that make the equality apparent from the diagram. The construction uses core GeoGebra commands such as Intersect to create pivotal intersection points; Point, Line, and Circle to build the geometric framework; Polygon to form regions whose relationships are compared; Midpoint and Centroid to define auxiliary points; Mirror and Rotate to create symmetric/rotational rearrangements that make the correspondence visible; OrthogonalLine to enforce perpendicularity; LineBisector and Angle to control angle bisectors and angle measures; and conditional constructs (If) to manage alternative configurations. Suitable for advanced middle school, high school, and olympiad-style geometry lessons, especially for visual proof, inquiry-based teaching, and conceptual understanding of the theorem.
GeoGebra Commands & Parameters
Intersect(xAxis, yAxis) → APoint(xAxis) → BPolygon(A, B, 5) → poly1, f, g, h, i, j, C, D, ECentroid(poly1) → FMidpoint(j) → GMidpoint(i) → HMidpoint(h) → IMidpoint(g) → JCentroid(poly1) → KMidpoint(f) → LPoint(Segment[K, L]) → MPolygon(A, G, F, M) → q1, a, g_1, f_1, mPolygon(L, A, M) → t1, m_1, l, a_1Mirror(M, m_1) → M'Line(A, M') → kOrthogonalLine(B, xAxis) → nIntersect(k, n) → NPolygon(N, A, 5) → poly2, p, q, r, s, t, O, P, QCentroid(poly2) → RCircle(F, Segment[R, N]) → cLine(E, F) → bLine(F, D) → dLine(F, C) → eLine(F, B) → h_1Line(F, A) → i_1Intersect(c, i_1, 2) → SIntersect(c, b, 1) → TIntersect(c, d, 2) → UIntersect(c, e, 2) → VIntersect(c, h_1, 2) → WRotate(M, (2 * π / 5), K) → M'_1Polygon(L, F, M'_1, B) → q2, l_1, f_2, m'_1, b_1Line(W, V) → j_1Intersect(b, j_1) → ZLineBisector(M'_1, Z) → k_1LineBisector(B, W) → n_1Intersect(k_1, n_1) → A_1Angle(W, A_1, B) → αIf(0 ≤ o ≤ 1, Polygon[Rotate[L, ((-o) * α), A_1], Rotate[F, ((-o) * α), A_1], Rotate[M'_1, ((-o) * α), A_1], Rotate[B, ((-o) * α), A_1]]) → q3If(0 ≤ o ≤ 1, Rotate[L, ((-o) * α), A_1]) → B_1Rotate(If[0 ≤ o ≤ 1, Polygon[Rotate[L, ((-o) * α), A_1], Rotate[A, ((-o) * α), A_1], Rotate[M, ((-o) * α), A_1]]], (o * π), B_1) → t2Rotate(If[0 ≤ o ≤ 1, Rotate[M, ((-o) * α), A_1]], (o * π), B_1) → C_1Rotate(Rotate[If[0 ≤ o ≤ 1, Polygon[Rotate[A, ((-o) * α), A_1], Rotate[G, ((-o) * α), A_1], Rotate[F, ((-o) * α), A_1], Rotate[M, ((-o) * α), A_1]]], (o * π), B_1], ((-o) * π), C_1) → q4Rotate(Rotate[If[0 ≤ o ≤ 1, Rotate[G, ((-o) * α), A_1]], (o * π), B_1], ((-o) * π), C_1) → D_1Rotate(M, (-2 * π / 5), K) → M'_2Polygon(E, G, M'_2) → t3, m'_2, e_1, g_2Rotate(Rotate[Rotate[If[0 ≤ o ≤ 1, Polygon[Rotate[E, ((-o) * α), A_1], Rotate[G, ((-o) * α), A_1], Rotate[M'_2, ((-o) * α), A_1]]], (o * π), B_1], ((-o) * π), C_1], (o * π), D_1) → t4Rotate(Rotate[Rotate[If[0 ≤ o ≤ 1, Rotate[M'_2, ((-o) * α), A_1]], (o * π), B_1], ((-o) * π), C_1], (o * π), D_1) → E_1Polygon(H, E, M'_2, F) → q5, h_2, e_2, p_1, f_3Rotate(Rotate[Rotate[Rotate[If[0 ≤ o ≤ 1, Polygon[Rotate[H, ((-o) * α), A_1], Rotate[E, ((-o) * α), A_1], Rotate[M'_2, ((-o) * α), A_1], Rotate[F, ((-o) * α), A_1]]], (o * π), B_1], ((-o) * π), C_1], (o * π), D_1], ((-o) * π), E_1) → q6Rotate(M, (6 * π / 5), K) → M'_3Rotate(Rotate[Rotate[Rotate[If[0 ≤ o ≤ 1, Rotate[H, ((-o) * α), A_1]], (o * π), B_1], ((-o) * π), C_1], (o * π), D_1], ((-o) * π), E_1) → F_1Polygon(D, H, M'_3) → t5, m'_3, d_1, h_3Rotate(Rotate[Rotate[Rotate[Rotate[If[0 ≤ o ≤ 1, Polygon[Rotate[D, ((-o) * α), A_1], Rotate[H, ((-o) * α), A_1], Rotate[M'_3, ((-o) * α), A_1]]], (o * π), B_1], ((-o) * π), C_1], (o * π), D_1], ((-o) * π), E_1], (o * π), F_1) → t6Rotate(Rotate[Rotate[Rotate[Rotate[If[0 ≤ o ≤ 1, Rotate[M'_3, ((-o) * α), A_1]], (o * π), B_1], ((-o) * π), C_1], (o * π), D_1], ((-o) * π), E_1], (o * π), F_1) → G_1Polygon(I, F, M'_3, D) → q7, i_2, f_4, q_1, d_2Rotate(Rotate[Rotate[Rotate[Rotate[Rotate[If[0 ≤ o ≤ 1, Polygon[Rotate[I, ((-o) * α), A_1], Rotate[F, ((-o) * α), A_1], Rotate[M'_3, ((-o) * α), A_1], Rotate[D, ((-o) * α), A_1]]], (o * π), B_1], ((-o) * π), C_1], (o * π), D_1], ((-o) * π), E_1], (o * π), F_1], ((-o) * π), G_1) → q8Rotate(M, (4 * π / 5), K) → M'_4Rotate(Rotate[Rotate[Rotate[Rotate[Rotate[If[0 ≤ o ≤ 1, Rotate[I, ((-o) * α), A_1]], (o * π), B_1], ((-o) * π), C_1], (o * π), D_1], ((-o) * π), E_1], (o * π), F_1], ((-o) * π), G_1) → H_1Polygon(M'_4, I, C) → t7, c_1, m'_4, i_3Rotate(Rotate[Rotate[Rotate[Rotate[Rotate[Rotate[If[0 ≤ o ≤ 1, Polygon[Rotate[M'_4, ((-o) * α), A_1], Rotate[I, ((-o) * α), A_1], Rotate[C, ((-o) * α), A_1]]], (o * π), B_1], ((-o) * π), C_1], (o * π), D_1], ((-o) * π), E_1], (o * π), F_1], ((-o) * π), G_1], (o * π), H_1) → t8Polygon(F, M'_4, C, J) → q9, f_5, r_1, c_2, j_2Rotate(Rotate[Rotate[Rotate[Rotate[Rotate[Rotate[If[0 ≤ o ≤ 1, Rotate[M'_4, ((-o) * α), A_1]], (o * π), B_1], ((-o) * π), C_1], (o * π), D_1], ((-o) * π), E_1], (o * π), F_1], ((-o) * π), G_1], (o * π), H_1) → I_1Rotate(Rotate[Rotate[Rotate[Rotate[Rotate[Rotate[Rotate[If[0 ≤ o ≤ 1, Polygon[Rotate[F, ((-o) * α), A_1], Rotate[M'_4, ((-o) * α), A_1], Rotate[C, ((-o) * α), A_1], Rotate[J, ((-o) * α), A_1]]], (o * π), B_1], ((-o) * π), C_1], (o * π), D_1], ((-o) * π), E_1], (o * π), F_1], ((-o) * π), G_1], (o * π), H_1], ((-o) * π), I_1) → q10Rotate(Rotate[Rotate[Rotate[Rotate[Rotate[Rotate[Rotate[If[0 ≤ o ≤ 1, Rotate[J, ((-o) * α), A_1]], (o * π), B_1], ((-o) * π), C_1], (o * π), D_1], ((-o) * π), E_1], (o * π), F_1], ((-o) * π), G_1], (o * π), H_1], ((-o) * π), I_1) → J_1Polygon(B, M'_1, J) → t9, j_3, b_2, s_1Rotate(Rotate[Rotate[Rotate[Rotate[Rotate[Rotate[Rotate[Rotate[If[0 ≤ o ≤ 1, Polygon[Rotate[B, ((-o) * α), A_1], Rotate[M'_1, ((-o) * α), A_1], Rotate[J, ((-o) * α), A_1]]], (o * π), B_1], ((-o) * π), C_1], (o * π), D_1], ((-o) * π), E_1], (o * π), F_1], ((-o) * π), G_1], (o * π), H_1], ((-o) * π), I_1], (o * π), J_1) → t10
AI Drawing Prompt Reference
Draw a right triangle with its right angle at the origin, and construct a regular pentagon as the base framework. Inside the pentagon, connect midpoints of sides to the centroid, dividing it into smaller triangles and quadrilaterals. With the centroid as center, draw a circle passing through a vertex; intersect it with lines from the centroid to each pentagon vertex, obtaining five points. Use these points to construct angle bisectors and find a rotation center. Then rotate and mirror selected polygons around this center to rearrange regions symmetrically, visually demonstrating the area relationships of the Pythagorean theorem.
The prompt above was compiled from the original drawing commands and is for reference only.