摘要
2011年1月mathe提出了一个问题 :
假设1<t<k,其中t,k都是正整数, 平面上两个圆O1,O2, 其中圆O1在圆O2内部。
过圆O2上一个动点P1向圆O1一个固定方向(顺时针或者逆时针方向)做一条切线切O1于T1,交O2于另外一个点P2,
同样过P2向圆O1做另外一条切线切O1于T2,交O2于另外一个点P3,..., 直到得到Tk。直线T1Tt和Tk−t+1Tk交于一点Q。
证明或否定Q点轨迹是一个圆,并且这个圆和圆O1, 圆O2有公共的极点极线对。也就是说存在平面上一个点H, H向三个圆做切线的6个切点共线(特别的,对于同心圆,认为H在无穷远)
而这个问题还可以推广到普通二次曲线。
通过使用几何画板可以发现这个问题对于一般的t不成立,但是对于t=k−1是成立的。
最后我们发现这个几何变换可以通过椭圆曲线群来描述。
二次对合变换
简单的二重迭代
我们可以将问题推广到了普通圆锥曲线来考虑,但是可以先考虑变换的最简单的二次迭代情况:
设C,C1是平面上的两条圆锥曲线. C(上的点列)是C1作用对象,C1是变换曲线。
自C1上的动点Q引C的两条切线得切点P和R,那么P→R就确定了C上点列的一个变换,且称之为C关于C1的一个二次对合变换(不知道数学上是否已经有这个变换的定义,需要注意的是二次对合变换不是对合变换)。
为简化计算,我们将曲线C通过射影变换 转化为成抛物线y=x2,使得C上的点(x,y)可以写成参数形式(x,x2)。
假定上述各点坐标为Q(x0,y0),P(x1,y1),R(x2,y2).
PR是Q关于C的极线,其直线方程为2x0x−y−y0=0.
PR和C交于(x1,y1),(x2,y2)两点,也就是方程x2−2x0x+y0=0的两根是x1,x2,
由韦达定理可得x1+x2=2x0,x1x2=y0,
由此可见, 若二次对合变换C1将 C上的点(x1,y1)变换为(x2,y2), 那么(2x1+x2,x1x2)将满足曲线C1的方程。
反之可得,曲线C:y=x2上点列的一个变换为二次对合变换的充要条件是(u,v)=(2x1+x2,x1x2)满足一条圆锥曲线方程。
现在,我们设C1的方程为4Ax2+2Bxy+Cy2+2Dx+Ey+F=0,
将(2x1+x2,x1x2)代入方程得
A(x1+x2)2+B(x1+x2)x1x2+C(x1x2)2+D(x1+x2)+E(x1x2)+F=0 (1)
我们发现可以将上面方程改成矩阵形式
[x1x121]⎣⎢⎡2A+EBDBCADAF⎦⎥⎤⎣⎢⎡x2x221⎦⎥⎤=0 (2)
可以看到,对于给定的(x1,x12), (x2,x22)一般有两个解,我们可以把这两个解分别记为x21,x22.
假定x1→x21是沿顺时针方向的,那么x1→x22就是沿逆时针方向的。任取一个方向,就得到一个二次对合变换。
也就是说,任意一个实对称矩阵确定圆锥曲线上一对互逆的二次对合变换。
设(2)的展开后为ux22+vx2+w=0, 易知这里u,v,w都是x1,x12,1的线性组合,
若将2x21+x22=−2uv,x21x22=uw看成一个平面上点的坐标,那么这个点正好是点(x1,x12,1)的一个射影变换,
由于动点(x1,x12,1)满足圆锥曲线y=x2的方程,故(2x21+x22,x21x22)也满足一条圆锥曲线的方程。
也就是说, 变换 x21→x22也是C上点列的一个二次对合变换。
而 x21→x22是 x21→x1 和x1→x22的复合,故得二次对合变换的平方还是二次对合变换。
其几何意义就是给定圆锥曲线C,C1,从C上任意一动点P出发向某个方向(顺时针方向或逆时针方向)作C切线交C1于Q1,过Q1作C的另一条切线切C于P2交C1于Q2,过Q2做C的另一条切线切C于P3,那么PQ1和Q2P3的交点的轨迹是圆锥曲线.
(2)中矩阵我们还可以看成二次曲线C3:
(x,y,z)⎣⎢⎡2A+EBDBCADAF⎦⎥⎤⎣⎢⎡xyz⎦⎥⎤=0
于是(2)式的几何意义就是(x2,x22,1)在点(x1,x12,1)关于C3的极线上(也就是关于C3的极线和C1的交点)
射影变换下的二次对合变换
上图中离散点列P,P2,P3,…是一个二次对合变换迭代点列,而Q1,Q2,…也是。
对于圆锥曲线C上的一个二次对合变换C1迭代点列{Pi},它在一个射影变换M作用下的映像{M(Pi)}是圆锥曲线M(C)上的二次对合变换M(C1)迭代点列。
通过射影对应,我们可以定义直线上的二次对合变换迭代点列。
如果P1,P2,P3,…,Pn,…是圆锥曲线C上一个二次对合变换迭代点列,在 C上任意选择一点P,连接PP1,PP2,…,PPn,….等分别交直线 l 到Q1,Q2,Q3,…,Qn,…,那么我们称Q1,Q2,Q3,…,Qn,…为直线 l 上的二次对合变换迭代点列。
在另外圆锥曲线C′上任取一点P′,分别连接Q1,Q2,…,Qn,…到P′的直线交圆锥曲线C′得出的交点序列还是C′上的二次对合变换迭代点列。
同样,两条直线之间点列的投影也保持二次对合变换的性质。
于是,对圆锥曲线C上任取的6个不同点P1,P2,…,P6, C上恰好存在一个的由此6点引导的二次对合变换迭代点列P1,P2,…,P6,…。
二次对合变换的等价定义
根据前面的知识,我们现在知道对于上面定义的二次对合变换,我们可以有下面四种不同的定义:
i)给定圆锥曲线C,以及另外一个圆锥曲线C1,对于C上任意一点P1,过P1做C1的任意一条切线交C于P2,同样过P2做C1的另外一条切线交C于P3,...
依次类推,我们可以得到一个序列P1,P2,P3,…,Pn,…。
定圆锥曲线C1任意一条动切线交圆锥曲线C于P1和P2二个点,我们称P2为P1在目标曲线C上关于第一类变换曲线C1的二次对合变换的像(其中P1,P2的顺序可以任意指定,不同的指定方法得出两个不同的互逆的二次>对合变换,同样对于任意点P1,可以有两个P2满足条件,分别在两个互逆的不同分支上)
ii)对偶的,给定圆锥曲线C,以及另外一个圆锥曲线C1,对于C上任意一点P1,P1点的C的切线交于C1于一点,而过着一点可以做C1的另外一条切线,切点为P2, 同样P2的这条切线交C1于另外一点,而过这一点C的另外一条切线的切点为P3,...
依次类推,我们可以得到一个序列P1,P2,P3,…,Pn,…。
我们称P1关于这个二次对合变换的像是P2,P2关于这个二次对合变换的像是P3,... 而这个序列是对应的是一个二次对合变换序列。
过定圆锥曲线C1上一动点做圆锥曲线C的两条切线分别切C于P1,P2两个点,我们称P2为P1在目标曲线C上关于第二类变换曲线C1的二次对合变换的像
iii)给定圆锥曲线C和C1,对于C上任意一点P1,P1关于C1的极线和C的一个交点定义为P2,然后P2关于C1的极线(必然过P1)和C的另外一个交点为P3,P3关于C1的极线和C的另外一个交点为P4,.... 依次类推,我们可以得到一个序列P1,P2,P3,…,Pn,…。
我们称P1关于这个二次对合变换的像是P2,P2关于这个二次对合变换的像是P3,...而这个序列是对应的一个二次对合变换序列。
对于圆锥曲线C上一点P1,P1关于定圆锥曲线C1的极线交C于一点P2,那么我们称P2为P1在目标曲线C上 关于第三类变换曲线C1的二次对合变换的像
iv)对偶于iii),给定圆锥曲线C和C1,对于C上任意一点P1,P1处切线关于C1的极点可以向C引任意一切线,切点定义为P2,然后P2处切线关于C1的极点向C做另外一条切线(其中一条必然切于P1)切C于P3,.... 依次类推,我们可以得到一个序列P1,P2,P3,…,Pn,…。
我们称P1关于这个二次对合变换的像是P2,P2关于这个二次对合变换的像是P3,... 而这个序列是对应的一个二次对合变换序列。
对于圆锥曲线C上一点P1,过P1点的切线关于定圆锥曲线C1的极点像C引一条切线切C于P2,那么我们称P2>为P1在目标曲线C上关于第四类变换曲线C1的二次对合变换的像
显然同一个二次对合变换如果选择不同的初始点,可以得到很多不同的二次对合变换序列。
四种定义中的曲线C我们可以称之为这个二次对合变换的目标曲线,而其中的曲线C1可以分别称为第一(二,三,四)类变换曲线。
二次对合变换的驻点
我们现在查看第一类变换曲线,在复数范围,通常情况,它和目标曲线C有四条公切线。
对于某一条公切线P1Q1,其中切C于P1,切第一类变换曲线C1于Q1. 由于过P1可以做C1的两条切线,其中另外一条为为P1Q2,其中交C于另外一个点P2.
于是如果我们从P2开始做二次对合变换序列,并将第一次变换的像选择为P1,那么下一次变换,由于切线P1Q1是公切线,下一次变换结果还是P1,而再下一次变换,由于我们需要切换到过P1的另外一条切线(P1Q2),所以又变换到P2,于是我们得到对应的二次对合变换序列为
P2,P1,P1,P2,…
也就是这个变换序列中点P1连续重复出现一次(所以我们也知道对于每个点,其变换的像同它在序列中的位置也有关系,总共有两种可能的取值)。
另外一方面,如果一个点会在某个变换序列中连续重复出现,那么我们代入(2)式(定义3的代数形式),得到如果C通过射影变换成y=x2后,横坐标x必然是一个四次方程的根,所以最多四个解。
而由于通常情况,目标曲线和第一类变换曲线有且仅有四条公切线,这说明这种在某个序列中连续重复出现一次的点有且仅有四个,正好是目标曲线和第一类变换曲线公切线在目标曲线上的切点,我们称这种点为这个二次对合变换的驻点。当然特殊的,如果目标曲线正好和第一类变换曲线在某点相切,那么情况退化为两个驻点重合的情况,而对应的驻点处二次变换序列为常数点序列(P1,P1,P1,…),这个点可以称为常驻点,显然常驻点最多两个。如果常驻点根据重数看成多个驻点,那么任何二次对合变换正好有且仅有四个驻点。
二次对合变换的反射点
现在我们在查看目标曲线C和第一类变换曲线C1的四个交点的情况,如下图:
P1是两曲线一个交点,过P1分别作出变换的后面两个点P2,P3,
如果现在我们反过来从P3开始序列,并且将第二个点选择为P2,于是继续变换下去我们得到序列
P3,P2,P1,P2,P3,…,
也就是这个序列到达P1以后会“反射”回去,所以我们可以称变换中这样的点为这个变换的反射点。
于是我们知道目标曲线和第一类变换曲线的交点总是反射点,所以通常情况,这样的反射点数目至少有四个。
另外,前面我们已经证明,每个二次对合变换的平方还是二次对合变换,而对于这样包含反射点的二次对合变换序列中,P2正好是它的平方变换的驻点。
由于我们知道驻点只能有四个,这个也说明了反射点数目最多也只有四个。所以我们知道二次对合变换的反射点也正好有四个。
而其中特别的,当目标曲线和第一类变换曲线相切于某一点,对应于两个反射点重合在一起(同时和两个驻点也重合在一起),对应的二次对合变换序列退化为常数点序列,也就是这时也同时是常驻点。
一个二次对合变换的反射点还是它的平方变换的反射点,于是我们根据上面的结论,可以得出:
引理一:
一个二次对合变换的目标曲线和它的第一类变换曲线,以及平方变换的第一类变换曲线交于公共的四个点(也就是它们的反射点)。一个二次对合变换的目标曲线和它的第一类变换曲线,以及平方变换的第一类变换曲线交于公共的四个点(也就是它们的反射点)。
二次对合变换的复合变换问题
我们通过几何画板作图发现,同一个二次对合变换的任意次方还是二次对合变换,但是两个不同的二次对合变换的复合不一定是二次对合变换。
根据上面的引理一可以猜测,两个不同的二次对合变换的复合还是二次对合变换的必要条件是目标曲线和两条第一类变换曲线经过四个公共点,而且可以猜测这个条件应该是充分必要条件.下面是一些分析过程:
如图目标曲线C和两个二次对合变换的第一类变换曲线C1,C2过公共四个点,那么对于目标曲线上动点A,过A点的C1,C2的切线分别交目标曲线于B,C两个点,那么B,C两个点的连线必然同固定的二次曲线C3相切,而且C3也过这四个公共点。也就是C1,C3确定的变换的复合是C2确定的变换。(同样C3,C1确定的变换也是C2确定的变换,所以第一类变换曲线和目标曲线都过公共四点的那些变换也可以交换顺序)
同样,这个问题对应到圆的情况如下图:
其中三个圆有公共的根轴,于是AC必然相切于另外一个和它们有同样根轴的圆
我们可以直接考虑一个推广问题,对于圆锥曲线C以及它的一个二次对合变换,对于这个变换的两个不同的二次对合变换序列P1,P2,P3,…;Q1,Q2,Q3,….
那么我们可以猜想直线P1Q1,P2Q2,P3Q3,P4Q4,…等相切于一条二次曲线。
(同样对偶的设P1点的切线和Q1点的切线交于R1,P2点的切线和Q2点的切线交于R2,等等.
那么R1,R2,… 等共一条二次曲线),容易看出,这个二次对合变换和原二次对合变换是可以交换的。
由此我们可以猜想,同一条圆锥曲线的两个不同二次对合变换的乘积还是二次对合变换的充分必要条件是它们的乘积可以交换。
另外,前面我们得出一个二次对合变换的平方和原二次对合变换的第一类变换曲线以及目标曲线交于公共的四个点。同样,如果我们假设这个二次对合变换的n次方也是二次对合变换(本题的猜想之一),那么我们可以得出n次方的第一类变换曲线也过这四个点。
进一步,我们还可以猜想,两个二次对合变换的乘积还是二次对合变换(或可以交换)的充分必要条件是它们的第一类变换曲线和目标曲线交于公共的四个点,或者说它们构成一个过四个点的二次曲线系。
类似的,使用第二类变换曲线,那么得到的结论就对偶的变成同四条公共直线相切的二次曲线系。
现在最后那个二次曲线系问题我们可以转化为如下图一个问题:
二次曲线C1,C2,C过公共四个点,过C的动点A1分别向C1,C2做切线交C于A2,A3.现在移动A1,那么A2A3必然相切于一个通过过公共四个点的二次曲线.
或者我们转化为圆的问题,已知圆C,C1,C2共根轴,那么过C上动点A1分别向C1,C2做切线交C于A2,A3两点,那么当我们移动A1时,动直线A2A3必然同一个固定圆相切,而且这个圆同C,C1,C2同根轴.
如果三个共根轴的圆交于P,Q两点,我们可以以Q为中心做反演变换,可以得出如图的情况:
三条直线过P点,Q为不在直线上一点(Q为反演中心)。
对于一条直线上一个动点A,过A和Q做另外两条直线的切圆交这条直线于B,C,那么求证过Q,B,C的圆和一条过P点的定直线相切(注意过P点的这个圆的切线两条,只有一条是定直线).
我们假设通过射影变换将目标曲线变换为曲线xy=1而且目标曲线和第一类变换曲线四个交点中为(1,0,0),(0,1,0),(1,1,1),(ba,ab,1)这四个点,于是我们可以假设第一类变换曲线变换后方程为
(x−a)(y−b)=(1−a)(1−b).
同样,如果还有另外通过这四个点的第一类变换曲线,其方程可以写成(x−at)(y−bt)=(1−at)(1−bt),其中t任意。
于是我们可以计算对于目标曲线上一点(x,x1),如果第一类变换曲线(x−a)(y−b)=(1−a)(1−b)将其变换为(y,y1),经计算可以知道x,y满足方程:
[x2x1]⎣⎢⎡b2−2b1−2b−2ab+4b+4a−2−2a1−2aa2⎦⎥⎤⎣⎢⎡y2y1⎦⎥⎤=0.
同样,如果(y,y1)经过另外一个第一类变换曲线(x−at)(y−bt)=(1−at)(1−bt)变为(z,z1).
我们可以得到类似方程,然后消去y,就可以得到如上面一个复杂的方程.
我们可以直接计算一个无穷远点经过复合变换后得到的结果,如果假设复合变换的曲线为(x−as)(y−bs)=(1−as)(1−bs),可以得到s和t的关系式:
a2b2(st)2−2ab(s+t)st+(s2+t2)+(−2ab+4a+4b−2)st−2(s+t)+1=0
或
[s2s1]⎣⎢⎡a2b2−2ab1−2ab−2ab+4a+4b−2−21−21⎦⎥⎤⎣⎢⎡t2t1⎦⎥⎤=0 (1)
而对每个t,有两个s满足条件。而我们需要证明,对于曲线xy=1上的任意一点,经过第一类变换曲线(x−a)(y−b)=(1−a)(1−b)和(x−at)(y−bt)=(1−at)(1−bt)后,相当于经过一次第一类变换(x−as)(y−bs)=(1−as)(1−bs).
也就是下面三个方程组对于任意给定的x都有解(也就是三条关于y,z的方程有公共解)
[x2x1]⎣⎢⎡b2−2b1−2b−2ab+4b+4a−2−2a1−2aa2⎦⎥⎤⎣⎢⎡y2y1⎦⎥⎤=0 (2)
[y2y1]⎣⎢⎡b2t2−2bt1−2bt−2abt2+4bt+4at−2−2at1−2ata2t2⎦⎥⎤⎣⎢⎡z2z1⎦⎥⎤=0 (3)
[z2z1]⎣⎢⎡b2s2−2bs1−2bs−2abs2+4bs+4as−2−2as1−2asa2s2⎦⎥⎤⎣⎢⎡x2x1⎦⎥⎤=0 (4)
最后mathe在maxima中通过暴力展开上面的表达式,证明这个命题是成立的,也就是说引理一的逆命题也是成立的。所以两个二次对合变换的复合还是二次对合变换的充分必要条件是两条第一类变换曲线和目标曲线经过公共的四个点,而且复合变换的第一类变换曲线也经过这四个点。
简单推论
然后我们可以继续分析,知道,如果第一类变换曲线和目标曲线本身重合,对应的二次对合变换退化为恒等变换;如果第一类变换曲线退化为相交直线形式,根据其代数形式计算可知,对应的二次对合变换退化为以相交直线的交点为对合中心的对合变换。
此外,如果第一类变换曲线和目标曲线相切于一点,那么这个切点变换任意次还是它本身,所以切点是这个变换的恒等元。反之,对于非恒等变换,由于第一类变换曲线和目标曲线最多有两个不同的切点,所以如果一个二次对合变换上有三个以上恒等元,那么只能是恒等变换。由此,我们可以非常容易得出一个结论:如果一个n边形同时存在内接和外接圆锥曲线 , 那么存在过外接圆锥上任意一点(顶点之一)的n边形同时外接和内接于这两个圆锥曲线。这个是因为我们马上可以得出对应二次对合变换的n次方变换是恒等变换。同样,如果n是偶数,那么我们马上可以知道这个二次对合变换的2n次方是对合变换,所以这个多边形所有相隔2n的顶点的连线共点.
比如百度贴吧有个双心五边形的问题 ,通过这里的结论可以很自然的直接得出:
如图,五边形A,B,C,D,E既外接于圆,又内切于圆。
将五切点隔位相连,如此得到五个交点A3,B3,C3,D3,E3.证明:此五点共圆。
一维形式和二阶二次曲线系
前面我们讨论了很多圆锥曲线上的二次对合变换的性质。实际上我们还可以推广到直线上,通过射影变换将圆锥曲线上的二次对合变换点列投影到直线上。容易证明,对于直线上,二次对合变换可以定义成
A(x1x2)2+2B(x1x2)(x1+x2)+C(x1+x2)2+2D(x1x2)+2E(x1+x2)+F=0定义的隐函数。
而其中如果A,B,C都是0,就退化为一次的对合变换。实际上我们可以将它看成对合的二次扩展。
我们知道,对于过四点的二次曲线系中,每条二次曲线同一条固定直线的交点正好构成一个对合变换。
而过四点的二次曲线系可以看成一个二次曲线,其所有系数都是一个参数t的不超过一次的多项式。
如果我们定义一个二次曲线系,其所有系数都是一个参数t的不超过二次的多项式,那么这个二次曲线系中每一条曲线同一条固定直线的两个交点正好是这条直线上一个二次对合变换的两个对应点
过四点的二次曲线系我们可以称为一阶二次曲线系,而我们新定义的这个含参数t二次多项式的曲线系可以称为二阶二次曲线系。
反之,对于一条直线上的一个二次对合变换P,和直线外三个不共线的点A,B,C,
过A,B,C和直线上动点x以及Px的圆锥曲线系是二阶二次曲线系(过固定三点A,B,C的二阶二次曲线系)。
退化的二次对合变换
另外我们前面都没有讨论目标曲线退化为两条相交直线的情况。对于这种情况的一个变换,直线一上的点会被映射到直线二,而直线二上映射到直线一。于是这个变换的平方是直线一上的二次对合变换。于是我们可以用这种方法定义直线上的二次对合变换(二次合同变换)。(这个方法好像只能定义直线上的部分二次合同变换,所以最好还是以下面的另外一个方法作为几何定义)
如图,L是目标直线,直线m和圆锥曲线C构成变换曲线,对于m上任意一点D向C引两条切线交L于P1,P2两点,那么P1和P2之间构成二次对合变换(或称为二次合同变换)。
于是对于任意同L相切的二次曲线C1,过P1和P2的C1的切线(除直线L)交于动点Q,于是Q点的轨迹是一条二次曲线o.(这个性质实际上代表了直线和圆锥曲线上二次合同变换的关系)
直线和线束上的二次对合变换
直线上二次对合变换定义一:
给定直线l和圆锥曲线C1,C2,其中l为C1的切线,C2上任意动点关于C1的两条切线交直线l于P1,P2,那么我们称P2为P1在目标直线l上关于C1,C2的二次对合变换的像,简称P2为P1的二次对合变换的像。
而同一个二次对合变换对于每个元可以确定两个不同的像,我们成为这个二次对合变换的两个分支
对偶的,对于给定的点Q和过Q点的圆锥曲线C1,以及另外一条圆锥曲线C2,C2上动点的切线交C1于P1,P2两点,那么我们称直线QP2为直线QP1在过Q点线束中关于C1,C2的二次对合变换的像:
各种逆定理
以上各定义的逆定理都成立,也就是:
i)对于圆锥曲线C上一个二次对合变换T,连接C上任意一点P和像T(P)的直线同一个固定二次曲线相切
ii)对于圆锥曲线C上一个二次对合变换T,C上任意一点P和像T(P)处切线的交点在一个固定二次曲线上。
iii)对于圆锥曲线C上一个二次对合变换T,存在二次曲线C1使得对于C上任意一点P,像T(P)在P关于C1的极线上
iv)对于圆锥曲线C上一个二次对合变换T,存在二次曲线C1使得对于C上任意一点P处切线l,像T(P)处切线过l关于C1的极点。
v)对于直线l上任意一个二次对合变换T和一条同l相切的圆锥曲线C,过l上动点P和像T(P)的C的另外一条切线(不是l)的交点的轨迹是一条二次曲线
vi)对于过Q点的线束上的一个二次对合变换T和过Q点的圆锥曲线C,任意过Q点直线l和像T(l)同C交点的连线切一固定二次曲线。
特殊的退化的二次对合变换
i)恒等变换是特殊的二次对合变换,它是在圆锥曲线的第一类变换曲线同自身重合时的结果。它是唯一一个有三个以上恒等元的二次对合变换(恒等元是指这个元的两个像都是自身)
ii)对合变换也是特殊的二次对合变换,它是在圆锥曲线的第一类变换曲线退化为两条直线时的结果。它相当于过两条直线交点的任意直线同目标曲线两个交点之间确定的对合变换。对合变换中任何一个元的两个像都相同。而对于普通的二次对合变换,最多有四个元的两个像都相同,这些为反射点。同样对于普通的二次对合变换,如果某个元的两个像中有一个是自身,我们称这样的点为驻点,而对于普通的二次对合变换,最多有四个驻点。
对于直线l和给定的圆锥曲线C和直线m,过m上动点像圆锥曲线C引两条切线交l于P1,P2两个点,那么P2必然是直线l上关于P1的一个二次对合变换的像,其中如果l和圆锥曲线C相切,那么这个二次对合变换退化为对合变换:
射影变换的保二次对合变换性
很显然,根据几何定义,我们可以得出,对圆锥曲线C(或直线l,线束Q)上任意一个射影变换,它将其上一个二次对合变换变换成另外一个二次对合变换。
同样,如果两个二次对合变换可以通过某个射影变换相互转化,我们称它们之间为合同的。
下图体现了线束间射影变换的保二次对合变换性(从线束Q到线束Q′):
二次对合变化与椭圆曲线群
射影变换和对合变换
射影几何中,我们可以将直线上的点用齐次坐标(x,y)表示,其中x,y不同时为零,代表普通坐标下值为yx的点, 其中y=0时代表无穷远点。对点的齐次坐标所有分量乘上同一个非零常数还是表示同一个点。
在代数上,射影变换可以通过齐次坐标的线性变换形式来表示,也就是(x2,y2)=(x1,y1)A是从点(x1,y1) 到(x2,y2)的射影变换,特别的,如果A2=I(I表示单位阵),那么这个射影变换是一个对合变换,其中A是一个2×2的矩阵。
由于(x2y2)(−y2x2)=0而且(−y2x2)=(x2y2)[0−110]。
于是上面变换我们也可以写成(x1y1)A[0−110](x2y2)=(x1y1)B(x2y2)=0. 特别的,如果这个射影变换是对合变换,矩阵B正好是可逆对称阵。而在本文中,为了避免混淆,我们可以将对合变换称为一次对合变换。
二次对合变换
定义1: 如果对于一个可逆的3×3对称阵C,点(x1,y1)和点(x2,y2)之间满足关系式
(x12,x1y1,y12)C⎝⎜⎛x22x2y2y22⎠⎟⎞=0,我们称这是点(x1,y1)到点(x2,y2)的二次对合变换。
由于对于给定的点(x1,y1),这个变换是一个二次方程,所以通常有两个解,也就是这个变换可以有两种不同的取值,我们看成是这个变换的两个不同的分支。很显然,这两个分支相互是对方的逆变换。我们可以将其记为(x2,y2)=QIC(x1,y1),这是一个双值函数.
二次对合变换群
对于给定的一个3阶可逆对称矩阵C和直线上任意一个点(x1,y1),我们可以先任意选择一个(x2,y2)满足(x12,x1y1,y12)C⎝⎜⎛x22x2y2y22⎠⎟⎞=0,于是此后我们计算第三个点(x3,y3)使得(x32,x3y3,y32)C⎝⎜⎛x22x2y2y22⎠⎟⎞=0而且这个点不同于(x1,y1) (如果这个方程两个根重合那么还是取这个值)。同样,我们可以继续寻找(x4,y4)使得(x32,x3y3,y32)C⎝⎜⎛x42x4y4y42⎠⎟⎞=0,而且(x4,y4)不同于(x2,y2),
同样,我们还可以将这个序列反向推导得出(x0,y0),(x−1,y−1),…
这样,我们就可以得到一个无穷点列{(xk,yk)},其中每个点关于C的二次对合变换正好是前后两个点。而且其中(xn+k,yn+k)=QICk(xn,yn).
于是在这个无穷序列上,{QICk,k∈Z} 构成一个循环群,我们称其为这个二次对合变换在这个点列上的变换群。
二次对合变换的复合变换
现在给定一条圆锥曲线C和两个第一个变换曲线K1,K2,我们取C上任意一点X,通过向K1某个方向做切线交C于Y,同样过Y点向K2某个方向做切线交曲线C于Z,于是我们得到一个复合变换X→Z. 前面我们通过复杂的计算得出了非常有意思的结论:
如果曲线C,K1,K2在同一个二次曲线系,也就是有常数u,v使得K2=uC+vK1,那么QIK1和QIK2的复合变换也是二次对合变换,而且这两个变换的复合可以交换,而且复合变换的第一类变换曲线也在这个二次曲线系上(由于两个变换都是双值的,所以复合后我们可以得到两个不同的二次对合变换)。或者换成几何意义就是,如果C,K1,K2在同一个二次曲线系中,我们过C上一动点X向K1某个方向D1做切线交C于Y,过Y点向K2某个方向D2作切线交曲线C于Z,于是直线XZ同某个圆锥曲线相切,而且这个圆锥曲线在同一个二次曲线系中。并且如果我们过X向K2的方向D2做切线交C于Y′,过Y′向K1的方向D1的切线必然也交C于Z点。
现在回到前面的二次对合变换群,我们可以知道,这个变换群是同初始点(x1,y1)的选择无关的,它同样可以看成C和K确定的二次曲线系上面的群运算。
二次对合变换群中的运算
前面通过射影变换将目标曲线C变化为双曲线xy=1,然后将第一类变换曲线变换到二次曲线系(x−at)(y−bt)=(1−at)(1−bt),或者写成xy−1+t(−ay−bx+a+b)=0, 于是得出对应的二次对合变换的变换矩阵为⎣⎢⎡b2t2−2bt1−2bt−2abt2+4at+4bt−2−2at1−2ata2t2⎦⎥⎤。
链接中得出,如果第一类变换曲线(x−a)(y−b)=(1−a)(1−b)和(x−ta)(y−tb)=(1−ta)(1−tb)的复合变换对应的第一类变换曲线是(x−as)(y−bs)=(1−as)(1−bs),那么t和s满足下面方程
(s2,s,1)⎣⎢⎡a2b2−2ab1−2ab−2ab+4a+4b−2−21−21)⎦⎥⎤⎝⎜⎛t2t1⎠⎟⎞=0
现在在通过上面变换我们可以用参数(a,b,t)来唯一确定一个二次对合变换,其中a,b给定以后,就确定了一族相互之间复合运算可以交换的二次对合变换,而我们只需要使用参数t来识别这个曲线系中任何一个二次对合变换。
于是对于给定参数a,b, a×b=1后,我们先选择t1=1对应的二次对合变换作为生成变化A。而t=0的情况对应恒等变换,是群中的单位元。为了计算A2对应的参数t2,我们使用上面的方程得到
(t2,t,1)⎣⎢⎡a2b2−2ab1−2ab−2ab+4a+4b−2−21−21⎦⎥⎤⎝⎜⎛111⎠⎟⎞=0
得出(ab−1)2t22−4(a−1)(b−1)t2=0,由于t=0对应恒等变换,我们得出t2=(ab−1)24(a−1)(b−1).
同样,假设我们已经得出An−1和An对应的参数tn−1,tn,
由于我们知道tn−1和tn+1都满足方程
(x2,x,1)⎣⎢⎡a2b2−2ab1−2ab−2ab+4a+4b−2−21−21⎦⎥⎤⎝⎜⎛tn2tn1⎠⎟⎞=0
也就是(abtn−1)2x2+(−2abtn2+(−2ab+4a+4b−2)tn−2)x+(tn−1)2=0.
根据韦达定理我们得出t(n−1)t(n+1)=(abtn−1)2(tn−1)2. 由此我们可以利用tn和tn−1计算出tn+1. 这里也可以看出为什么要选择a×b=1,不然tn−1tn+1=1就是一个平凡的变换群了。
在计算中,我们还可能会遇上abtn=1的情况,这时对应tn+1为无穷大,那么此时如何继续计算tn+2呢?只要在方程
(x2,x,1)⎣⎢⎡a2b2−2ab1−2ab−2ab+4a+4b−2−21−21⎦⎥⎤⎝⎜⎛tn+12tn+11⎠⎟⎞=0.
中除以tn+12再让tn+1趋向无穷远,我们就可以得出方程(abx−1)2=0,也就是tn=tn+2=ab1.
我们也可以从几何角度来理解t为无穷大时的情况,t为无穷对应二次曲线系xy−1+t(−ay−bx+a+b)=0中的退化二次曲线−ay−bx+a+b=0,也就是两条直线:无穷远直线和直线−ay−bx+a+b=0,于是这时二次对合变换退化为一次对合变换,也就是对于目标曲线上任意一点X,过两直线交点(无穷远点(a,−b,0))交目标曲线于另外一点Y就是变换结果,然后通过复合变换运算也能得出类似的结果。
实际应用中,我们需要给定tn和tm计算出它们的复合变换tn+m,为了计算这个值,我们可以看成是参数(atn,btn,1)对应的变换曲线和(atn,btn,tntm)对应的变换曲线的复合,于是得出
(tn2tn+m2,tntn+m,1)⎣⎢⎡a2b2tn4−2abtn21−2abtn2−2abtn2+4atn+4btn−2−21−21⎦⎥⎤⎝⎜⎜⎛tn2tm2tntm1⎠⎟⎟⎞=0
其中如果tm是无穷大,方程直接为(abtntn+m−1)2=0.
但是问题在于这个方程会同时给出tn+m和tn−m的值,但是我们无法区分它们。
为此,我们可以同时使用用两个数(tn,tn+1)来表示An而不是仅仅只用tn.
由此,给定(tn,tn+1)和(tm,tm+1),我们需要计算(tn+m,tn+m+1).
我们可以利用tn,tm+1的复合变换得出方程(x−tn+m+1)(x−tn−m−1),同样用tm,tn+1的复合变换得出方程(x−tn+m+1)(x−tm−n−1),求它们的公因子我们可以得到x−tn+m+1由此得出tn+m+1。其中也有可能tm−n−1=tn−m−1,但是这只能在n=m或周期为2时有可能。周期为2的群只能有0,1两个元素,我们可以不用考虑。而对于n=m,我们需要特殊处理:
直接使用二倍公式得出t2n=(abtn2−1)24(atn−1)(btn−1),t2n+2=(abtn+12−1)24(atn+1−1)(btn+1−1) , 然后分别用t2n和t1=1复合算出(x−t2n+1)(x−t2n−1),利用t2n+2和t1=1复合得出(x−t2n+1)(x−t2n+3),求它们公因式可得t2n+1.
而对于n=m而且周期大于2,同样,我们可以利用t1=1和tn+m+1得出方程(x−tn+m)(x−tn+m+2),然后又利用tn和tm得出方程(x−tn+m)(x−tn−m),计算两者公因子得出tn+m。由此我们算出(tn+m,tn+m+1)。 这里还有一种特殊情况是如果tn−m和tn+m+2正好相等,我们无法区分哪个因子是tn+m,这时我们可以继续利用tm+1和tn+1构造方程(x−tn+m+2)(x−tn−m),这个方程有重因子x−tn+m+2,我们从前面的方程(x−tn+m)(x−tn+m+2)中除去因子x−tn+m+2即可得到tn+m。
这样,我们就可以得到了这个群中加法的一个有效算法 。
这个算法被数学星空用来计算椭圆周长最小的内接n边形 .
一般曲线下的变换关系
我们知道对于曲线系xy−1−t(ay+bx−a−b)=0和目标曲线xy−1=0有变换关系式
(s2,s,1)⎣⎢⎡a2b2−2ab1−2ab−2ab+4a+4b−2−21−21)⎦⎥⎤⎝⎜⎛t2t1⎠⎟⎞=0
我们使用变量替换t=h+11,曲线系变成h(xy−1)+(xy−1−ay−bx+a+b)=0. 其中h=0代表最基本的第一类变换曲线,而h=∞代表恒等变换。于是同样设一次变换后的s也有类似替换s=f+11,于是必然有
((f+1)2,f,1)⎣⎢⎡1−21−2−2ab+4a+4b−2−2ab1−2aba2b2⎦⎥⎤⎝⎜⎛(h+1)2h+11⎠⎟⎞=0
化简后得到
(f2,f,1)⎣⎢⎡1000−2ab+4a+4b−6−4ab+4a+4b−40−4ab+4a+4b−4a2b2−6ab+4a+4b−3⎦⎥⎤⎝⎜⎛h2h1⎠⎟⎞=0.
对应到一般情况,设目标曲线为J,基本第一类变换曲线为K,其中J,K分别又代表它们的3×3对称矩阵形式。对应的第一类变换曲线系方程为hJ+K.假设矩阵J−1K的特征方程为g(x)=x3−u2x2+u1x−u0,对应特征值为r1,r2,r3,于是根据链接中一个分析结果,如果我们通过射影变换变换将J变换为曲线xy−1,同时将K变换为曲线u3(xy−1−ay−bx+a+b),那么这时必然有a=1−r3r1,b=1−r3r2 ,而且对比特征值有r3=u3.于是−2ab+4a+4b−6=−2r32r1r2+r1r3+r3r2=r32−2u1,−4ab+4a+4b−4=r32−4r1r2=r33−4u0,a2b2−6ab+4a+4b−3=r34r12r22+r22r32+r32r12−2r1r2r3(r1+r2+r3)=r34(r1r2+r1r3+r3r2)2−4r1r2r3(r1+r2+r3)=r34u12−4u0u2.于是我们得到
(r32f2,r3f,1)⎣⎢⎢⎡1000r32−2u1ur33−4u00r33−4u0r34u12−4u0u2⎦⎥⎥⎤⎝⎜⎜⎛r32h2r3h1⎠⎟⎟⎞=0
整理得到
(f2,f,1)⎣⎢⎡1000−2u1−4u00−4u0u12−4u0u2⎦⎥⎤⎝⎜⎛h2h1⎠⎟⎞=0
如果我们展开并且利用二次方程求根公式可以得到
f=h2u1h+2u0±−4u0g(−h)
现在我们查看椭圆曲线y2=u0(x3+u2x2+u1x+u0),显然上面有点 (0,u0),现在我们假设曲线上还有一点(h,∓−4u0g(−h)),我们连接这两点得到直线y=u0+h∓−4u0g(−h)−u0x,然后代入椭圆方程得到u0(x3+u2x2+u1x+u0)−(u0+h∓−4u0g(−h)−u0x)2=0,由于我们知道这个方程已经有解0,h,得到第三个解为hu1±2h−4u0g(−h)−u0=h2u1h+2u0±−4u0g(−h)=f,由此得出:
二阶对合变换群同椭圆曲线y2=u0(x3+u2x2+u1x+u0)的群是完全同构的
曲线的横坐标对应二次曲线系中的参数h,纵坐标的符号决定了变换的方向。
附录
有限域上二阶对合变换群的例子:
比如选择p=11,
a=2,b=3,我们可以得出t0=0,t1=1,t2=10,t3=3,t4=6,t5=3,t6=10,t7=1是个8阶群
a=2,b=4,我们可以得出t0=0,t1=1,t2=9,t3=3,t4=9,t5=1是个6阶群
可参考链接
另外链接中利用了这种方法用计算机算出如果一个圆的内接n(n≤9)边形外切于另外一个椭圆时,圆和椭圆的关系公式。
一般情况二阶对合变换群例子
我们可以选择目标曲线为圆x2+y2−4=0和第一类变换曲线为圆x2+y2−2x+167=0,这两个圆分别是一个三角形的外接圆和内切圆,所以这个第一类变换曲线的三次方就是恒等变换。对应特征方程为x3−64121x2+3233x−649,所以u0=649,u1=3233,u2=64121。
我们现在套用前面的结果来计算一下。由于我们知道第一类变换曲线自己对应h=0,代入方程(f2,f,1)⎣⎢⎡1000−2u1−4u00−4u0u12−4u0u2⎦⎥⎤⎝⎜⎛h2h1⎠⎟⎞=0,可以看出变化为f的一次方程,说明一个解是恒等变换,对应这个曲线变换的0次方,另外一个解为4u0u12−4u0u2=0,对应这个曲线变换的平方,是它自己的另外一个分支,而显然3次方又变回恒等变换,所以是个三次元。
另外我们查看椭圆曲线y2=−649(x3−64121x2+3233x−649),我们可以做变换y=409681Y,x=−649X得到曲线Y2=X3+9121X2+271408X+814096,于是在Pari/Gp中我们用命令
E=ellinit(0,121/9,0,1408/27,4096/81))
得到这个椭圆曲线群,而且前面的单位点对应X=0的情况就是[0,964]
于是我们可以用命令
gp > a=[0,64/9];
gp > b=elladd(E,a,a)
%10 = [0, -64/9]
gp > c=elladd(E,a,b)
[0]
同样可以得出是这个群里的三阶元。