Pythagorean Theorem Shear Proof by katerina Tryfo

Pythagorean Theorem Shear Proof by katerina Tryfo
Loading the math board and drawing, please wait…
2016-11-06 17:01
This example demonstrates the Pythagorean Theorem through a shearing method, visually illustrating the relationship between the sides of a right triangle. Core mathematical concepts include the Pythagorean Theorem, coordinate geometry, and vector operations. Construction highlights the use of GeoGebra commands and objects such as Intersect, Point, Semicircle, Midpoint, Circle, Rotate, Line, Vector, Length, If, Polygon, and Angle. Suitable for high school mathematics instruction and students seeking deeper exploration of geometric proofs.

GeoGebra Commands & Parameters

  1. Intersect(xAxis, yAxis) → A
  2. Point(xAxis) → B
  3. Semicircle(A, B) → h
  4. Midpoint(A, B) → O
  5. Circle(O, B) → o
  6. Point(h) → C
  7. Rotate(C, 90°, A) → D
  8. Rotate(A, 270°, C) → E
  9. Line(D, E) → m
  10. Vector(D, E) → v_b
  11. Length(v_b) → k_b
  12. Rotate(C, 270°, B) → F
  13. Rotate(B, 90°, C) → G
  14. Line(F, G) → n
  15. Intersect(m, n) → H
  16. Line(H, yAxis) → hc
  17. Vector(E, H) → u_a
  18. Length(u_a) → ku_b
  19. Vector(G, H) → u_b
  20. Length(u_b) → ku_a
  21. Vector(F, G) → v_a
  22. Length(v_a) → k_a
  23. Rotate(B, 270°, A) → I
  24. Vector(A, I) → v_c
  25. Length(v_c) → k_c
  26. Circle(H, (ku_a * ku_b / k_c)) → d
  27. Intersect(d, hc) → K, L
  28. Vector(H, L) → v_h
  29. Rotate(A, 90°, B) → J
  30. If(a < ka_1, Point[F, Vector[(a / ka_1 * u_b)]], If[a < ka_2, Point[F, u_b], Point[F, Vector[u_b + ((a - ka_2) / (1 - ka_2) * v_c)]]]) → F'
  31. Polygon(B, C, G, F) → P, b_1, c, g, f
  32. If(a < ka_1, Point[G, Vector[(a / ka_1 * u_b)]], If[a < ka_2, Point[H, Vector[((a - ka_1) / (ka_2 - ka_1) * v_h)]], Point[L, Vector[((a - ka_2) / (1 - ka_2) * v_c)]]]) → G'
  33. If(a < ka_1, C, If[a < ka_2, Point[C, Vector[((a - ka_1) / (ka_2 - ka_1) * v_h)]], Point[C, Vector[v_h + ((a - ka_2) / (1 - ka_2) * v_c)]]]) → Ca'
  34. Vector(G', Ca') → u
  35. If(a < ka_1, B, If[a < ka_2, B, Point[B, Vector[((a - ka_2) / (1 - ka_2) * v_c)]]]) → B'
  36. Vector(F', B') → v
  37. Polygon(B', Ca', G', F') → Q, b', c', g', f'
  38. If(b < kb_1, Point[E, Vector[(b / kb_1 * u_a)]], If[b < kb_2, Point[H, Vector[((b - kb_1) / (kb_2 - kb_1) * v_h)]], Point[L, Vector[((b - kb_2) / (1 - kb_2) * v_c)]]]) → E'
  39. If(b < kb_1, Point[D, Vector[(b / kb_1 * u_a)]], If[b < kb_2, Point[D, u_a], Point[D, Vector[u_a + ((b - kb_2) / (1 - kb_2) * v_c)]]]) → D'
  40. If(b < kb_1, C, If[b < kb_2, Point[C, Vector[((b - kb_1) / (kb_2 - kb_1) * v_h)]], Point[C, Vector[v_h + ((b - kb_2) / (1 - kb_2) * v_c)]]]) → Cb'
  41. If(b < kb_1, A, If[b < kb_2, A, Point[A, Vector[((b - kb_2) / (1 - kb_2) * v_c)]]]) → A'
  42. Polygon(A, C, E, D) → R, a_1, c_1, e, d_1
  43. Polygon(A', Cb', E', D') → S, a', cb', e', d'
  44. Polygon(A, B, J, I) → T, a_2, b_2, j, i
  45. Angle(A, C, B) → α
  46. Midpoint(C, B) → M
  47. Midpoint(A, C) → N
  48. Midpoint(a_2) → U