数学那些事:伟大的问题与非凡的人
上QQ阅读APP看书,第一时间看更新

Differential Calculus / 微分学

1684年, 一篇数学论文发表在《教师学报》上。它的作者是戈特弗里德 • 威廉 • 莱布尼茨, 这是一位兴趣广泛且有无限创造力的德国学者和外交家。这篇论文里密密麻麻地挤满了拉丁词语和数学符号, 当时的读者可能会觉得很难理解。今天看来, 理解这篇论文的主题的最好线索就是论文标题末尾出现的一个词:微积分(calculi)。

这是第一部正式出版的微积分著述。它的题目翻译为《一种求极大值与极小值以及求切线的新方法, 适用于有理量与无理量, 以及这种新方法的奇妙微积分计算》。[1] calculus一词的本意是“一组规则”, 此处指的是适用于有关极大值、极小值以及切线等一类问题的一些规则, 莱布尼茨声称这些规则适用于有理数和无理数。他的发现意义如此重大, 后来这个单词成了不朽的数学名词。事实上, 数学家想要对这门学问给予特殊的关注时就会把它称为“the calculus”, 这听起来似乎更令人敬畏。

它是令人敬畏的。在传统的大学本科课程中, 微积分是进入高等数学的入口(遗憾的是, 对某些人来说是一种障碍)。它已经成为工程师、物理学家、化学家、经济学家等各种专业人士的不可或缺的工具。微积分显然是17世纪数学的最高成就, 很多人认为它是整个数学发展史上的最高成就。20世纪最具影响力的数学家之一约翰 • 冯·诺依曼(John von Neumann, 1903—1957)写道:“微积分是现代数学取得的最高成就, 对它的重要性怎样强调都不会过分。”[2](注意, 冯 • 诺依曼此处提到的就是the calculus。)

莱布尼茨写于1684年的论文内容是微分, 这是这门学科的两个分支之一。另外一个分支是积分, 1686年, 莱布尼茨在同一期刊上介绍了它, 它将是我们第L章的主题。

在探讨微分之前, 我们应该简单介绍一下它的起源。尽管是莱布尼茨首先在17世纪80年代中期公开描述了微积分, 然而, 是艾萨克 • 牛顿在1664年到1666年首先研究了这个课题。当时还是剑桥大学三一学院的学生的牛顿创造了他所谓的“流数”, 这也是一组规则, 利用它们也可以求得极大值、极小值和切线, 它们也适用于有理数和无理数。总之, 牛顿的流数要比莱布尼茨发表的微积分早二十年。

现代学者认为他们二人分别独立发现了微积分。但是当时的数学界怀疑这是一种剽窃, 他们对这一荣誉的分配几乎毫无雅量。于是, 英国人坚持认为牛顿优先, 而欧洲大陆的数学家们则坚信莱布尼茨优先, 双方展开了一场激烈的争论。这场争论可以说是数学史上最不幸的一段插曲, 我们将在第K章给予详细描述。

牛顿和莱布尼茨发现的究竟是什么呢?微分学的核心是斜率和切线的概念, 一般高中的代数课会介绍斜率, 而切线则是高中几何课程的关键概念。切线出现在莱布尼茨的论文标题中, 但是我们先从斜率开始讨论。

假设在坐标平面内有一条直线。我们可以分别研究坐标和坐标, 但是研究是如何连带变化的通常更有益。例如, 如果增加4个单位, 那么相应的的值如何变化呢?

答案与问题中的直线的坡度有关。在图D-1中, 左边的直线逐渐上升, 所以坐标值增加4个单位(即水平轴上增加4个单位)导致坐标值产生较小的变化(即垂直变化非常小)。但是对于右边倾斜较大的直线来说, 增加4个单位则导致的值产生较大的变化。

图D-1

为了用数学语言描述这一概念, 我们定义直线的斜率为:

如果一条直线的斜率是2/5, 那么当增加5个单位时, 会增加2个单位, 缓缓上升。而如果斜率是5/2, 则表明当增加2个单位时, 整整增加5个单位, 此时攀升速度相当快。如果我们要把一架钢琴拉上一个斜坡, 我们希望其斜率是2/5而不是5/2。

表示斜率的符号通常是,如图D-2所示的那样, 通过点和点的直线的斜率定义是

图D-2

对于一条斜率为5/2的直线, 水平方向增加2个单位导致垂直方向上升5个单位。因此, 如果增加个单位, 那么则相应地增加个单位。同样(这是解释斜率的关键), 向右增加一个单位将导致增加5/2=2.5个单位。对于斜率是2/5的直线来说, 增加一个单位则导致增加2/5=0.4个单位。因此, 我们可以把直线的斜率看成每单位改变量引发的的改变量, 即斜率告诉我们当增加1时, 增加多少。

