在一条圆锥上选六个点,连成六边形,三对相隔三条边的直线可能交得很远。Pascal定理说这三个交点仍落在同一条直线上。换成六条切线,Brianchon定理则得到三条对角线共点。射影坐标让有限交点与无穷远交点使用同一份计算。
形式陈述
六点与六线的合同
设K 为特征不为2的域,C 是一条非退化射影圆锥 理路 射影圆锥的有理点与参数化 Projective conic parametrization · Rational parametrization of a conic · 非退化射影圆锥 · 五点确定圆锥曲线 在特征不为二的域上,由一个已有点构造一般非退化圆锥的完整参数与逆,并从无三点共线的五个点恢复唯一方程。 。取六个互异 点A , B , C 0 , D , E , F ∈ C ( K ) ;这里C 0 是第三个点,避免与圆锥C 混用。记两点连线为A B ,定义
(1) P = A B ∩ D E , Q = B C 0 ∩ E F , R = C 0 D ∩ F A . Pascal定理: P , Q , R 是三个互异的共线点。它们所在的线称为这份有序六边形的Pascal线。六个点不要求按实曲线上的顺序排列,K 也不必是实数域。
反过来,若六个点互异且任意三个不共线,那么式(1)的三点共线,当且仅当六个点位于同一条非退化圆锥上。逆命题的“无三点共线”是另一份明确输入条件。
Brianchon定理: 给C 的六条互异K 切线ℓ 1 , … , ℓ 6 ,令v i = ℓ i ∩ ℓ i + 1 ,下标按模6。则三条直线
(2) v 1 v 4 , v 2 v 5 , v 3 v 6 互异且共点。这里的“外切六边形”由六条有序切线定义,不额外要求存在一个凸的实平面六边形。
计算时不用先除以最后坐标
对非零三维列向量,定义
(3) x × y = ( x 2 y 3 − x 3 y 2 x 3 y 1 − x 1 y 3 x 1 y 2 − x 2 y 1 ) . 不同点x , y 的连线系数是x × y ;不同线ℓ , m 的交点坐标是ℓ × m 。非零性等价于输入比例类不同。三个点共线可用三阶行列式 理路 行列式 Determinant 交换含幺环上方阵的交替多线性标量不变量。 为零核验,也可给非零线系数L 并验证L T P = L T Q = L T R = 0 。
三个线系数的行列式为零则认证共点,但完整输出还应给非零公共点及三份关联。计算中每次叉积都要检查非零,不能把零向量冒充“无穷远点”;合法无穷远点只是在指定仿射图下最后坐标为零。
直觉
先把三点放在容易计算的位置
六个圆锥点看似给了许多坐标,其实每个点都只有一个射影参数。已有参数化把圆锥变成标准模型X Z = Y 2 ,再使用三有序点的分式线性标定 理路 Möbius变换与圆域标定 Möbius transformation · Fractional linear transformation · Linear fractional transformation 在扩充复平面上完整定义分式线性变换,核验极点与逆、矩阵复合方向、广义圆保持和三点唯一标定。 ,可把前三个参数化为∞ , 0 , 1 。
这项标定只需线性代数,在一般K 上也成立:前两个不同参数代表向量构成二维基,第三个的两个基系数都非零,分别缩放基向量后即可令它代表( 1 , 1 ) 。因此这里没有借用实数的连续性或复数的解析性质。
还须确认参数变换来自整个平面的可逆变换。若
( s ′ t ′ ) = ( a b c d ) ( s t ) , a d − b c ≠ 0 , 则三个二次单项式按矩阵
(4) ( ( s ′ ) 2 s ′ t ′ ( t ′ ) 2 ) = ( a 2 2 a b b 2 a c a d + b c b d c 2 2 c d d 2 ) ( s 2 s t t 2 ) 转换。它的行列式是( a d − b c ) 3 ≠ 0 ,也可把二维逆矩阵作同样提升来核验可逆。故三点归一化保持整个平面的关联关系,而不只是重新命名圆锥上的参数。
Pascal的逐项证明
在标准模型中记ν ( t ) = [ 1 : t : t 2 ] 、ν ( ∞ ) = [ 0 : 0 : 1 ] 。经过前述归一化,六点依次为
ν ( ∞ ) , ν ( 0 ) , ν ( 1 ) , ν ( a ) , ν ( b ) , ν ( c ) , 其中a , b , c 互异,且都不为0或1。两有限参数t , u 的弦系数可取( t u , − t − u , 1 ) ,而ν ( ∞ ) ν ( t ) 的系数可取( t , − 1 , 0 ) 。代入式(1),三个交点可取
(5) P = ( 1 , 0 , − a b ) , Q = ( b + c − 1 , b c , b c ) , R = ( 1 , c , c ( 1 + a ) − a ) . 令
(6) L = ( a b c , − a ( b + c − 1 ) − c , c ) . 由于c ≠ 0 ,L 不是零向量。直接相乘,L T P = a b c − c a b = 0 ,并有
L T Q = a b c ( b + c − 1 ) − a b c ( b + c − 1 ) − b c 2 + b c 2 = 0 , L T R = a b c − a c ( b + c − 1 ) − c 2 + c 2 ( 1 + a ) − a c = 0. 所以三点共线。
非退化圆锥不含直线,一条线与它的限制二次式至多有两个不同射影根,因此任意三个圆锥点不共线。于是式(1)中的两条线总不同,交点均合法。若P = Q ,该点同时在A B 与B C 0 上,只能是B ,却又在D E 上,产生三个不同圆锥点共线,矛盾。其余两对同理。因此P , Q , R 互异,Pascal线也唯一。
对偶如何给出Brianchon
由对偶圆锥 理路 圆锥的极点极线与对偶 Conic polarity and duality · Pole and polar of a conic · 圆锥极性 · 对偶圆锥 用非退化圆锥的矩阵在点和线间可逆转换,证明切线与对偶方程,并通过实切线数量和割线调和对核验域与坐标条件。 ,六条切线的系数点[ ℓ i ] 位于非退化C ∗ ,且互异。在对偶平面,对它们应用Pascal。对偶中的连线[ ℓ i ] [ ℓ i + 1 ] ,对应原平面的交点v i ;两条这样的对偶线的交点,对应原平面连接两个v 的直线。
因此三个对偶Pascal点,正好对应式(2)的三条原平面直线。对偶点共线等价于原直线共点。前面的互异结论也保证这三条直线不同,其公共点唯一。这一步既说明了对象怎样转换,也解释了为何所求的是对顶点连线,而不是任意三条对角线。
例子与边界
一组全有理的六点证书
取参数( ∞ , 0 , 1 , 2 , 3 , − 1 ) 。式(5)给
P = [ 1 : 0 : − 6 ] , Q = [ 1 : − 3 : − 3 ] , R = [ 1 : − 1 : − 5 ] . Pascal线可取6 X + Y + Z = 0 ,三份内积分别为6 − 6 、6 − 3 − 3 、6 − 1 − 5 ,全为零。这份结果由精确坐标决定,不依赖图上是否“看起来共线”。
若再作射影变换
N = ( 1 1 0 0 1 1 6 0 1 ) , det N = 7 , 在K = Q 或R 上仍可使用同一定理。第一交点变为N P = [ 1 : − 6 : 0 ] ,在末坐标非零的仿射图中落到无穷远。它仍是一个合法的射影点;“平行对边没有交点”的障碍来自只用仿射图。若在特征7中使用这个特定N ,可逆性已经失败,必须换矩阵。
重复点和退化输入必须另列
若把A 与B 设成同一点,式(3)给A × B = 0 ,并未自动给出该点切线。确有把相邻顶点合并为切线的退化版本,但需要另外指定极限或重数合同,不属于本页六个互异点的陈述。
两条线组成的退化圆锥也可能满足其他六点关联,例如Pappus情形;这不能证明非退化假设无用。只要某条“边”与其对边重合,交点就不再唯一,而本页的叉积证书会正确地拒绝它。
有限域中所有公式仍是域运算,但先要有六个互异圆锥点。不存在足够点时,不应以重复参数凑出一个六边形。实数图中的绕行顺序、内部外部和凸性都不是一般域陈述的前提。
推论与应用
六点是否落在同一圆锥上
现在取一般六点,互异且任意三个不共线。前五点先由五点合同确定唯一非退化圆锥。将它化成标准模型并归一化前三点后,前五点参数为∞ , 0 , 1 , a , b ,而第六点暂写为F = [ u : v : w ] ,不先假定u w = v 2 。
仍按式(1)求交点,可选
P = ( 1 , 0 , − a b ) , Q = ( b ( b − 1 ) u + v − w , b ( b v − w ) , b ( b v − w ) ) , R = ( u , v , ( a + 1 ) v − a u ) . 无三点共线保证这些向量非零且代表三个不同的交点。按列组成矩阵,展开得
(7) det ( P Q R ) = − a b ( b − 1 ) ( u w − v 2 ) . a , b , b − 1 均非零,所以三点共线当且仅当u w − v 2 = 0 ,即第六点也在这条圆锥上。这证明逆命题。它不是用五点恢复后“看第六点接近曲线”,而是一份确切的零值判据。
提交什么才算完整关联证书
给六点时,先逐对检验不同,核同一个可逆对称H 上的六份二次方程,再输出六条边、三对交点及非零L 。给六条切线时,先核ℓ i T H − 1 ℓ i = 0 和互异性,再输出六个相邻交点、三条对角线及非零公共点。每份关联都可用一次零内积复算。
这里只涉及固定数量的三维矩阵和向量,所以证书产生及核验使用固定次数的域运算;这没有给有理数分子分母的位长度一个与输入无关的上界。对浮点测量数据,近零行列式涉及容差与条件数,是另一份数值建模问题,不能把本页精确等式直接当成统计拟合标准。
完整迁移见射影圆锥终点任务 :从五点恢复方程,验证点线逆转置,再把同一组点的Pascal线与六条切线的Brianchon点一起送回原坐标。
下图使用终点换坐标后的同一组六点。前三格的蓝线对应标题中的第一条边,绿线对应第二条边,各自只核一对边的交点;最后一格只核三个交点共线,避免六条延长线堆叠。
图片加载失败 分面展示Pascal的三份交点证书
参考资料