在数学中,自然常数 e 是一个很常见的数.在高中的数学课本里,只是说明了它是一个无理数,并没有给出它的定义.
但是,e 在高中课本里又无处不在.特别是到了后面导数部分,不弄清楚 e 的定义,就没有办法弄清楚为什么 ex 和 ln(x) 的导数为什么那么特殊.
1. e 是增长的极限
我们假设有一家银行,这家银行的活期存款利率是 100%(当然,现实中这是不可能的).如果我们有 1 块钱,存入银行里,那么一年之后,我可以取出 2 块钱.
但是如果我们勤快一些,半年的时候把钱先取出来一次,这时可以取出 1×(1+100%/2)=1.5 块钱.这时我们在把这 1.5 块钱都存入到银行里,半年之后再取出,那么就可以取出 1.5×(1+100%/2)=2.25 块钱.这样,我们仅仅时多跑了一次银行,赚到的利息就比原来多了 25%.
如果我们再勤快一些,每个月都进行一次这样的操作,那么一年之后,我们一共能取出 1×(1+100%/12)12≈2.61 块钱.这样我们就可以获得更高的收益了.
假如你不甘心,还想再获取更高的收益,你还可以每天进行一次这样的操作,这样在一年之后,你将获得 1×(1+100%/365)365≈2.71 块钱.我们的收益又多了.
自然地,我们就有一个想法:如果我存取钱的次数足够多,那我的收益是多少?会是无穷多么?
这个问题用数学的语言来描述,就是要求在 n→+∞ 时,an=(1+n1)n的极限.
从前面的例子中,我们其实可以看出,当 n 从 12 变到 265 的时候,an 的增长比 n 从 2 变到 12 的时候还要小.可以预见,当 n 越来越大的时候,an 的增长会越来越小.因此我们可以猜测,an 的增长并不是无限的.
事实上,要想严格的证明这个极限是存在的,需要用到下面的定理:
因此,我们只需要证明两个条件:数列 {an} 单调,且有界.
单调性的证明
由上面的计算可以知道,a1=2<a2=2.25.
当 n⩾2 时,我们把 (1+n1)n 展开:
(1+n1)n=k=0∑nCnk⋅nk1=1+n⋅n1+k=2∑nk!n(n−1)(n−2)⋯(n−k+1)⋅nk1=2+k=2∑nk!1⋅nk−1(n−1)(n−2)⋯(n−k+1)=2+k=2∑nk!1⋅(1−n1)(1−n2)⋯(1−nk−1)(I)
比较 an 和 an+1 的展开式的第 k 项(2⩽k⩽n),注意到 1−ni<1−n+1i 对 i=1,2,⋯,k−1 恒成立,因此
k!1⋅(1−n1)⋯(1−nk−1)<k!1⋅(1−n+11)⋯(1−n+1k−1)
而且 an+1 比 an 还多了一项
(n+1)!1⋅(1−n+11)(1−n+12)⋯(1−n+1n)>0
因此 an<an+1,故数列 {an} 单调递增.
有界性的证明
我们只需要证明数列 {an} 有上界.
根据上面 {an} 展开式 (I),
(1+n1)n=2+k=2∑nk!1⋅(1−n1)(1−n2)⋯(1−nk−1)<2+k=2∑nk!1<2+k=2∑nk(k−1)1=2+(1−n1)=3−n1(II)
所以可以得到 an<3 恒成立,即数列 {an} 有上界.
在完成了上面两个证明之后,我们知道,数列 {an} 的极限是 2 和 3 之间的某一个数,于是我们就把它定义为 e:
e:=n→+∞lim(1+n1)n
回到前面的情景,这个结论告诉我们,即使我们每时每刻不停的存取,一年之后我们能取出的钱也不会超过三块钱.也就是说,在年增长率不变的情况下,即使是复利,增长也是有极限的.
利用夹逼定理,还可以证明:对于函数的极限,也有 x→∞lim(1+x1)x=e.
先考虑 x→+∞ 的情况;
我们令 n=⌊x⌋,注意到,n⩽x<n+1,于是有
1+n+11<1+x1⩽1+n1
⟹(1+n+11)n⩽(1+n+11)x<(1+x1)x⩽(1+n1)x<(1+n1)n+1
因此
x→+∞lim(1+x1)x⩾n→+∞lim(1+n+11)n=n→+∞lim[(1+n+11)n+1]n+1n=e1=e
x→+∞lim(1+x1)x⩽n→+∞lim(1+n1)n+1=n→+∞lim(1+n1)n⋅(1+n1)=e⋅1=e
因此,x→+∞lim(1+x1)x=e.
再考虑 x→−∞ 的情况.
令 t=−x→+∞,则
x→−∞lim(1+x1)x=t→+∞lim(1−t1)−t=t→+∞lim(t−1t)t=t→+∞lim(1+t−11)t=t→+∞lim(1+t−11)t−1⋅(1+t−11)=e⋅1=e
2. e 的展开式
上面对于 e 的定义,比较容易理解,但是有一个缺点,就是计算比较麻烦,收敛速度非常慢.
我们知道,e≈2.718281828,但是 a10000≈2.71815,a1000000≈2.718280469,a100000000≈2.718281815,也就是说,算到第一亿项的时候,才精确到小数点后第7位.
显然,我们需要一个能够更快收敛到 e 的数列.
为了书写方便,这里我们引入无穷和的记号:
k=0∑+∞an:=a1+a2+⋯+an+⋯
考虑数列 sn=k=0∑nk!1,可以证明:e=n→+∞limsn=k=0∑+∞k!1.
先证明数列 {sn} 收敛,且 e⩾k=0∑+∞k!1;
对任意的 m>n⩾2,根据上面的 (I) 式,
(1+m1)m=2+k=2∑mk!1⋅(1−m1)(1−m2)⋯(1−mk−1)>2+k=2∑nk!1⋅(1−m1)(1−m2)⋯(1−mk−1)
两边同时令 m→+∞,可得
e⩾2+k=2∑nk!1=k=0∑nk!1
根据单调收敛定理,n→+∞limk=0∑nk!1=k=0∑+∞k!1 一定存在.
因此再令 n→+∞,可得
e⩾k=0∑+∞k!1
再证明 e⩽k=0∑+∞k!1.
注意上面的 (II) 式,在对 an 进行放缩的时候,我们得到了
(1+n1)n<2+k=2∑nk!1=k=0∑nk!1
两边同时对 n 取极限,可以得到
e⩽k=0∑+∞k!1
这样,我们就得到了 e 的展开式:
e=1+1!1+2!1+3!1+⋯+n!1+⋯
用它来计算 e 的话,收敛速度比前面要快的多:
k=0∑9k!1k=0∑12k!1≈2.718281525≈2.718281828
3. e 的另一种极限定义
我们知道,f(x)=ex 的一个重要性质就是 f′(x)=f(x),特别的,f′(0)=1.我们也可以利用这一条性质来定义 e:
若函数 y=ax (a>0 且 a=1)在 x=0 处的切线斜率为 1,即 x→0limxax−1=1,则 a=e.
需要注意是,证明的过程用到了 y=logax 的连续性.
证明 a=e.
令 t=ax−11→∞,则 x=loga(1+t1).
x→0limxax−1=t→0limtloga(1+t1)1=t→0limloga(1+t1)t1=logae1=logea=1
因此,a=e.
这个定义的一个好处是,可以很容易地求出 f(x)=ex 的导数:
f′(x)=h→0limhex+h−ex=ex⋅h→0limheh−1=ex⋅1=ex
4. 总结
可以看到,上面我们用了三种不同的方法来定义 e.虽然这些定义表面上看起来不一样,但它们是定义出来的 e 都是一样的.也就是说,这三种方法实质上是等价的.第一种方法有实际的解释,相对比较自然;第二种方法计算简便,而且易于拓展;而第三种方法则方便证明指数函数的分析性质.
参考资料:
- 《数学分析新讲(第一册)》,张筑生
- Principles of Mathematical Analysis,Walter Rudin
- Calculus: Early Transcendentals,James Stewart