离散数学P2 Induction
【P2】 -Mathematics for Computer Science_哔哩哔哩_bilibili
Proof by Contradiction
To prove P is true, We assume P is false,
and then you use that hypothesis to derive
a falsehood or contradiction.
Proof by contradiction(反证法)是一种在离散数学、逻辑和数学证明中常用的推理方法。它的核心思路是:假设命题为假,推导出矛盾,从而说明原命题为真。
1. 形式定义(定义式)
给定命题 PP,我们想证明 PP 成立。
Proof by contradiction 的步骤是:
-
假设 ¬P\neg P(也就是 PP 不成立)
-
从 ¬P\neg P 出发,结合已知事实,进行推理
-
推出一个逻辑矛盾(比如 Q∧¬QQ \land \neg Q,或违反定义、公理等)
-
因为假设 ¬P\neg P 导致矛盾,所以假设不成立
-
结论:PP 必须为真
An irrational number is a real number that cannot be expressed as a ratio of two integers, i.e., it cannot be written in the form ab\frac{a}{b} where aa, b∈Zb \in \mathbb{Z}, b≠0b \ne 0.
Equivalently, its decimal expansion is infinite and non-repeating.
A fraction in least terms (or lowest terms, or simplest form) is a fraction where the numerator and denominator have no common factors other than 1.
✅ 3. 举例说明
命题: 2\sqrt{2} 是无理数。
✅ Proof by contradiction:
-
假设反面:sqrt{2} 是有理数
-
则 sqrt{2} = \frac{a}{b},其中 a,b 是互质整数(分数最简)
-
两边平方:2=a^2/b^2
-
所以 a^2是偶数 ⇒ a 是偶数 ⇒ a=2k
-
代入得 ⇒ 也是偶数
-
所以 a, 都是偶数,矛盾(因为我们假设 a,b 互质)
因此,假设错误,结论:
sqrt{2} 是无理数
✅ 正命题 vs 逆命题 vs 逆否命题
给定一个命题:
-
原命题(implication):
P ⇒ Q (如果 P,则 Q) -
逆命题(converse):
Q ⇒ P (如果 Q,则 P)
⟶ 不等价,不能从原命题推出(除非双条件成立) -
否命题(inverse):
¬P ⇒ ¬Q (如果非 P,则非 Q)
⟶ 也不等价于原命题 -
逆否命题(contrapositive):
¬Q ⇒ ¬P (如果非 Q,则非 P)
⟶ ✅ 与原命题 等价
✅ 举个例子
命题:
P ⇒ Q
P: “你是狗”
Q: “你是动物”
-
原命题:如果你是狗 ⇒ 你是动物 ✅
-
逆命题:如果你是动物 ⇒ 你是狗 ❌(不一定成立)
-
否命题:如果你不是狗 ⇒ 你不是动物 ❌
-
逆否命题:如果你不是动物 ⇒ 你不是狗 ✅(等价于原命题)
✅ 结论
你提到的:
P⇒QP ⇒ Q 与 ¬Q⇒¬P\neg Q ⇒ \neg P 等价
✔ 这就是在说“一个命题与它的逆否命题等价”,这是逻辑推理中的基本原理之一,也是反证法的理论基础。
Induction axiom
let P(n) be a predicate, if P(0) is true and
for all natural numbers P(n)->P(n+1) is true
then for all P(n) is true
Mathematical induction(数学归纳法)是一种用于证明自然数范围内命题的方法。它的核心思想是:
如果你能证明一个命题对最小的数(通常是 0 或 1)成立,
并且还能证明:假设它对某个整数 nn 成立 ⇒ 它对 n+1n + 1 也成立,
那么这个命题就对所有 n 起始值 都成立。
用induction证明了1+2+...+n=(1+n)n/2
以及n^3-n是3的倍数
Base Case: P(b) is true
Inductive Step: for all n>=b, P(n)->P(n+1)
Conclude: for all n>=b, P(n) is true
归纳法证明n匹马都是一个颜色
这是一个非常经典的“伪命题归纳法”例子,用来说明归纳法在使用中必须格外小心:
命题: 对所有正整数 nn,任意 nn 匹马都具有相同的颜色。
这个命题是错误的,但如果你按照形式归纳法的模板操作,看起来好像可以“被证明”——这是一个常被用来讲解“归纳陷阱”的例子。
❌ 关键错误:从 k=1k = 1 到 k=2k = 2 的时候,两个集合没有交集
-
H1H_1:第一匹马
-
H2H_2:第二匹马
两匹马之间没有重合的马作为“桥梁”
所以在 k=2k = 2 的归纳步骤中:
-
{H1}\{H_1\}:颜色未知
-
{H2}\{H_2\}:颜色未知
你不能说它们颜色一样。
边长为 2n2^n 的正方形,中间固定缺一个小方格,其余用 L 形砖(即 2×2 少一个角)铺满。
这是经典的中心缺口 L 砖铺法(center-defect L-tromino tiling)问题。
n=2 边长为4,面积为16,应该是5*3+1,5个L形+1个空格
归纳法证明思路:
基本思想:将4×4棋盘分成四个2×2的子棋盘。由于缺失格子在右下角的2×2区域中,我们在中心位置放置一个L形三骨牌(粉色C),使得其他三个2×2区域各缺失一个格子。
递归处理:现在每个2×2区域都缺失一个格子,可以用一个L形三骨牌完全覆盖。这样总共用了5个L形三骨牌完成了整个4×4棋盘的覆盖。
一般化:这个方法可以推广到任意2ⁿ×2ⁿ大小的棋盘,无论缺失格子在哪个位置。
把中心缺口问题,转换为任意地方缺口,就变简单了
这个推广的意义在于证明了一个更强的结果:不管在2^n × 2^n棋盘的哪个位置去掉一个格子,剩余的部分都可以用L形三骨牌完全覆盖。这比原来只考虑特定位置(如角落)的情况更加一般和有力。
归纳证明的关键思想是:将大棋盘分成四个小棋盘,通过巧妙地放置一个L形三骨牌来统一处理四个子问题。
L型铺砖问题(L-Tromino Tiling Problem)
在一个 2n×2n2^n \times 2^n 的正方形中,任意去掉一个小格(缺口),用 L 形 tromino(2×2 正方形去掉一角)铺满剩余区域。
✅ 4. 归纳结构统一说明
任意缺口铺砖的归纳法:
-
Base case: 2×22 \times 2 的正方形,缺一格,铺一块 L 型砖 ✅
-
Inductive Hypothesis: 所有 2k×2k2^k \times 2^k 的棋盘,任意缺口都能铺
-
Inductive Step: 把 2k+1×2k+12^{k+1} \times 2^{k+1} 划分为四个 2k×2k2^k \times 2^k 子棋盘:
-
缺口落在某个子棋盘中
-
在中央交界处放一块 L 型砖,人为制造出其他三个子棋盘的缺口
-
所有子棋盘都满足归纳条件
-
✅ 典型问题设定(Beaver Flu Model)
在一个图中,每个节点是一个学生,每条边表示两人之间有接触。
初始时有一个学生感染了“Beaver Flu”,规则如下:
若某学生至少两个邻居感染了,他第二天也会感染。
每天按照这个规则更新一次。
**问题:**给定图结构和初始感染状态,是否最终所有人都会被感染?
(2^n)^2-1是3的倍数,即2^(2n)-1是3的倍数,相当于2^2n除以3余数是1
Base Case:n=1, 4-1=3
Inductive Step:Assume 2^(2n)-1是3的倍数为真,即2^2n除以3,余数是1
那么需要得到2^(2(n+1))-1也是3的倍数
2^(2(n+1))-1=2^(2n+2)=4倍的2^2n。因为2^2n除以3余数是1,那么4倍的2^2n除以3余数是4, 4再除以3,余数是1
所以n+1的时候,也成立