Proof Without Words: Pythagorean Theorem by Steve Phelps (2)

Proof Without Words: Pythagorean Theorem by Steve Phelps (2)
Loading the math board and drawing, please wait…
2019-06-01 19:34
This example dynamically demonstrates the relationship between a semicircle and a right triangle to visually illustrate the geometric meaning of the Pythagorean Theorem. Core math concepts include the Pythagorean Theorem, circle, polygon, midpoint, mirror, line, centroid, intersect, rotate, and angle. GeoGebra commands and objects like Point, Semicircle, Polygon, Midpoint, Mirror, Line, Centroid, Intersect, Rotate, Angle, If are used in the construction. Suitable for middle school students and math enthusiasts to understand geometric proofs of the Pythagorean Theorem.

GeoGebra Commands & Parameters

  1. Point(yAxis) → A
  2. Semicircle(A, B) → c
  3. Point(c) → C
  4. Polygon(A, C, 4) → poly1, f, g, h, i, D, E
  5. Polygon(C, B, 4) → poly2, j, k, l, m, F, G
  6. Polygon(B, A, 4) → poly3, n, p, q, r, H, I
  7. Midpoint(j) → J
  8. Midpoint(m) → K
  9. Midpoint(l) → L
  10. Midpoint(k) → M
  11. Mirror(A, j) → A'
  12. Line(J, L) → s
  13. Line(A', B) → t
  14. Centroid(poly2) → N
  15. Intersect(s, t) → O
  16. Rotate(O, 90°, N) → O'
  17. Rotate(O', 90°, N) → O''
  18. Rotate(O'', 90°, N) → O'''
  19. Polygon(N, O, B, M) → q1, n_1, o_1, b, m_1
  20. Polygon(N, O', F, L) → q2, n_2, o', f_1, l_1
  21. Polygon(N, O'', G, K) → q3, n_3, o'', g_1, k_1
  22. Polygon(N, O''', C, J) → q4, n_4, o''', c_1, j_1
  23. Angle(C, B, A) → a
  24. If(0 < o ≤ 1, Rotate[Polygon[Translate[N, Vector[B, Dilate[B, 1 - o, I]]], Translate[O, Vector[B, Dilate[B, 1 - o, I]]], Translate[B, Vector[B, Dilate[B, 1 - o, I]]], Translate[M, Vector[B, Dilate[B, 1 - o, I]]]], (((o - 0) * 2) * a), Dilate[B, 1 - o, I]], Rotate[Polygon[Translate[N, I - B], Translate[O, I - B], Translate[B, I - B], Translate[M, I - B]], (2 * a), I]) → q5
  25. If(2 < o ≤ 3, Rotate[Polygon[Translate[N, Vector[F, Dilate[F, 3 - o, B]]], Translate[O', Vector[F, Dilate[F, 3 - o, B]]], Translate[F, Vector[F, Dilate[F, 3 - o, B]]], Translate[L, Vector[F, Dilate[F, 3 - o, B]]]], (((o - 2) * 2) * a), Dilate[F, 3 - o, B]], Rotate[Polygon[Translate[N, B - F], Translate[O', B - F], Translate[F, B - F], Translate[L, B - F]], (2 * a), B]) → q6
  26. If(4 < o ≤ 5, Rotate[Polygon[Translate[N, Vector[G, Dilate[G, 5 - o, A]]], Translate[O'', Vector[G, Dilate[G, 5 - o, A]]], Translate[G, Vector[G, Dilate[G, 5 - o, A]]], Translate[K, Vector[G, Dilate[G, 5 - o, A]]]], (((o - 4) * 2) * a), Dilate[G, 5 - o, A]], Rotate[Polygon[Translate[N, A - G], Translate[O'', A - G], Translate[G, A - G], Translate[K, A - G]], (2 * a), A]) → q7
  27. If(6 < o ≤ 7, Rotate[Polygon[Translate[N, Vector[C, Dilate[C, 7 - o, H]]], Translate[O''', Vector[C, Dilate[C, 7 - o, H]]], Translate[C, Vector[C, Dilate[C, 7 - o, H]]], Translate[J, Vector[C, Dilate[C, 7 - o, H]]]], (((o - 6) * 2) * a), Dilate[C, 7 - o, H]], Rotate[Polygon[Translate[N, H - C], Translate[O''', H - C], Translate[C, H - C], Translate[J, H - C]], (2 * a), H]) → q8
  28. Polygon(O, J, B) → t1, b_1, o_2, j_2
  29. Polygon(O', M, F) → t2, f_2, d, m_2
  30. Polygon(O'', L, G) → t3, g_2, e, l_2
  31. Polygon(O''', K, C) → t4, c_2, h_1, k_2
  32. Line(I, B) → i_1
  33. Intersect(i_1, l) → P
  34. Angle(P, B, O) → aa
  35. If(8 < o ≤ 9, Rotate[Polygon[Translate[O, Vector[B, Dilate[B, 9 - o, I]]], Translate[J, Vector[B, Dilate[B, 9 - o, I]]], Translate[B, Vector[B, Dilate[B, 9 - o, I]]]], ((-(o - 8)) * aa), Dilate[B, 9 - o, I]], Rotate[Polygon[Translate[O, I - B], Translate[J, I - B], Translate[B, I - B]], (-aa), I]) → t5
  36. If(10 < o ≤ 11, Rotate[Polygon[Translate[O', Vector[F, Dilate[F, 11 - o, B]]], Translate[M, Vector[F, Dilate[F, 11 - o, B]]], Translate[F, Vector[F, Dilate[F, 11 - o, B]]]], ((-(o - 10)) * aa), Dilate[F, 11 - o, B]], Rotate[Polygon[Translate[O', B - F], Translate[M, B - F], Translate[F, B - F]], (-aa), B]) → t6
  37. If(12 < o ≤ 13, Rotate[Polygon[Translate[O'', Vector[G, Dilate[G, 13 - o, A]]], Translate[L, Vector[G, Dilate[G, 13 - o, A]]], Translate[G, Vector[G, Dilate[G, 13 - o, A]]]], ((-(o - 12)) * aa), Dilate[G, 13 - o, A]], Rotate[Polygon[Translate[O'', A - G], Translate[L, A - G], Translate[G, A - G]], (-aa), A]) → t7
  38. If(14 < o ≤ 15, Rotate[Polygon[Translate[O''', Vector[C, Dilate[C, 15 - o, H]]], Translate[K, Vector[C, Dilate[C, 15 - o, H]]], Translate[C, Vector[C, Dilate[C, 15 - o, H]]]], ((-(o - 14)) * aa), Dilate[C, 15 - o, H]], Rotate[Polygon[Translate[O''', H - C], Translate[K, H - C], Translate[C, H - C]], (-aa), H]) → t8
  39. Centroid(poly3) → Q
  40. Centroid(poly1) → R
  41. Polygon(A, E, D, C) → q9, a_1, e_1, d_1, c_3
  42. If(16 < o ≤ 17, Rotate[Polygon[Translate[A, Vector[R, Dilate[R, 17 - o, Q]]], Translate[E, Vector[R, Dilate[R, 17 - o, Q]]], Translate[D, Vector[R, Dilate[R, 17 - o, Q]]], Translate[C, Vector[R, Dilate[R, 17 - o, Q]]]], (((o - 16) * 2) * a), Dilate[R, 17 - o, Q]], Rotate[Polygon[Translate[A, Q - R], Translate[E, Q - R], Translate[D, Q - R], Translate[C, Q - R]], (2 * a), Q]) → q10

AI Drawing Prompt Reference

Draw a semicircle with one endpoint on the y-axis and another point as the diameter. Place a point on the semicircle, then construct three squares using this point and the diameter endpoints. Connect midpoints of the square sides to form auxiliary lines. Rotate and translate the triangles inside the semicircle so that four small squares rotate around a central point, dynamically illustrating the Pythagorean theorem. The figure includes the semicircle, three squares, several rotated polygons, and auxiliary lines, showing a symmetric geometric transformation.
The prompt above was compiled from the original drawing commands and is for reference only.