这一切似乎没有什么现实意义, 但是事实并非如此。例如, 假设我们正在考虑一架飞机的运动, 其中代表这架飞机在高空飞行的时间, 是它在小时内飞行的距离。假设关系的图像是一条直线, 那么我们把这条直线的斜率解释为单位时间变化(的变化)所对应的距离的变化(的变化), 即这个斜率代表飞机的速率(用每小时的飞行距离来衡量)。这个速率对飞行员来说非常重要, 这一点是无可否认的。这一切都与斜率这样一个抽象的数学概念密切相关, 说明这种思想在纯数学领域之外是何等重要。

下面再考虑一个经济学问题。我们考虑与某个制造过程相关的两个变量:是生产出的产品数量, 是销售件产品后产生的利润。如果关系的图像是一条直线, 那么我们把这条直线的斜率解释为对应于单位销售量的变化而产生的利润变化, 即每销售一件产品所增加的效益。经济学家对这个概念是如此倾心, 他们甚至给它起了一个特殊的名字——边际利润, 它的值可以决定大型产业的发展过程。

生活中有很多斜率的例子。像每公里耗油量、每秒前进距离或单位重量价格这样的度量, 表明斜率就在我们的身边。毫无疑问, 一些最重要的数学应用只要涉及一个量相对另一个量的变化比值, 就会体现出斜率的思想。

对于我们刚才的例子, 增加一个单位导致有一个相应的增加。从图D-2上看, 这表明当我们向右移动时, 这条直线是向上攀升的。但是并不是所有线性关系都是这一类型。显然我们可能遇到这样的例子, 增加导致减少。还用飞机的例子, 我们可以设是飞机在空中飞行的时间, 是飞机与其目的地的距离。于是, 当增加时, 就会减少。这种情况可以用图D-3左图的直线说明, 对于这条直线, 当增加2时, 减少5。这里

还有最后一种情况, 对于微分学非常重要, 它是如图D-3右图所示的水平线。在这里, 的增加不会导致的增加或者减少, 因为没有变化。于是

图D-3

总之, 上升直线有正斜率, 下降直线有负斜率, 水平直线有零斜率(它是上升直线与下降直线的分界线, 其斜率也是正负的分界线)。它们步调一致。

遗憾的是, 这一理论只适用于直线, 因为整条直线显示出相同的倾斜度, 即有相同的斜率。在数学中直线当然非常重要, 但是显然现实世界的很多现象显现出多变的非线性的性质。飞机不可能以某个固定的速度飞行, 生产过程也不可能呈现出不变的边际利润。总之, 我们如何确定曲线的斜率呢?要描述这个问题, 我们最终要进入微分学领域。

为了说明这一问题, 我们考虑图D-4所示的抛物线的图像。当时, 我们发现, 并在这条曲线上标出这个点(3, 4)为

显然, 整个抛物线没有固定的斜率。当我们沿着这条曲线移动时, 要不断地改变方向, 从左边进入, 开始下降, 然后在底部趋于水平, 之后向右上升。基本原理很显然:曲线不同于直线, 它每一点的斜率都不同。

那么如何确定这条曲线在点的斜率呢?从图上看, 在点画出这条抛物线的切线, 并把抛物线(曲线)的斜率看成在这点的切线(直线)的斜率似乎比较合理。下面的情景给出了这种方法的合理性。

假设我们沿着这条抛物线路径开一辆小车。我们先从左边往下开, 再水平移动, 然后向右往上爬, 越向上越陡。当正好到达点(3, 4)时, 我们突然飞出这辆车, 在车子继续沿着抛物线向上运行的同时, 我们则沿直线前进(如图D-4所示的箭头方向)。因此, 我们的飞行直线是这条曲线在点(3, 4)处的切线, 这条切线的斜率就是抛物线在点处的斜率。

图D-4

这就简单多了。但如何求这条切线的斜率还不是很显然。在探讨解决方案之前, 我们应该明示其中存在的困难。因为斜率定义为

所以需要直线上的两个点来计算。然而在上面的例子中, 我们只知道这条切线上的一个点, 即点。如果我们还知道这条切线上的另一个点, 那么很快就可以求得它的斜率。没有这样的信息, 我们就好像进入了死胡同, 但是微分学给出了绕过这一障碍的方法, 那就是间接地逼近这条切线的斜率。这是一条绝妙的进攻路线。

