Erdős-Szekeres定理
概述
Erdős-Szekeres定理(Erdős-Szekeres Theorem):任意由 个不同实数组成的序列中,必存在长度为 的单调递增子序列或单调递减子序列。
定理陈述
形式化陈述
定理(Erdős & Szekeres, 1935):设 是由 个不同实数组成的序列,则该序列中必存在长度至少为 的严格递增子序列或严格递减子序列。
一般形式
更一般地,对任意正整数 ,由 个不同实数组成的序列中,必存在长度为 的递增子序列或长度为 的递减子序列。
取 即得到上述经典形式。
证明概要
证明思路
证明采用Seidenberg鸽巢论证(1959),优雅而简洁:
第一步:定义配对
对序列中每个位置 (),定义有序对: 其中:
- = 以 为结尾的最长递增子序列的长度
- = 以 为结尾的最长递减子序列的长度
第二步:证明配对互不相同
关键引理:若 且 ,则 。
证明:设以 结尾的最长递减子序列为 。若 ,则在以 结尾的最长递减子序列中, 可以接在 前面(因为 且 ),从而得到一条以 结尾的、长度至少为 的递减子序列,与 的定义矛盾。
类似地,若 且 ,则 (即 值减小时 值增大)。
因此,当 时,,即所有 个配对互不相同。
第三步:应用鸽巢原理
假设结论不成立,即不存在长度为 的递增子序列,也不存在长度为 的递减子序列。
那么对每个 , 且 。
因此每个配对 都取自集合 ,该集合共有 个元素。
但我们有 个互不相同的配对,由鸽巢原理,至少有两个配对相同,矛盾。
参考文献
- Erdős, P. & Szekeres, G. (1935). A combinatorial problem in geometry. Compositio Math., 2, 463-470.
- Seidenberg, A. (1959). A simple proof of a theorem of Erdős and Szekeres. J. London Math. Soc., 34, 352.
- 证明详解: LibreTexts - The Pigeon Hole Principle
- Dilworth定理证明: Erdős-Szekeres Theorem - en-academic
关键推论
- 推论1:在任意 人的队列中,总能找到 个人按身高递增或递减排列
- 推论2:该定理与Dilworth定理(偏序集的链分解)密切相关——序列上的”小于”关系构成偏序,递增子序列对应链,递减子序列对应反链
- 推论3: 是紧的(tight),即存在长度为 的序列既不含长度为 的递增子序列,也不含长度为 的递减子序列(例如将 按特定方式排列)
应用场景
- 排序算法分析:该定理给出了比较排序的下界直觉——任何排序算法在最坏情况下需要 次比较
- 计算几何:在点集的凸包问题中,Erdős-Szekeres定理保证足够大的点集中存在凸 边形
- Ramsey理论:该定理是Ramsey理论的一个经典实例,展示了”足够大的结构中必然出现特定模式”的思想
- 偏序集理论:通过Dilworth定理的桥梁,该定理在偏序集的宽度和链分解中有重要应用
- 数据压缩:在序列编码和信息论中,单调子序列的存在性影响最优编码策略