a = 0.07 (slider from 0 to 1, step 0.01)
f(x) = (a * x^(2))
m = Sequence(t, t, -5, 5, 1)
I = Zip(Point[{t, 0}], t, m)
J = Zip(Point[{t, 10}], t, m)
droites = Zip(Line[M, N], M, I, N, J)
intersections = Zip(Intersect[f, D], D, droites)
incidentes = Zip(Ray[M, N], M, intersections, N, J)
tangentes = Zip(Tangent[M, f], M, intersections)
normales = Zip(OrthogonalLine[M, T], M, intersections, T, tangentes)
reflechies = Zip(Mirror[I, N], I, incidentes, N, normales)
F = Intersect(reflechies(1), reflechies(2))
segments = Zip(Segment[M, F], M, intersections)
g: f