http://www.matrix67.com/blog/archives/3718 最近看到几个有趣的数学谬证,想写下来与大家分享;结果写到这个又想到那个,一写就写个没完,于是想到干脆做一篇谬证大全,收集各种荒谬的证明。
1=2?史上最经典的“证明”
设 a = b ,则 a·b = a^2 ,等号两边同时减去 b^2 就有 a·b - b^2 = a^2 - b^2 。注意,这个等式的左边可以提出一个 b ,右边是一个平方差,于是有 b·(a - b) = (a + b)(a - b) 。约掉 (a - b) 有 b = a + b 。然而 a = b ,因此 b = b + b ,也即 b = 2b 。约掉 b ,得 1 = 2 。
这可能是有史以来最经典的谬证了。 Ted Chiang 在他的短篇科幻小说 Division by Zero 中写到:
这个证明的问题所在想必大家都已经很清楚了:等号两边是不能同时除以 a - b 的,因为我们假设了 a = b ,也就是说 a - b 是等于 0 的。
无穷级数的力量 (1)
小学时,这个问题困扰了我很久:下面这个式子等于多少?
1 + (-1) + 1 + (-1) + 1 + (-1) + …
一方面,
1 + (-1) + 1 + (-1) + 1 + (-1) + …
= [1 + (-1)] + [1 + (-1)] + [1 + (-1)] + …
= 0 + 0 + 0 + …
= 0
另一方面,
1 + (-1) + 1 + (-1) + 1 + (-1) + …
= 1 + [(-1) + 1] + [(-1) + 1] + [(-1) + …
= 1 + 0 + 0 + 0 + …
= 1
这岂不是说明 0 = 1 吗?
后来我又知道了,这个式子还可以等于 1/2 。不妨设 S = 1 + (-1) + 1 + (-1) + … , 于是有 S = 1 - S ,解得 S = 1/2 。
学习了微积分之后,我终于明白了,这个无穷级数是发散的,它没有一个所谓的“和”。无穷个数相加的结果是多少,这个是需要定义的。
无穷级数的力量 (2)
同样的戏法可以变出更多不可思议的东西。例如,令
x = 1 + 2 + 4 + 8 + 16 + …
则有
2x = 2 + 4 + 8 + 16 + …
于是
2x - x = x = (2 + 4 + 8 + 16 + …) - (1 + 2 + 4 + 8 + 16 + …) = -1
也就是说
1 + 2 + 4 + 8 + 16 + … = -1
平方根的阴谋 (1)
定理:所有数都相等。
证明:取任意两个数 a 和 b ,令 t = a + b 。于是,
a + b = t
(a + b)(a - b) = t(a - b)
a^2 - b^2 = t·a - t·b
a^2 - t·a = b^2 - t·b
a^2 - t·a + (t^2)/4 = b^2 - t·b + (t^2)/4
(a - t/2)^2 = (b - t/2)^2
a - t/2 = b - t/2
a = b
怎么回事儿?
问题出在倒数第二行。
永远记住, x^2 = y^2 并不能推出 x = y ,只能推出 x = ±y 。
平方根的阴谋 (2)
1 = √1 = √(-1)(-1) = √-1·√-1 = -1
嗯?
只有 x 、 y 都是正数时, √x·y = √x·√y 才是成立的。
-1 的平方根有两个, i 和 -i 。 √(-1)(-1) 展开后应该写作 i·(-i) ,它正好等于 1 。
复数才是王道
考虑方程
x^2 + x + 1 = 0
移项有
x^2 = - x - 1
等式两边同时除以 x ,有
x = - 1 - 1/x
把上式代入原式中,有
x^2 + (-1 - 1/x) + 1 = 0
即
x^2 - 1/x = 0
即
x^3 = 1
也就是说 x = 1。
把 x = 1 代回原式,得到 1^2 + 1 + 1 = 0 。也就是说, 3 = 0 ,嘿嘿!
其实, x = 1 并不是方程 x^2 + x + 1 = 0 的解。在实数范围内,方程 x^2 + x + 1 = 0 是没有解的,但在复数范围内有两个解。
另一方面, x = 1 只是 x^3 = 1 的其中一个解。 x^3 = 1 其实一共有三个解,只不过另外两个解是复数范围内的。考虑方程 x^3 - 1 = (x - 1)(x^2 + x + 1) = 0 ,容易看出 x^3 = 1 的两个复数解正好就是 x^2 + x + 1 的两个解。因此, x^2 + x + 1 = 0 与 x^3 = 1 同时成立并无矛盾。
注意,一旦引入复数后,这个谬论才有了一个完整而漂亮的解释。或许这也说明了引入复数概念的必要性吧。
颇具喜剧色彩的错误
众所周知,
1 + 2 + 3 + … + n = n(n+1) / 2
让我们用 n - 1 去替换 n ,可得
1 + 2 + 3 + … + (n-1) = (n-1)n / 2
等式两边同时加 1 ,得:
1 + 2 + 3 + … + n = (n-1)n / 2 + 1
也就是
n(n+1) / 2 = (n-1)n / 2 + 1
展开后有
n^2 / 2 + n / 2 = n^2 / 2 - n / 2 + 1
可以看到 n = 1 是这个方程的唯一解。
也就是说⋯⋯ 1 + 2 + 3 + … + n = n(n+1) / 2 仅在 n = 1 时才成立!
这个推理过程中出现了一个非常隐蔽而搞笑的错误。等式两边同时加 1 后,等式左边得到的应该是
1 + 2 + 3 + … + (n-2) + (n-1) + 1
1 块钱等于 1 分钱?
我要用数学的力量掏空你的钱包!请看:
1 元 = 100 分 = (10 分)^2 = (0.1 元)^2 = 0.01 元 = 1 分
用这个来骗小孩子们简直是屡试不爽,因为小学(甚至中学)教育忽视了一个很重要的思想:单位也是要参与运算的。事实上, “100 分 = (10 分)^2” 是不成立的, “10 分” 的平方应该是 “100 平方分” ,正如 “10 米” 的平方是 “100 平方米” 一样。
数学归纳法的杯具 (1)
下面这个“证明”是由数学家 George Pólya 给出的:任意给定 n 匹马,可以证明这 n 匹马的颜色都相同。
对 n 施归纳:首先,当 n = 1 时命题显然成立。若命题对 n = k 成立,则考虑 n = k + 1 的情形:由于 {#1, #2, …, #k} 这 k 匹马的颜色相同, {#2, #3, …, #k+1 } 这 k 匹马也相同,而这两组马是有重叠的,可知这 k+1 匹马的颜色也都相同了。
这个证明错在,从 n = 1 推不出 n = 2 ,虽然当 n 更大的时候,这个归纳是正确的。这是数学归纳法出错的一个比较奇特的例子:基础情形和归纳推理都没啥问题,偏偏卡在归纳过程中的某一步上。
数学归纳法的杯具 (2)
下面,我来给大家证明,所有正整数都相等。
为了证明这一点,只需要说明对于任意两个正整数 a 、 b ,都有 a = b 。
为了证明这一点,只需要说明对于所有正整数 n ,如果 max(a, b) = n ,那么 a = b 。
我们对 n 施归纳。当 n = 1 时,由于 a 、 b 都是正整数,因此 a 、 b 必须都等于 1 ,所以说 a = b 。若当 n = k 时命题也成立,现在假设 max(a, b) = k + 1 。则 max(a - 1, b - 1) = k ,由归纳假设知 a - 1 = b - 1 ,即 a = b 。
这个问题出在, a - 1 或者 b - 1 有可能不是正整数了,因此不能套用归纳假设。
所有三角形都是等腰三角形
别以为谬证都是隐藏在数字和字母之中的。下面就是一个经典的几何谬论。
画一个任意三角形 ABC 。下面我将证明, AB = AC ,从而说明所有三角形都是等腰三角形。
令 BC 的中垂线与 ∠A 的角平分线交于点 P 。过 P 作 AB 、 AC 的垂线,垂足分别是 E 、 F 。由于 AP 是角平分线,因此 P 到两边的距离相等,即 PE = PF 。于是,由 AAS 可知 △APE ≌ △APF 。由于 DP 是中垂线,因此 P 到 B 、 C 的距离相等,由 SSS 可知 △BPD ≌ △CPD 。另外,由于 PE = PF , PB = PC ,且 ∠BEP = ∠CFP = 90° ,由 HL 可知 △BEP ≌ △CFP 。现在,由第一对全等三角形知 AE = AF ,由最后一对全等三角形知 BE = CF ,因此 AE + BE = AF + CF ,即 AB = AC 。
这个证明过程其实字字据理,并无破绽。证明的问题出在一个你完全没有意识到的地方——这个图形就是错的!事实上, BC 的中垂线与 ∠A 的角平分线不可能交于三角形的内部。我们可以证明, P 点总是落在 △ABC 的外接圆上。如图, P 是 BC 的中垂线与外接圆的交点,显然 P 就是弧 BC 的中点,即弧 BP = 弧 PC 。因此, ∠BAP = ∠CAP ,换句话说 P 恰好就在 ∠A 的角平分线上。
P 在 △ABC 外的话,会对我们的证明产生什么影响呢?你会发现,垂足的位置发生了本质上的变化—— F 跑到 AC 外面去了!也就是说,结论 AE + BE = AF + CF 并不错,只是 AF + CF 并不等于 AC 罢了。
一个可怕的逻辑错误
下面这个勾股定理的“证明”曾经发表在 1896 年的 The American Mathematical Monthly 杂志上:
假设勾股定理是正确的,于是我们可以得到
AB^2 = AC^2 + BC^2
BC^2 = CD^2 + BD^2
AC^2 = AD^2 + CD^2
把后两式代入第一个式子,有
AB^2 = AD^2 + 2·CD^2 + BD^2
但 CD^2 = AD·BD ,因此
AB^2 = AD^2 + 2·AD·BD + BD^2
即
AB^2 = (AD + BD)^2
即
AB = AD + BD
而这显然成立。因此,我们的假设也是成立的。
这个证明是错误的。假设结论正确,推出一个矛盾,确实能说明这个假设是错误的(这就是反证法);但假设结论正确,推出它与条件吻合,这却并不能说明假设真的就是正确的。错误的假设也有可能推出正确的结果来。最经典的例子就是,不妨假设 1 = 2 ,由等式的对称性可知 2 = 1 ,等量加等量有 1+2 = 2+1 ,即 3 = 3 。但 3 = 3 是对的并不能表明 1 = 2 是对的。
如此反证
下面这个有趣的故事来源于 Lewis Carroll 的一篇题为 A Logical Paradox 的小论文。
Joe 去理发店理发。理发店有 A 、 B 、 C 三位师傅,但他们并不总是待在理发店里。 Joe 最喜欢 C 的手艺,他希望此时 C 在理发店里。他远远地看见理发店还开着,说明里面至少有一位师傅。另外, A 是一个胆小鬼,没有 B 陪着的话 A 从不离开理发店。
Joe 推出了这么一个结论: C 必然在理发店内。让我们来看看他的推理过程。
反证,假设 C 不在理发店。这样的话,如果 A 也不在理发店,那么 B 就必须在店里了,因为店里至少有一个人;然而,如果 A 不在理发店, B 也理应不在理发店,因为没有 B 陪着的话 A 是不会离开理发店的。因此,由 “C 不在理发店” 同时推出了 “若 A 不在则 B 一定在” 和 “若 A 不在则 B 也一定不在” 两个矛盾的结论。这说明, “C 不在理发店” 的假设是错误的。
从已有的条件看, C 当然有可能不在理发店。但是,为什么 Joe 竟然证出了 C 一定在理发店呢?因为他的证明是错的。其实, “若 A 不在则 B 一定在” 和 “若 A 不在则 B 也一定不在” 并不矛盾——如果事实上 A 在理发店,那么这两个条件判断句都是真的。 “若 A 不在则 B 一定在” 真正的否定形式应该是 “A 不在并且 B 也不在” 。
自然语言的表达能力
我曾在 另类搞笑:自我指涉例句不完全收集 一文中写过:
定理:所有的数都可以用 20 个以内的汉字表达(比如 25852016738884976640000 可以表达为“二十三的阶乘”, 100000000000000000000000 可以表达为“一后面二十三个零”)
证明:反证,假设存在不能用 20 个以内的汉字表达的数,则必有一个最小的不能用 20 个以内的汉字表达的数,而这个数已经用“最小的不能用 20 个以内的汉字表达的数”表达出来了,矛盾。
当然,这个定理明显是错的,因为 20 个汉字的组合是有限的,而数是无限多的。这个证明错在哪儿了呢?我也没办法一针见血地道出个所以然来,大家一起来讨论吧。
有趣的是,我们有一个与之相关的(正确的)定理:存在一个实数,它不能用有限个汉字来表达。这是因为,有限长的汉字字符串是可数的,而实数是不可数的。更有趣的是,这个定理的证明必然是非构造性的。
两边同时取导数 (1)
取一个正整数 N 。则有
N^2 = N + N + N + … + N ( N 个 N )
两边同时取导数,有
2N = 1 + 1 + 1 + … + 1 = N
两边同时除以 N ,得
2 = 1
数学威武!
这个推理是有问题的(废话)。随着 N 的增加,等式右边的 N 的个数却没变,因此 N^2 的增长率比等式右边更大。
两边同时取导数 (2)
令 x = 1 ,两边同时取导数, 1 = 0 。哈哈!
问题出在哪儿?这里有意略去答案不写,呵呵。
链式法则也出错?
下面这个例子告诉我们,数学符号混淆不得,分清每个数学符号的意义有多重要。
定义 f(x, y) := (x + y)^2 ,然后令 x = u - v ,令 y = u + v 。我们有:
∂f/∂x = ∂f/∂y = 2(x + y)
∂x/∂v = -1
∂y/∂v = +1
根据链式法则,有
∂f/∂v = (∂f/∂x)·(∂x/∂v) + (∂f/∂y)·(∂y/∂v)
= 2(x + y)·(-1) + 2(x + y)·(1)
= 0
但是, f(u, v) = (u + v)^2 ,因此 ∂f/∂v = 2(u + v) = 2y 。这岂不是说明 y = 0 了么?但是,条件里并没有什么地方规定 y = 0 呀?这怎么回事?
问题出在,整个推理过程把两个不同的函数都用 f 来表示了。事实上,一个函数是 f(x, y) := (x + y)^2,另一个函数是 F(u, v) = f(u - v, u + v) = (2u)^2 。链式法则求的并不是 ∂f/∂v ,而是 ∂F/∂v 。
不定积分的困惑
我们尝试用分部积分法求解 ∫ (1/x) dx 。
令 u = 1/x , dv = dx
du = -1/x^2 dx , v = x
于是 ∫ (1/x) dx = (1/x)x - ∫ x(-1/x^2) dx = 1 + ∫ (1/x) dx
怎么回事?
不怎么回事。这个等式是成立的。别忘了,不定积分的最后结果要加上一个常数 C 。
记得学高数时,求一积分,两哥们儿做出来的答案差别很大,而且试了很久也没能把其中一个答案变形成另外一个。后来终于恍然大悟:他们的答案是有可能不相同的,可以差一个常数嘛!
貌似漏掉了什么
很多 Goldbach 猜想、孪生素数猜想的“证明”都栽在了下面这个有时候很不容易注意到漏洞。
让我们来证明一个看上去有些不可思议的结论: π^e 是一个有理数。首先注意到,对任意有理数 r , logπr 都是无理数,否则令 s = logπr ,我们就有 π^s = r ,这与 π 是超越数矛盾。
现在,假设 π^e 是无理数,也就是说对任意有理数 r , π^e 都不等于 r 。这也就是说,对任意一个 r , logππ^e 都不等于 logπr 。由前面的结论, logππ^e 就不等于任意一个无理数。但 logππ^e 是等于 e 的,这与 e 的无理性矛盾了。因此,我们的假设是错的—— π^e 是一个有理数。
对于有理数 r , logπr 确实是无理数;但遍历所有的有理数 r ,并不能让 logπr 遍历所有的无理数,而 e 正好就等于某个漏掉的无理数。
不过,也不要想当然地认为, π^e 当然是一个无理数。目前为止, π^e 是否有理还是一个谜。 |