Fermat's Calculus Insight
Loading the math board and drawing, please wait…
This example dynamically demonstrates Fermat's approach to working with differentials and tangents. By adjusting parameters, you can observe changes in the tangents of different functions. The example involves core calculus concepts such as derivatives and tangents. It uses GeoGebra commands like Point, Tangent, Intersect, Min, Dilate, Vector, Segment, Circle, Angle, Rotate, CircleSector, Translate, Polygon, etc. Suitable for high school and above students learning calculus.
GeoGebra Commands & Parameters
Point(c) → ATangent(A, c) → f,Intersect(f_1, Line[D, C]) → NIntersect(f, xAxis) → BMin(Distance[B, E], Distance[N, C]) → oDilate(E, If[0 < b ≤ 1, 1 - b, 0], A) → E'Dilate(D, If[0 < b ≤ 1, 1 - b, 0], C) → D'Vector(E, E') → uVector(D, D') → vDilate(B, If[1 < b ≤ 2, 2 - b, 0], E) → B'Segment(B, B') → gDilate(E, If[2 < b ≤ 3, 3 - b, 0], D) → E'_1Segment(E, E'_1) → hCircle(A, (0.4 * Distance[A, E])) → eCircle(B, (0.6 * o)) → dIntersect(d, xAxis) → F, GAngle(D, B, C) → αRotate(G, If[3 < b ≤ 4, ((b - 3) * α), α], B) → G'CircleSector(B, G, G') → kIntersect(e, f) → H, IRotate(H, If[4 < b ≤ 5, ((b - 4) * (π / 2 - α)), π / 2 - α], A) → H'CircleSector(A, H, H') → qDilate(A, If[6 < b ≤ 7, 7 - b, 0], C) → A'Vector(A, A') → wTranslate(q, w) → q'Dilate(B, If[5 < b ≤ 6, 6 - b, 0], E) → B'_1Intersect(f, i) → JPolygon(B, B'_1, J) → t1, j, b_1, b'_1Translate(A, (0, (-Distance[A, E]) - 2)) → A'_1Translate(E, (0, (-Distance[A, E]) - 2)) → E'_2Intersect(xAxis, m) → KPolygon(E, K, A', A) → q1, e_1, k_1, a', a_1Dilate(A, If[8 < b ≤ 9, 9 - b, 0], A'_1) → A'_2Vector(A, A'_2) → nTranslate(B, n) → B'_2Translate(B'_1, n) → LTranslate(J, n) → J'Polygon(B'_2, L, J') → t1', j', b'_2, l_1Translate(B, n) → B'_3Translate(B', n) → B''Segment(B'_3, B'') → g'Translate(k, n) → k'Translate(q, n) → q'_1Segment(A'_2, B'_2) → rVector(B'', A'_2) → sDilate(E, If[9 < b ≤ 10, 10 - b, 0], B) → E'_3Intersect(f, t) → MPolygon(E'_3, E, A, M) → q2, e'_3, e_2, a_2, m_1Translate(k, Vector[B]) → k'_1Dilate(A, If[11 < b ≤ 12, 12 - b, 0], N) → A'_3Dilate(B, If[11 < b ≤ 12, 12 - b, 0], A) → B'_4Vector(B, B'_4) → u_1Translate(k, u_1) → k'_2Segment(A, A'_3) → g_1Polygon(A, N, C) → t2, c_1, a_3, n_1Dilate(B'', If[13 < b ≤ 14, 14 - b, 0], D) → B'''Vector(B'', B''') → v_1Translate(A'_2, v_1) → OVector(B''', O) → w_1Dilate(N, If[14 < b ≤ 15, 15 - b, 0], C) → N'Vector(N, N') → d_1