Pythagorean Theorem Shear Proof by xlenchik

Pythagorean Theorem Shear Proof by xlenchik
Loading the math board and drawing, please wait…
2016-01-11 07:58
This example demonstrates the proof of Pythagoras' Theorem using shearing, visually illustrating the relationship between the sides of a right triangle. Core mathematical concepts include Pythagorean Theorem, coordinate geometry, and vector operations. Construction highlights the use of GeoGebra commands like Intersect, Point, Semicircle, Midpoint, Circle, Rotate, Line, Vector, Length, If, Polygon, and Angle. Suitable for high school mathematics instruction or student 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