Proof of Pythagoras's Theorem by Shearing by Markus Hohenwarter

Proof of Pythagoras's Theorem by Shearing by Markus Hohenwarter
Loading the math board and drawing, please wait…
2014-06-12 15:17
This example demonstrates the proof of Pythagoras's Theorem using the shearing method, visually illustrating the relationship between the sides of a right triangle. It involves core mathematical concepts such as Pythagoras's Theorem, perimeter, difference and slope, symmetry, and conditional probability. The construction utilizes GeoGebra commands and objects like Intersect, Point, Semicircle, Midpoint, Circle, Rotate, Line, Vector, Length, If, Polygon, and Angle. It is suitable for high school mathematics education, helping students understand geometric proofs of the theorem.

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

AI Drawing Prompt Reference

Draw a right triangle ABC with A on the x-axis, B on the y-axis, and C on the perpendicular bisector of AB. Construct the midpoint O of AB and draw a circle o with O as the center and OB as the radius. Rotate point C 90 degrees to D, B 270 degrees to F, and A 270 degrees to I, forming lines m and n that intersect at point H. Construct a perpendicular line to HC and find its intersection points K and L with circle o. Adjust the positions of F, G, and C based on the value of a to form quadrilaterals P, Q, R, S, and T. Finally, complete the figure based on the angle α and the positions of midpoints M, N, and U.
The prompt above was compiled from the original drawing commands and is for reference only.