切换深浅主题
第 4 章:只需简单多边形的分割定理
先解释本章的四个工作用语。
平面集合是“开”的,指每一点周围都能放一个足够小的圆盘,整个圆盘仍在该集合中。例如去掉闭折线 后的集合
是开集:点不在有限条闭线段上,与它们的最小距离为正。
“有限折线路径”是把有限个点依次用线段连接成的路线。“连续路径”更一般,可写作 ,其中
,两个坐标都连续,且每一时刻都在指定集合中。它不是图论中必须沿原边走的路径。
在一个开集里,把能够沿集合内有限折线互相走通的点归为一类,本篇把每一类称为一个区域。它就是标准的“连通分支”:固定一点,能从它走到的点周围的小圆盘也都能走到,因此这一类是开集;其余各类也是开集。若一个标准连通区域含有两类,就被两个非空的开部分分开,违背连通性。反过来,沿折线行走的连续过程不能从一边跳到互相分开的另一边。这也说明,对这里的开集,“连通”和“道路连通”一致;不把这个结论套给任意集合。
“足够小”也会给出依据:有限个互不相交的闭线段(或线段中截取的闭小段)之间,距离能取到一个正的最小值。取比它更小的圆盘半径或带宽,就不会误碰其他线段。此处引用的是初等实分析事实“有界闭集上的连续函数能取到最小值”;本篇不另行建立实数的连续性理论,后面避免只用“紧集”一词替代这个具体理由。
有限位置条件为什么能满足。 若只需从 向边的开段上一点
画候选路径,可以选中间点
,用
两段线。避开经过
或
与各原顶点的有限条直线,并避开会让新线段与原边重合的有限条直线,就不会穿过原顶点或沿原边走。有限条直线不可能盖住一个圆周:每条最多去掉圆周上两个点,总还有可选的
。每段与每条原边最多相交一次,所以交点有限,真正相交时两直线不平行,正是横交。
若要求候选路径已经在某个原面 内,先利用道路连通性取得有限折线。它全程避开原图,其有限条闭线段与原图的距离有正的最小值;必要时先在原线段中插入额外折点,再把折点移动到足够小的邻域中,并避开同样的有限特殊直线,路径仍留在
中,却排除了碰顶点、沿边重合等特殊情况。这是第 7、8 章用“稍作扰动”的具体依据,而不是任意修改路线。
4.1 先定义闭折线、补集与边的开段
用 表示一条简单闭折线:它由有限条线段首尾相接,除了相邻边的共同端点,没有其他交点。
只包含这些线段上的点,不包含尚未定义的“多边形内部区域”。共线的多余中间顶点可先删去。
本文所说的补集,明确指
也就是平面上所有不在原闭折线上的点。“区域”在这里指 的一个连通分支;这不是预先把平面划成“内部”和“外部”。
若一条边的端点为 ,“边的开段”指去掉两个端点后剩下的点:
下文用“边的开段”替代容易混淆的“边内部”。它与“多边形内部”不是同一个概念。
要证明的多边形分割定理: 恰好有两个连通分支,一个有界,一个无界,且
是二者共同的边界。我们先证“至多两个”,再证“至少两个”;只讨论有限线段,不用一般若尔当曲线定理。
4.2 先画窄通道,再在其中连接辅助路径
先分清三种对象。
| 对象 | 是线还是区域? | 在证明中的作用 |
|---|---|---|
| 原边、原闭折线 | 原图中的线段、线段的并集 | 不能碰到的障碍 |
| 窄通道 | 边旁边的一小片二维带状区域,不包含原边 | 为辅助路径的连接提供空间 |
| 辅助路径 | 另画的连续曲线,不是多边形的边 | 将同一侧附近的点连接起来 |
这里“路径”是连续行走的轨迹;全程避开 ,可写为连续映射
。
是下面具体构造出的两条辅助闭路径,不是两个已经确定的补集区域。
第一步:只看一条边的中段。 沿闭折线选定一个行进方向。在这条边旁边选一个足够薄的矩形,去掉原边后,矩形分成左手旁和右手旁两个半矩形。每个半矩形就是此处的窄通道;在其中各画一条与原边平行的短线。
“左”“右”随行进方向确定:转弯后也要跟着转,不是固定指纸面左右。图 10 的上、下关系只针对图中向右的箭头。
第二步:放大一个顶点。 选一个以该顶点为圆心、足够小的圆盘,使它只遇到与此顶点关联的两条边。这两条径向线段把去掉原边后的圆盘分成两个开扇形。前一条边左手旁的短线和后一条边左手旁的短线,进入同一个开扇形;在其中用小圆弧和短线连接。右手旁的两条短线,在另一个开扇形中同样连接。
连接避开圆心和两条原边。把这些连接周围选作一片很薄的带状区域,就是顶点附近的窄通道;圆盘本身不等于通道,也不能整盘当作可走区域,因为其中仍有原边和顶点。
凹角也按同样规则连接。 两个扇形不一定一样大,也不一定都是凸扇形;它们各自都可以用路径连通其中的点。连接只依据行进方向的左手、右手,不需要先决定多边形的哪一部分叫“内部”。
第三步:沿全部顶点做完连接。 每一条边旁的左手短线,经两端的局部连接接到相邻短线;依次走完整圈并回到起点,就形成一条辅助闭路径 。右手旁同理得到
。因此
自身连通,
自身连通,而且都包含在
中。
为什么能选得足够小、足够窄?顶点和边只有有限多个,可以先选两两不交、避开其他边的顶点圆盘;圆盘外互不相交的紧线段之间有正距离,再把中段矩形选得比这些距离更窄。于是各处连接不会误碰非关联边,左右辅助路径也可保持互不相交。
到这里证明的是:可以在
中画出
,且二者各自连通。还没有证明它们位于不同的补集分支。两条辅助曲线互不相交,并不能单独排除它们经过更远的地方互通。
4.3 为什么补集 U 至多有两个连通分支
目标: 任取 ,证明它能在
内连接到
或
。这里的“连接”全程不能碰到原闭折线
,并不是沿原多边形的边走。
先在任意一条边的开段上选一点 ,从
向
画一条有限折线路径。可以把折点稍作扰动,使它避开所有原顶点,与原边不重合,也只作有限次横交。此时不要求整条候选路径都在
中;它的用途只是找到第一次碰到
的位置。
因为终点 ,第一次相遇必存在,记为
。
位于某条边的开段,而不是原顶点。从
出发到碰到
之前,这段候选路径都在
中。
在 之前足够近的位置取一点
,实际行走只走到
,不走到
。此时
已经靠近原边的某一侧。在同侧的局部半矩形,或顶点圆盘对应的开扇形中,可以把
连接到第 4.2 节构造的
或
;这个局部连接同样不碰
。
拼接“从 到
”与“从
接到辅助路径”这两段路,就得到一条完全位于
中的路径。因此每个
都与
或
的点处于同一个连通分支。
自身连通,所以整条
只属于一个分支;
也只属于一个分支。
的每个分支都含有二者之一,故
至多有两个连通分支。此处仍允许两条辅助路径属于同一个分支;下一节才排除这一可能。
“每个点都能接到 或
”补上了全局覆盖这一步;仅说“原边附近有两侧”,不能排除远处还有第三个分支。
4.4 整条射线的总交点数为何在局部保持奇偶性
先把坐标轴转到一个合适方向,使所有边都不水平,并且任意两个不同顶点不在同一条水平线上。为什么能选到?边与顶点对只有有限多个,只需避开由它们决定的有限个方向,仍有无穷多个方向可选。以后所有射线统一朝右,不能在移动起点时任意转动射线。
对 ,向右的射线是
。若它不经过顶点,令
为它与原闭折线
的全部交点数。每条非水平边至多贡献一个交点,而边只有有限条,所以
是有限整数;定义奇偶标签
为它除以
的余数,即
或
。
“一般位置”在这里仅指起点不在 上,且该水平射线不经过顶点。不要把“附近最多两个交点”误读为整条射线最多两个交点。
第一步:普通交点在小范围内不会消失。 对一条非水平边,其与水平直线的交点坐标随高度连续变化。如果交点在边的开段内,而且位于起点右方,两项都是严格条件;起点移动足够小,这些条件仍成立。若某条边原来不与射线相交,情况改变时必有一项严格条件失效。
因此交点要出现或消失,只可能是:交点走到边的端点,或走到射线起点。前者是射线扫过顶点;后者就是起点碰到 ,而我们的移动始终在
内,禁止后一事件。因为边数有限,可以把邻域选得足够小,同时保护所有不涉及顶点事件的普通交点。
第二步:穷尽分析一个顶点附近的变化。 设射线扫过前方顶点 。顶点有且只有两条关联边;两条边都不水平,所以从
离开后,每条边只能伸向水平线上方或下方。
| 两条关联边相对于 V 的水平线 | 射线从上方移到下方时,局部交点数 |
|---|---|
| 两条都在上方 | 从 2 变为 0 |
| 两条都在下方 | 从 0 变为 2 |
| 一条在上方、一条在下方 | 从 1 变为 1,交点换到另一条边 |
这不是仅凭几幅图猜规律:两条边各有“向上、向下”两种可能,表中已覆盖全部组合。若顶点在射线起点左方,邻近移动中它仍在后方,不贡献交点。
第三步:把局部变化加回整条射线。 把远离该顶点的普通交点数记为 。在足够小的邻域中,这些交点保持不变。总交点数可能为
例如 ,前者就是
,仍都是奇数。这里
不必很小;一条射线完全可能穿过许多条边。由于开头还避开了顶点等高的方向,小范围内至多遇到一个顶点事件;若不加该方向限制,也只需将同时发生的多个偶数变化相加,结果仍为偶数。
第四步:给恰好射过顶点的起点定义标签。 不把顶点粗略算作一次普通交点。分别把射线向上、向下稍微平移,取邻近一般位置的奇偶标签;表中说明两边相同,于是用这个共同值定义原特殊位置的 。顶点在后方的情形没有特殊交点,直接取邻近值即可。
至此证明了“局部不变”:对每个 ,存在一个足够小的邻域,其中所有点的标签都等于
。这个邻域完全避开
。
第五步:局部不变为什么推出整条路径上不变。 设 是任意连续路径。每个时刻附近,起点只在上述小邻域中移动,所以
在一段时间内不变。若它能在整段时间从
变成
,就把区间
分成“标签为 0”和“标签为 1”两个非空、各自相对开的部分。这与实数区间的连通性矛盾;该基本性质等价于常见的中间值思想:连续过程不能在两个互相分离的状态间无跳变地切换。这里的标签函数因局部不变而连续,并不是预先假定它连续。
第六步:确实找到两个标签不同的点。 取一条边上一个不与任何顶点等高的点 ,在它左、右取足够近的
,使水平小线段只穿过这一条边。较左起点的右射线多经过该边一次;较右起点的射线在穿过该边之后才开始。它们在远处的交点完全相同,故总交点数相差一,标签不同。
它们不可能在 内沿路径相连,否则违背第五步。结合第 4.3 节“至多两个分支”,得到恰好两个。
最后补上有界性和共同边界。 装在一个大圆盘中,圆盘外所有点可以互通,所以只能有一个无界分支,而且它确实存在;另一分支有界。任意边的开段附近,两侧标签相反;顶点由关联边的点逼近,因此
的每一点都邻近两个分支。反过来,不在
上的点周围有完全避开
的小圆盘,全部属于同一分支,不会成为两个分支的边界。因此二者共同的边界恰为
。
本节分析的是局部变化,标签却由整条射线的总交点数定义。有限性保护其他交点;连续路径把局部结论传到全程。这三个层次缺一不可。