对于我们的问题, 我们要求的是这条曲线在处的斜率, 首先我们考虑在时的情况。此时, 没有办法知道对应于的这条切线上的点, 但是我们可以确定抛物线上的点, 此时。我们在图D-5上标出这个点(4, 7)为, 图D-5给出了这条曲线这个关键部分的放大图。于是很容易求得通过点和点的直线的斜率, 我们称这条直线为连接割线

这是一个非常简单的计算, 遗憾的是, 它不是切线自身的斜率, 而是那条割线的斜率, 只能作为一个粗略的近似。我们如何改进这个估测呢?

为什么不在这条抛物线上选出一个比更靠近的点呢?比如说设。相应的值是, 所以抛物线上有坐标为(3.5, 5.25)的点。连接的割线有斜率

如果你想象在图D-5上在点之间画一条直线, 它显然比我们第一次尝试的之间的直线更加接近切线。于是2.50的斜率比我们第一个估测值3.0更加接近切线的斜率。

图D-5

下一步应该是可以预测的:在抛物线上取一个更加接近点的点。例如设, 于是, 令是点(3.10, 4.21)。连接点的割线显然更加接近要求的切线, 它的斜率是

继续照这样进行, 设我们的点沿着抛物线向移动, 并计算我们行驶过程中相应的割线的斜率。这样的一连串计算出现在下面的表格里。

出现了一个明显的模式。当我们的点沿抛物线向移动时, 对应的割线也旋转着, 不断靠近这条切线, 它们的斜率显然逐渐逼近无法求得的切线斜率的更精确的估测值。在我们的例子中, 我们能够很快地猜测出问题中的切线斜率是这些割线斜率无限靠近的那个数:抛物线在点(3, 4)处的切线的斜率显然是2。

至此, 一切都很完美。但是, 如果我们要求同一抛物线在点(1, 4)处的斜率又如何是好呢?我们或许不得不进行类似的计算并准备一张类似的表格。如果给我们另外十多个点, 需要求得在这些点处的切线斜率, 那又如何是好呢?我们可能要面对十多张表格, 而且整个操作将变得非常乏味。能够改善这种计算斜率的过程吗?

答案是肯定的。事实上, 这就是莱布尼茨在1684年发表的那篇论文中描述的规则所实现的目标。这种改善要求我们稍微采用更抽象的观点, 也就是说更代数的观点。现在我们不再关注特定的点(3, 4), 而是要创造一个求抛物线上任意点处的切线的斜率公式。

有坐标, 且。同上, 选择一个靠近点的点, 使用割线的斜率近似切线的斜率。

图D-6

如图D-6所示, 习惯上把这个“邻近”点的第一坐标记为。这样一来, 我们就能认为是非常小的一般量, 是一个只超出一点点的小增量。抛物线上相应的点被标为图中的点。为了求它的第二坐标, 我们只需把代入抛物线的方程, 即用代替。这样的代入给出的第二坐标是

所以点是。读者可能注意到, 这个问题的代数强度已经上升了一两个等级, 但是为了寻找一个一般公式, 这样的努力还是值得的。

下一步是使用求的公式确定过点的割线的斜率:

总之, 对于任意的小增量, 过点的割线的斜率是。但是沿着抛物线向点“滑动”的想法只是相当于让更加接近零。换句话说, 在确定这条切线的准确斜率时, 我们只需要取当趋近于零时这条割线斜率的极限就可以了。因此, 对于我们的例子, 切线的斜率是由下面的极限给出的:

因为当向零靠近时, 都保持不变。(符号读作“当趋近于零时的极限”。)

顺便提醒读者注意, 我们可以对前面例子中引用的抛物线运用这个一般公式。此时。因此, 在点(其中)处切线的斜率是, 这和前面表格给出的答案相同。如果我们要求点(1, 4)处的切线的斜率, 那么只需设, 于是斜率是。图像证实了这条抛物线在这一点处是下降的, 与负斜率吻合。

重述:曲线的切线斜率是当趋近于零时相应割线斜率的极限。这个极限称为导数, 求导数的过程称为微分, 研究这些相关问题的数学分支称为微分学

微分学的目标之一就是发展更一般的公式。我们肯定不想局限于处理抛物线。使用与上述过程类似的过程, 数学家从一般函数开始, 求其上任意点处的切线的斜率。同上, 我们在这条曲线上选择一个邻近点, 它的第一坐标是, 第二坐标则相应地是;接下来, 确定割线的斜率:

最后求当时, 上面这个商的极限值。

莱布尼茨把导数记为。后来约瑟夫-路易 • 拉格朗日(Joseph-Louis Lagrange, 1736—1813)引入了更强大的记法, 他使用符号表示的导数。利用这一记法, 我们可以得到一个在所有微分学书籍中都可以找到的基本公式:

