Reflection with respect to a parabola I know how to find a reflection with respect to one of the axis or with respect to the origin, but let's say I want to find the reflection with respect to a parabola, how do I do it?
Let's say we have the standard $y = x^2$, in this case each point needs to be reflected by projecting them onto the parabola by finding the point whose tangent line at that point of the parabola and the line from the point to the parabola are perpendicular. Then the reflection would the point on the other side. So (0,1) goes to (0,-1). Is there a way to find a general formula?
I am thinking that since the parabola is $y = x^2$, I should be able to map the axis y=0 to $y=x^2$, and then any pair of points (x,y) and (x,-y), symmetric with respect to the y axis, would remain symmetric with respect to the parabola. But what is this mapping?
EDIT:
Is there a better way to define this reflection by only considering the x>0 half-plane, and adding the constraint that the reflected points must still be in the x>0 half-plane? Similarly to how the area under the y=0 axis for x>0 is reflected into the area over y=0 and x>0 for a reflection about the y=0 axis, I also would like the reflection for the area x>0 under the parabola to be reflected in a point x>0 inside the parabola. I am looking at a deformation of the plane that takes the y=0 line onto the parabola and drags all the points with it. Symmetric points after the deformation should match those before the deformation.
 A: I will add the brutal (force) numerical solution ( in MATLAB).
% Author - Chenguang Zhang
% create a circle to be mirrored
theta = linspace(0, 2*pi, 50);
radius = 0.2;
as = 0.0 + radius * cos(theta);
bs = 0.5 + radius * sin(theta);


figure(1)
hold on
xx = linspace(-3,3,101);
plot(xx, xx.*xx, 'b-', 'LineWidth', 2)
plot(as, bs, 'ro')

for ii = 1:length(theta)
    a = as(ii);
    b = bs(ii);
    troots = roots([1 0 0.5-b -0.5*a]);
    for i = 1:length(troots)
        t = troots(i);
        if(imag(t) ~= 0)
            continue;
        end
        x = t;
        y = t*t;
        p_reflect = [2*x - a, 2*y - b];
        plot(p_reflect(1), p_reflect(2), 'bo')
    end
end

An image from multiple runs with different circles location and shape is below.

A: The problem here is that the normal lines (the lines perpendicular to the tangent lines) to a parabola are not parallel, as they are for straight lines.
That means that a given point in the plane can be on more than one normal line simultaneously. The question is then: which normal line do you use to reflect?
The evolute, i.e. the envelope of normal lines, is the key here. In the case of $y=x^2$, the evolute is parametrised by $x=4t^3$ and $y=3t^2+\frac{1}{2}$. This curve gives a cusp. The points "inside" the cusp lie on three different normal lines. The points outside the cusp lie on a single normal line. The points on the cusp lie on two normal lines. 
The following picture is from MathWorld and show normal lines to a parabola. Notice how points inside the cusp lie on three normals, points on the cusp lie on two normals, and points outside the cusp lie on one normal.

