First we define the distance of functions¶
Exercise I.7.7 [1] $ \newcommand{\scalar}[3][]{\left\langle #2,#3 \right\rangle_{#1}} \newcommand{\Space}[3][]{\mathbb{#2}^{#3}_{#1}} \newcommand{\Space}[3][]{\mathbb{#2}^{#3}_{#1}} \newcommand{\cycle}[3][]{{#1 C^{#2}_{#3}}} \newcommand{\realline}[3][]{#1 R^{#2}_{#3}} \newcommand{\bs}{\breve{\sigma}} \newcommand{\zcycle}[3][]{#1 Z^{#2}_{#3}} \newcommand{\SL}[1][2]{\mathrm{SL}_{#1}(\Space{R}{})} \newcommand{\rs}{\sigma_r} \newcommand{\lvec}[1]{\overrightarrow{#1}} \newcommand{\rmi}{\mathrm{i}} \newcommand{\alli}{\iota} \newcommand{\rme}{\mathrm{e}} \newcommand{\rmd}{\mathrm{d}} \newcommand{\rmh}{\mathrm{j}} \newcommand{\rmp}{\varepsilon} \newcommand{\modulus}[2][]{\left| #2 \right|_{#1}} \newcommand{\sperp}{⋋} $ Show that the power of a point $W$ with respect to a cycle is the product $d_\sigma (W,P)\cdot d_\sigma (W,P')$ of $(\sigma,\sigma)$-distances, where $P$ and $P'$ are any two points of the cycle which are collinear with $W$.
Hint. Take $P=(u,v)$ and $P'=(u',v')$. Then, any collinear $W$ is $(tu+(1-t)u',tv+(1-t)v')$ for some $t\in\Space{R}{}$. Furthermore, a simple calculation shows that $d_\sigma (y,z)\cdot d_\sigma (z,y')= t(t-1)d_\sigma^2(y,y')$. The last expression is equal to the power of $W$ with respect to the cycle---this step can be done by CAS.
Solution. Define the function for the distance
from init_cycle import *
def dist2(X,Y,s):
return (X[0]-Y[0])**2-s*(X[1]-Y[1])**2
Define point P
P=[u,v]
Define point P1
P1=[u1,v1]
Define a new point Pt on the line through (u,v) and (u1,v1)
Pt=[t*u+(1-t)*u1,t*v+(1-t)*v1]
Then create a template of a cycle
C0=cycle2D(1,[l,n],m,e)
Now ask the cycle pass points P and P1
Cr=C0.subject_to([C0.passing(P), C0.passing(P1)],[l,n,m])
Calculate the power of Pt with respect to the cycle
E=Cr.val(Pt).normal()
and compare it with the product:
"Power is the product of distances (1st form): %r" % \
(dist2(P,P1,sign)*t*(t-1)-E).expand().normal().is_zero()
"Power is the product of distances (2nd form): %r" % \
(dist2(P,Pt,sign)*dist2(Pt,P1,sign)-E**2).expand().normal().is_zero()
This notebook is a part of the MoebInv notebooks project [2] .
References¶
Vladimir V. Kisil. Geometry of Möbius Transformations: Elliptic, Parabolic and Hyperbolic Actions of $SL_2(\mathbb{R})$. Imperial College Press, London, 2012. Includes a live DVD.
Vladimir V. Kisil, MoebInv notebooks, 2019.