从这个一般定义开始, 我们可以给出许多函数的导数。当微分的幂函数, 即求形如的函数的导数时, 一个非常优美的模式出现了, 即

用语言描述的话, 它说的是求的导数只需要把指数拿下来放在前面当系数, 然后把幂降低一次。因此, 的导数是, 而的导数是。这是一个奇特又美妙的规则。曲线的性质及其切线的性质就蕴藏在数学中, 它们可以被阐述成如此简单的东西, 真是奇妙!

在此我们要说明关于导数定义的几点注意事项。首先, 尽管有些函数的导数很容易从相关代数获得, 但是有很多函数的导数公式却导致数学上的混乱。更糟糕的是, 对于某些函数来说, 它在一个点或几个点处甚至没有导数。对于这样的函数来说, 我们无法对有问题的点指定任意数作为这条曲线在该点处的切线的斜率。

图D-7给出了这样一个例子。在点(2, 1)处, 这个图像有一个尖角。没有办法画出这条曲线在点(2, 1)处的唯一一条切线, 因为在这里它突然改变了方向。但是, 如果我们不能画出一条切线, 那么当然也就无法确定切线的斜率, 而斜率才是它的导数的意义。这个函数以及其他有锯齿状图像的函数在尖角处都没有导数。

图D-7

上面的例子说明, 伴随导数可能会出现不好处理的难题。这些通常涉及“极限”这个概念, 从古时候起, 数学家就以不同形式与这种思想纠缠。极限的理论意义非常重大, 我们借它定义了导数。在此我们没有必要谈及和深究这个概念的哲学意义。其实, 莱布尼茨也没有这样做。他很高兴地从“求极大值和极小值以及求切线的新方法”中寻求更直接的效益, 而不过度担心它们的理论基础。

我们已经花了很长时间讨论切线。在本章的最后, 我们讨论一下微分在极大值和极小值中的应用。

首先要强调, 知道一个函数能达到多大或多小, 换句话说, 知道一个函数的极大值或极小值, 在数学理论和应用两方面都是非常重要的。在什么样的条件下, 我们可以极大化利润, 极小化汽油的消耗?极值问题是在现实世界中左右我们做出各种决定的关键。微分学为回答这些问题提供了工具, 这一事实充分说明了它的威力。

来看一下它是如何工作的。考虑图D-8所示的一般函数的图像。这个例子显然不是线性的, 因为当向右移动时, 它时而上升时而下降, 而且对于其上的两个点要格外注意。这两个点是, 其中是这条曲线能够达到的极大值, 而是这条曲线达到的极小值。确定的坐标当然是非常有意义的。

图D-8

但是如何确定呢?求极大值和极小值的关键是我们前面讨论的斜率:在小山的顶部或峡谷的底部, 曲线的切线是水平的, 即是一条水平直线, 正如我们前面所说的那样, 它的斜率是零。因此求极大值和极小值就促使我们去寻找一些特殊点, 满足曲线在这些点处的切线的斜率是零, 即在这些点导数等于零。用代数语言表示, 我们的任务就是求解方程, 然后就可以求函数的极值。

作为一个例子, 看一下意大利数学家吉罗拉莫 • 卡尔达诺(Girolamo Cardano, 1501—1576)的一个论断, 我们将在第Z章中从不同的角度再次讨论此人。在考虑一个代数问题时, 卡尔达诺断言不存在两个实数满足其和等于10且其积等于40。利用微分学, 我们很容易证明他的结论。

那就是, 设这两个实数之一是, 另一个是。它们的和等于10可以表示成方程, 根据这个方程, 我们很快就可以得到。我们希望确定积如何变大。显然, 所以我们引入乘积函数

并且运用微积分来求极大值。

我们已经求得一般二次函数的导数是, 因此, 函数的导数是(因为)。为了求极大积, 我们只求曲线有水平切线的那些值。因此我们设。求解相应的导数方程得

图D-9所示的这个乘积函数的图像支持这个结论, 因为这条抛物线的顶点是。此时的乘积是, 这就是这个积所能取到的极大值。换句话说, 和等于10的两个实数有极大积25。卡尔达诺说不存在和等于10的两个实数, 它们的乘积等于40, 显然他是正确的。

图D-9

前面这几个例子已使我们领略了微分学的风范, 而这只是微分学的表面。这门学科能够解决很多令人困惑的问题, 因此在后面的章节中我们会屡次遇到它, 也不会令人惊讶。但是现在我们要暂时告别这个话题, 离开这个非常重要的数学概念, 离开莱布尼茨在三个世纪之前热情描述的“一种奇妙的微积分”。