图4
这是我们下面需要用到的引理,我们以列表的形式单独列出来。
亏格 | 曲面 | 欧拉特征 |
---|---|---|
0 | 球 | 2 |
1 | 圆环 | 0 |
接下来我会提到两种证明方法。
法一
我们前文关注到格点多边形的面积是0.5的整数倍,这确实是一个很本质的洞见,这是因为——
引理1 如果一个格点三角形内部和边上(除顶点外)都没有格点,则它的面积为.
这个结论可以通过如下结论得到:
引理2 设二阶整数矩阵
若逆矩阵也是整数矩阵,则其行列式必定取值为
所谓行列式,对于二阶矩阵而言形式非常简单:
图5:线性变换将平面上和两个基向量映射为红色、绿色的基向量
证明:我们定义一个线性变换如上图,线性变换将正方形网格变成平行四边形网格,我们假设平行四边形四个顶点也落在整数格点上。显然,这个线性变换存在逆映射,由逆矩阵公式:
而且依条件逆矩阵也是整数矩阵,于是分母必须为:
引理2证毕。
而行列式的几何意义恰恰就是平行四边形的有向面积,即三角形有向面积的2倍。于是,引理1中的三角形面积为
图6:行列式与平行四边形面积
这意味着我们总可以将格点多边形拆分成面积为的小三角形,然后化为平面图,利用平面图的欧拉公式计算即可。我们考虑除去多边形外面的无界区域,设.
顶点数 | 棱数 | 面数 |
---|---|---|
n b | (3F' b)/2 | 2S |
这个三角剖分的顶点数是;面数也就是三角形数是;全体棱分两类:一部分是多边形边界上的,一共有条棱(封闭的折线边界上的个顶点就把边界分割成条棱);一部分是多边形内部的,每条棱都是两个面的交线,每个面有三条棱。计算棱的总数有等式,再加上欧拉公式,就解得
法二
图7体现了第二种方法的证明思路:把格点图形包起来,变成一个圆环面,然后格点就是天然的剖分,借用闭曲面的欧拉公式。
图7:将平行四边形粘接为圆环面
事实上,我们只需证明格点三角形符合公式即可。格点多边形总可以拆为若干格点三角形。多边形两边依照格点重合,则每个边界点重合为个内点,这依然符合公式。
对任意格点三角形,考虑与之翻转对称的另一格点三角形,将两者沿任意一条边粘接,形成平行四边形的面积是原格点三角形的2倍。对该平行四边形两条对边同向粘接,其结果同胚于一圆环面。此时圆环面上的格点诱导出一个正方形网格剖分:原格点是剖分的顶点,临近格点间的连线是棱,正方形格子是面。
设格点三角形的内点个数为,边界点个数. 以下是两三角形粘贴为平行四边形,再粘贴为圆环面的过程:
2个三角形 | 平行四边形 | 圆环面 | |
---|---|---|---|
内点 | 2n | 2n x | 2n b-2 |
角点 | 6 | 4 | 0 |
非角点边界点 | 2b-6 | 2b-6-2x | 0 |
:原来个内点始终是内点。设三角形重合边其上有个非角点边界点,重合后,个角点化为平行四边形个角点,非角点边界点损失个,合成的个点转化为圆环面的内点。
:平行四边形所有的边界点化为圆环面的内点——个角点化为个内点,非角点边界点自我重合减半,故而圆环面的顶点个数:
棱数为,因为每条棱对应两个顶点。格子的个数是面数,恰恰是所求的面积的倍,即. 由环面的欧拉公式(亏格)
将上述数据代入计算得:
得证。
尾声遗憾的是,皮克定理不能直接推广到高维的情况,也就是说:我们不能通过高维格点多面体的内点、边界点而计算其体积。如下图,位于单位正方体内的两个没有内点的四面体,