Part C:“王为民方程”的正确求解方式
本章为番外篇。在之前的Part中我们介绍了王为民方程和王为民恒等式的错误之处,由于这个问题涉及到了初等数学以外的过程,而零度君当时并未完整系统的对该方程进行求解,所以零度君觉得有必要将正确求解方案放上来。所以本章在PartB的基础上续了一节。
在正式开始之前我们先做一下复习课:
迭代幂次:符号kx表示非负整数k个正数x的幂迭代,比如1x=x,3x=xxx
无限迭代幂次:∞x=limk→∞kx
迭代幂次运算是右结合的:这意味着4x=xx(xx)=(xx)xx因此你不能把∞x展开为limk→∞xxk−1
王为民方程:尽管王为民变着花的写了很多形式,但他们都可以等效为∞(xx)=x
6.14 自以为是的巧解
其实,很多萌新都会想到这个点子,但很遗憾这个方法是有严重缺陷的。我们先概述一下这个方法:
根据极限的性质,我们可以将无线迭代幂次做一个简单的代换:∞x=limk→∞kx=limk→∞k+1x,如果我们令 y=∞x,那么就会有y=xy
显然我们可以看出x=yy
那么对于方程∞(xx)=x可以简单得到x=(xx)x这个恒等式。也就是说方程∞(xx)=x本身就是一个恒等式。
换句话说,x为任意正数时似乎都是∞(xx)=x的根。
6.15 一个被忽略的条件
上面的解法看似简单精炼,但其实存在一个致命问题。这个问题其实我们大家都经历过,就是解方程的时候会出现增根。举个例子:x2+x+1=0两边同乘x,得x3+x2+x=0,解得x=0代入原方程,得1=0。
x2+x+1=0不能两面同时乘以x然后求解是因为这个你要乘以的x,本身可能在实数域上不存在。你假定他存在了,那么就可能会有增根。同样的道理,在6.14中我们假定了存在y=∞x而如果y本身在实数域上不存在呢?
所以我们需要讨论函数f(x)=∞x的定义域和值域。
6.16 迭代幂次的收敛域
首先的一个问题,如果f(x)不收敛,那么显然函数没有意义,此时x是不能取的。因此我们要首先求出了f(x)的收敛域:
假设f(x)收敛于实数a,根据6.14中的讨论,对于不同的x,f(x)收敛到不同的值。那么我们定义一个关于a的函数g(a)=f(x)−a=∞x−a=xa−a。显然,f(x)收敛,那么g(a)必然存在=0的时候。
那么,这个问题就转化成最值问题了。假设a∈(1,+∞),通过一次函数求导g′(a)=xalnx−1,得到g(a)min=lnx1−logx(lnx1),此时a=logx(lnx1)。如果不习惯x的位置可以用换底公式换出来a=lnx−ln(lnx)。
我们令g(a)min=lnx1−lnx−ln(lnx)=0,再用换元法替代 t=lnx。g(a)min=t1+lnt,很显然当t∈(−∞,e−1]即x∈(0,e1/e]时g(a)存在负值。在考虑至少g(1)和g(+∞)一定有一个>0,可以推出x>1,那么x∈(1,e1/e]
同理,当 a∈(0,1) 时,可以推出x∈[e−e,1)
特殊值x=1时显然成立。所以 f(x)=∞x的定义域为x∈[e−e,e(1/e)]
6.17 f(x)的值域
讨论完定义域之后我们就可以计算f(x)的值域了:
我们需要判断其增减性,假定存在x1,x2∈[1,e1/e],且 x1<x2。构造数列An(x)=nx。显然1≤A1(x1)=1x1=x1<A1(x2)
那么假定对于任意正整数 n=k≥1 存在1≤Ak(x1)<Ak(x2)
那么当n=k+1时:显然有Ak+1(x2)=x2Ak(x2)>x2Ak(x1)>x1Ak(x1)=Ak+1(x1)
而Ak+1(x1)=x1Ak(x1)>x1>1
所以当n=k+1是满足1≤Ak+1(x1)<Ak+1(x2)即Ak(x1)−Ak(x2)<0对任意正整数k在x1,x2∈[1,e1/e]均成立。取极限可得∞x1−∞x2≤0,即f(x)在x∈[1,e1/e]上是增函数。
同理,f(x)在x∈[e(−e),1]上也是增函数。
那么f(x)的值域就应该是[f(e−e),f(e1/e)]
套用6.14的方法,当 x=e1/e时,即∞(e1/e)=a有且仅有 a=e 这一个根。
同理可得f(e−e)=e−1
所以f(x)的值域为f(x)∈[e1,e]
6.18 王为民方程的正确解法
显然,对于所谓的王为民方程,∞(xx)=x当x∈/[e1,e]时是无解的。而对于x∈[e1,e],此时方程是有解的,6.14的方法是正确的。
我们归纳一下:∞(xx)=x仅在x∈[e1,e]时成立。而对于正整数而言,所谓的王为民恒等式仅对1和2两个数成立。