by John Moore and Marc Lewis
If we are given an arbitrary line, l, with an arbitrary point, p, and an arbitrary circle, O, (with center k) not intersecting the line or point, then we would like to find two circles which are tangent to our given point and circle. To begin this, let's construct a line perpendicular to line l through p. Call it m. One thing that we know is that the centers for both of our desired circles will fall on this line.
Let's take the radius of circle O (labeled r) and construct a circle, Q, of radius r with center p. Label the points of circle Q that intersect line m, a and b. Let's now draw a segment connecting k and a. Construct the perpendicular bisector of this segment. Where this perpendicular bisector intersects line m (labeled c) is the center of the first of our desired circles. This circle should intersect point p.
A similar process is performed to find the other circle. However this time, draw a segment connecting k and b. The rest of the construction is the same. Now let's have a look at this construction...
Let's call the center of the first found circle f and the center of the other circle g. I want to deal with the first circle, appropriately, first. Draw a segment from f to k. Now, I want to claim that af is congruent to kf. We know that we found f by constructing the perpendicular bisector of ak. Let's call this point of bisection c. Therefore, angles acf and kcf are right angles and are congruent (since all right angles are congruent and by the definition of perpendicular). We also know that segment cf is congruent to segment cf because every segment is congruent to itself. Also, we have that segments ac and kc are congruent, by the definition of bisector. Therefore, triangles acf and kcf are congruent by the side-angle-side postulate. So, segments af and kf are congrent because the corresponding parts of congruent triangles are congruent.
Here's a picture to let you see the letters...
A similar proof for our circle with center g will show that segments gb and gk are congruent. Now, if we construct a line w parallel to line l through point a, w should be the directrix and point k should be the focus for a parabola opening to the right with its vertex at point f when it is collinear with points a, p, and k. Similarly, if we construct a line x parallel to line l through point b, x should be the directrix and k should be the focus for a parabola opening to the right with its vertex at point g when it is collinear with points b, p, and k. Since we've already proven for arbitrary objects that the distance between the parabola and these points are equal, a GSP sketch should nail it down for those who do not believe.