先看看下面这个序列:
大家觉得问号代表的项应该是什么呢?相信大家都不会怀疑答案是。
那我们再看看下面这个序列:
直观的答案当然是 。但如果你知道在四则运算中“除以零”是有问题的,你可能就会犹豫一下。
如果你学过微积分,看得出来这个序列是第一个序列每一项按照 幂法则(power rule)得出来的不定积分,那你就会知道那个答案应该是的不定积分,也就是 。
你可能曾经觉得很奇怪,明明序列中其他每一项都是一个以 的幂为分子的分数,为什么偏偏在中间就夾了一个特立独行的对数函数呢?
更要命的是,我们平常所用的法则在非整数幂也没有任何问题,即便我们考虑的是下面这个诡异序列:
对应的积分序列看起来也是非常顺畅,并不会觉得中间有什么问题:
那到底中间发生了什么东西?为什么只有 的积分跟其他都不一样,会变成 ?为什么既然“除以零”是有问题的,我们又不把对 求积分视为未定义的禁止操作(就像“除以零”一样),反而又弄出一个与众不同的呢?
的不定积分
你可能曾经有过以上的疑惑,但一般教科书只会把 的积分视为特殊规则,而你的老师可能也只会从 满足微积分基本定理这方面佐证这一点,让你知道这个答案确实没问题,但丝毫不减少这种不一致性引起的异样感。笔者多年前也有过这种困惑,但后来笔者发现只要有合适的切入点,这个“特例”就能和其他情况很好地联系起来。
要理解这个问题,我们可以细看一下 是怎么随 变化的。
我们先尝试让 从 8 开始往 0 变化:
在 大于 1 的时候,正如预期一样随 增大而快速增大,函数整体往右下方凸出。而在 小于 1 的时候,函数就会往左上方凸出。在 非常小的时候,函数曲线的形状会趋于稳定,但即使 非常非常小,整条曲线也一点都不像 那样是一条水平线。
反过来我们可以在再让 从-8 往 0 变化,我们会发现整个函数一直保持着往左上凸的情况。在 很负的时候,凸出的程度非常大,而在 非常小的时候,往左上凸的程度会收敛,但也一样不会变成水平线。
当然,只要我们看一眼 轴,就会知道我们上面说的“收敛”并不完全站得住脚。当 从正数方向接近 0,虽然函数形状看似不怎么改变,但函数值却在疯狂上升。而当 从负数方向接近 0,函数值则是疯狂下降。不只正负两侧都会发散,发散的方向还是相反的!
这种发散且左右极限不一致的情况,正正满足了我们觉得 "应该是未定义的" 这种直觉。
那既然它没有定义,那我们凭什么就觉得 的积分是 呢?
有趣的事情就来了,我们可以对 在 的地方进行洛朗展开 (Laurent expansion):
当 趋向 0 的时候,从第三项开始的每一项都会消失,只余下最开始的两项。值得注意的是,第一项虽然是发散的,但它与 无关,而第二项则只对 有关,对 来说是常数。
通过这个展开,我们就能理解前面调整 时看见的情况。当 接近 0 时,第三项或以后部分的影响会越来越少,所以函数的形状会逐渐接近 。同时,第一项虽然不改变函数形状,但会使函数整体平移。当 非常靠近 0,视乎 的正负,函数会保持着接近 的形状往正或负无限方向移动,也就是我们在上面看到的情况。
现在,再回想一下不定积分是怎么写的:
其中 是一个与 无关的积分常数,而因为 项与 无关,所以也能被纳入到积分常数中。对 来说,它的积分结果很明显就是唯一和 相关的 了。
也就是说 的积分等于 并没有违反我们的基本直觉,它只是利用了积分常数把 不乎规则的部分处理掉,导致看起来不太一致而已。
而且利用这个洛朗展开,我们可以稍微改一下我们的序列,每项减掉一个 ,就可以看得更清楚 往 0 逼近时的情况。
当 从正数往 0 靠近,对应的是上面的蓝线往下逼近,而当 从负数靠近 0,对应的则是下面的蓝线往上逼近。注意这里只用了“乘以常数”和“加常数”这两个一般被认为在微积分中相对比较无伤大雅的操作,这两个操作只会对 有本质性的影响,不太会影响其他函数的本质。另一方面,这个表述比本来的 更能体现出整个序列的连续变化。毕竟,对于 来说,只要 是正数,无论 有多小,对应的函数 在 的范围都是从 0 上升到无限的。而在 小于 0 的情况,无论 有多靠近 0,对应的函数 在 的范围都是从无限下降到 0 的,中间很难说有什么“连续”变化。
不是十分追求严格的话,你也可以这么理解:所有形如 的幂函数在缩放和沿 轴平移后,都或多或少有点像自然对数 ,其中 只是在某种意义下最像 的情况而已。
的不定积分
那为什么在大部分情况下 的不定积分都是 乘上一个常数,而虽然我们声称 在这里替代了 (其实是 )的地位,但它的不定积分却是 ,而一点都不像 呢?
这个问题还是和我们弄掉的 有关。先想一下:
和 的不定积分一样吗?
显然不一样,一个是 ,而另一个是 。而我们想像中的 “”(也就是 “”)和 的积分同样也不一样。我们觉得应该有的那个形如 的线性项,恰恰是前面的 贡献的。
如果还是觉得很疑惑,我们也可以放弃平常习惯的幂法则,先把
的不定积分先写成:
(注意在每项分子减掉 1 这样做并不会违反不定积分求导后等于原函数的性质,也不会影响到利用这组不定积分求出来的 的定积分(因为常数项会被抵消掉),我们仅仅是放弃了把所有常数项丢到积分常数 的习惯,为每一项保留了一个 的常数项。事实上,这个做法正是上面最后一张图所画的函数。)
再对每一项按本来的方法求积分,就会发现每一项都很一致:
在 的时候,的积分是:
而在 的时候,的积分则是:
也就是我们在积分表查得到的答案。
值得注意的是,这个积分公式是把原函数减1之后,再乘以,乘上的这个带 的项正正对应着我们平常认为的“求积分”和“x的幂次加1”之间的关系。
和 的导数
相反来说,对一开始的序列每一项求导可能还奇怪一些:
平常大家看着 0 看似是 也就没有什么疑问,但如果我们尝试利用之前的方法,研究 这个函数在 取不同数值时的变化,就会发现事情并不简单。
在穿过 的时候,会经历一次突变,单看 这段,在 的时候是递增的,但一穿过 这点之后就会变成递减,函数形状并不是连续变化的:
而当a从非常靠近0的正数过渡到负数,函数形状会再次出现突变,从递减函数变回递增函数
基于这种变化,我们可以把 的情况分成三段:
- 当 比 1 大,在 的位置函数值都是0(上面 的情况)
- 当 介于 0 和 1 之间,从正方向靠近0的时候,是越来越大的(和 的情况)
- 当 比 0 小,从正方向靠近却会使 往负无限方向一路奔去(的情况)
和 的情况都昰介于两段之间,但却不能单纯用前后两段的情况简单类推。
希望大家能学到新东西。觉得有趣的话就在下面点个 “在看 (Wow)”呗。
鸣谢: Vikki, Acid, Daniel
图片来源: Pixabay(athree23), Matplotlib, Colorbrewer2