A Polar problem

Start with a circle c and a point P (outside c). Draw the two tangents from P to c passing through points Q and R (on c). Call the line through Q and R the polar of P and c. . Now take any point X (outside c) on the polar of P and c. Then the polar of X and c passes through P.

Solution:

Need a Lemma. If 0 < t < 1, then the line through P = and Q = is orthogonal to the radius of the unit circle drawn to Q.

Proof: Compute that Q dot P-Q = 0. QED

> restart;assume(t>0,t<1);

> P := t->[1/t, 0]; Q := t->[t, sqrt(1-t^2)];

> linalg[dotprod](Q(t),(P-Q)(t));

>

Note that if P is thought of as a complex number, then 1/conjugate(P) = [t,0] is on the polar of P and c, which is in fact perpendicular to the line passing through 0 and P. If we multiply everything in the picture by a complex unit, then P goes to an arbitrary point X outside of c and the polar to P, 1/conjugate(P) goes to 1/conjugate(X), and the polar of P and c goes to the polar of X and c. So we get a

Corollary . If X is any complex number outside the unit circle c, then the polar of X and c is the perpendicular to the line through 0 and X which passes through 1/conjugate(X).

So, on to the solution.

Coordinatize so that c is the unit circle and P = [1/t,0], with 0 < t < 1. Then WLOG, take

Q = and R = . By the lemma, the line through Q and R is the polar of P. Now let where r > 0. By the corollary, the polar of X and c is the line through 1/conjugate(X) which is perpendicular to the line through [0,0] and X. Consequently, it suffices to show that the line through 1/conjugate(X) and P is perpendicular to the line through [0,0] and X. That is, show X dot (P-1/conjugate(X)) = 0.

> X := t -> t+(sqrt(1-t^2)+r)*I;

> rcX:=evalc(1/conjugate(X(t)));

> linalg[dotprod]([Re(X(t)),Im(X(t))],P(t)-[Re(rcX),Im(rcX)]);

> simplify(%);

Done. QED

Now for a picture.

First, draw the circle.

> c := plot([cos(t),sin(t),t=0..2*Pi],color=blue,thickness=2):

Now define the point R mentioned in the problem.

> R := t-> [t, -sqrt(1-t^2)];

Redefine X and 1/conjugate(X) so that they return [a,b] instead of a + b*I

> X := (t,r) -> [t, sqrt(1-t^2)+r];

> rcX := unapply([Re(rcX),Im(rcX)],(t,r));

It will be useful to compute the points S and T where the polar of X and c meets c. Note that they are

the two points of the form s*X + (1-s)*P which are on c.

> Y:=evalm(s*rcX(t,r)+(1-s)*P(t));

> solve(Y[1]^2+Y[2]^2=1,s):

> sol:=simplify([%]);

> S := unapply(subs(s=sol[1],[Y[1],Y[2]]),t,r):
T := unapply(subs(s=sol[2],[Y[1],Y[2]]),t,r):

>

>

This piece of the picture shows all the points involved

> pl1 :=(t,r) ->plots[pointplot]({X(t,r),rcX(t,r),Q(t),R(t),P(t),S(t,r),T(t,r)},symbol=circle,symbolsize=8,color=red):

This piece shows all the important segments

> pl2 := (t,r)->plot({[X(t,r),rcX(t,r)],[X(t,r),Q(t,r)],[Q(t),R(t),P(t),Q(t)],[S(t,r),X(t,r),T(t,r),S(t,r)],[P(t),rcX(t,r)]},color=[blue,red,magenta]):

This piece labels certain points: P, X and 1/conjugate(X)

> pl3:=(t,r)->plots[textplot]({[op(X(t,r)+[.1,0]),`X`],
[op(rcX(t,r)+[-.8,-.1]),`1/conjugate(X)`],[op(P(t)+[0,.1]),`P`]},align={ABOVE,RIGHT}):

This combines the pieces into a frame.

> frame:= (t,r)->plots[display]([pl1(t,r),pl2(t,r),pl3(t,r),c],scaling=constrained);

So if t = .5 and r = .3

> frame(.5,.3);

In colors, the theorem says that as long as X stays above the vertical blue segment (but on the same line), the slanting red line goes through P.

Here we are animating a sequence of frames.

> plots[display]([
seq(frame(.6 +i/64,1-i/16),i=1..15)],insequence=true,
scaling=constrained,axes=none);

>