高视角!如何认识微积分方法与原理?
编者按>>
恩格斯在《反杜林论》中说:“变数的数学——其中最重要的部分是微积分。”冯·诺依曼说:“微积分是近代数学中最伟大的成就,对它的重要性做怎样的估计都不会过分。” 可见微积分在数学中的重要性。通常说的“微积分”由方法和原理两部分构成,而原理部分是微积分的核心。然而人们很少有意识去区分微积分方法和微积分原理,但两者毕竟不是一回事。从微积分的教学角度来看,高数侧重于对方法的学习,而数分更侧重于对原理的学习。方法是为实践服务的,并通过实践来检验它的效果;原理是搞懂“是什么”和“为什么”,是为揭示方法背后的机理服务的。本文的写作目的是希望帮助读者能够更好地认识微积分方法和微积分原理,从而对微积分自身有一个更加深刻的认识。
牛顿和莱布尼茨几乎在同一时期,独立地创立了微积分。这是一项影响深远的伟大发明。遗憾的是,牛顿一生也没有形成一个相对成熟的微积分体系,他的求导数方法(即流数法或首末比法)饱受诟病,关键在于对“ο”的理解上。而莱布尼茨的微积分理论虽然简洁,但他的微分定义说不清楚。不清楚的原因就在于他认为微分是相邻两点之差。实际上,相邻两点,即使是放在现行的实数系中也是不存在的。所以虽然说两人都创建了微积分,但是它并没有形成一个完备的原理体系。
图1 牛顿(左)、莱布尼茨(右)画像
微积分的历史告诉我们,尽管在当时并没有建立起完备的微积分原理,但是它已与广泛的应用紧密交织在一起,刺激和推动着许多数学新分支的建立。
18世纪,可以说是分析的时代。自从微积分建立之后,整个数学的主流进入了微积分的大发展,而它主要表现在微积分方法的大发展。特别是欧洲大陆这边的数学家,如伯努利兄弟、欧拉、达朗贝尔、拉格朗日等人做了大量的贡献。与此同时,由于牛顿和莱布尼茨的微积分不严格,也有一部分数学家做了种种尝试来克服微积分基础的困难,尽管这在当时还不是主流。经过近一个世纪的尝试和酝酿,数学家们在严格化基础上重建微积分的努力在19世纪初开始获得成效,后经柯西、魏尔斯特拉斯、黎曼、康托、勒贝尔等人才最终建立起严格的微积分原理。
柯西从牛顿“消失量的最终比不是最终量之比,而是这些无限减少的量的比的极限”中受到启发,提出了使用极限思想建立微积分体系;魏尔斯特拉斯给出了极限论严格的形式化描述,即现行的ε-δ语言;而后,历经黎曼的积分思想,康托的集合论,勒贝格的积分思想(基础是测度论),最终形成现行的微积分体系,也被称作第二代微积分体系。究其本质而言,是用极限思想发展了牛顿的微积分原理,并引进了莱布尼茨的记号从而形成的一套体系。需要注意的是,此时微积分体系的核心已经从微分变为导数了。
我们今天谈微积分,大家没有很明确的区分微积分方法和微积分原理。那么什么是微积分方法和微积分原理?我们为什么又要加以区分呢?
微积分方法是人们以微积分为工具解决问题的手段和途径。比如在牛顿、莱布尼茨创建微积分之前就积累了大量的问题,主要归结为两类问题:以求曲线切线、求瞬时变化率、求函数极值等为主的微分问题和以求面积、体积等为主的积分问题。当然在牛莱之后又产生了很多新问题,那么我们就需要以微积分为工具解决这些问题。
18世纪主要是微积分方法的发展。微积分基本方法包括微分方法、导数方法和积分方法。积分方法具体又包括换元积分法和分部积分法。人们通过对无理函数积分的研究,发现有一些函数的积分不能用已知的初等函数表示,最终在19世纪20年代建立了深刻的椭圆函数理论。当我们拿着微积分基本方法去应用的时候,还可以产生一些新东西。
常微分方程、偏微分方程、微分几何、泛函分析等学科是伴随着微积分的发展而产生的。有了微分方程,经过欧拉、达朗贝尔、拉格朗日等数学家的努力,也就出现求解微分方程的方法。当微积分用于研究曲线曲面的时候,后面也出现了解决相应几何问题的微分几何方法。函数的概念可以推广到泛函,于是出现变分法。以常微分方程为例,人们逐渐发现了分离变量法、变量代换法、参数变易法、积分因子法等方法。到1740年左右,几乎所有求解一阶方程的初等方法都已知道。高阶常微分方程求解的重要突破,是欧拉1743年关于n阶常系数线性齐次方程的完整解法,当时欧拉引进了著名的指数变换。18世纪常微分方程求解的最高成就是拉格朗日1774-1775年间用参数变易法解出了一般n阶变系数非齐次常微分方程。
图2
那什么是微积分原理呢?在此之前,我们先搞明白什么是原理。
以力学为例,在“力”这个概念没有揭示之前,和“力”相关的现象也在被研究着。比如说我们造小推车,我们搞的是个圆形的轮子,而不是平的什么东西往前推,这说明什么?这说明人们在没有“力”这个概念之前,就凭借经验这么干,因为它推起来更省力。但是为什么这样做会更省力?有了“力”这个概念之后,我们知道通过摩擦力可以去解释这个问题。因为我们可以比较这两者之间的摩擦力,它有滑动摩擦力和滚动摩擦力的区别,而滚动摩擦力阻力更小,那么搞个圆形的轮子它就会更省力。
图3
这样我们就把它的原理给揭示出来了。一旦原理被揭示了,我们还可以用原理去设计更好地减弱滚动摩擦力的东西。以汽车驾驶为例,它的滚动摩擦力是作为阻力,我们可以想办法改变轮胎的材质和形状来尽可能减少滚动摩擦力。但滑动摩擦力也有一部分作用,滑动摩擦力要使它发生相对的位移。滑动摩擦力在有些情况下是越大越好,比如下雪天,因为滑动摩擦力不够大的话,轮胎就会出现打滑。为什么要在轮胎上刻上花纹,花纹的设计就是为了增大滑动摩擦力。
原理的重要性在于,我们可以用原理去优化原先的设计。那么对于微积分也是一样。微积分方法行之有效,我们需要把它最核心的概念给提炼出来,在这些概念之上形成一个数学的演绎体系。这个体系,它要能够去解释已有的这些方法为什么是正确的,把它的本质揭示清楚。不仅如此,还要能去优化已有方法的一些数学表述,乃至是发展更多的微积分方法。原理就是要起到这样一个作用。当然,我们还要要求这个原理能够做到逻辑自洽,并且尽可能简洁。
这才是我们谈的微积分原理,它具体的表现是一个数学的演绎体系。在以极限概念为核心的现行微积分原理体系下,它主要表现在极限、实数、集合、函数、连续、导数、定积分、不定积分、微分等基本概念以及由这些基本概念构成的演绎体系。
我们说微积分方法是放之四海而皆准的,因为它的正确性已经通过实践来证明了。但是它为什么正确不能只停留在实践的检验上,人们也需要从原理角度去揭示它背后的机理,甚至去优化它或者去发现更多的微积分方法。这是微积分原理与微积分方法根本不同的地方。事实上我们常常混淆这两个概念。微积分方法的正确性不用靠微积分原理去做证明,因为实践已经证明了,而只是需要微积分原理能够更好地去解释它。同样的,我们也不能说因为微积分方法是正确的,所以微积分原理就没有问题。如果是这样,我们就不需要以极限概念为核心的现行微积分原理了,因为牛顿和莱布尼茨的不完备的微积分原理就足够了。人们对客观事物的认识,是一个由生动直观到抽象思维,由感性认识到理性认识的不断深化的过程。微积分原理的有效性完全要靠它的逻辑自洽性和简洁实用性来证明。原理的产生不是一蹴而就的,但它也不是死的。当一个原理不能起到应有的作用时,它就还有进一步发展的空间。
微积分宋浩老师配套课程已上线
扫码来试看吧~
☟☟ 同款图书get
高视角!如何认识微积分方法与原理?相关推荐
- 多线程下ArrayList类线程不安全的解决方法及原理
多线程下ArrayList类线程不安全的解决方法及原理 参考文章: (1)多线程下ArrayList类线程不安全的解决方法及原理 (2)https://www.cnblogs.com/fangting ...
- 可逆加密算法 php,php可逆加密的方法及原理
本篇文章主要介绍php可逆加密的方法及原理,感兴趣的朋友参考下,希望对大家有所帮助. PHP代码如下:<?php class encryptCalss { var $key=12; functi ...
- Vue2.0+vuex+H5实现音乐播放及歌曲切换功能的方法及原理解释
最近在用mint-ui重写一个vue.js音乐App项目,做到播放器模块,感觉挺有意思,记录一下播放器歌曲播放及歌曲切换功能实现方法及原理. 先上一张运行效果图(歌词尚未抓取.播放进度条及时间尚未开发 ...
- [react] render方法的原理你有了解吗?它返回的数据类型是什么?
[react] render方法的原理你有了解吗?它返回的数据类型是什么? render的第一个参数通过babel转为React.createElement,后者根据参数类型的不同调用不同的内部方法来 ...
- VMware虚拟机的三种联网方法及原理
VMware虚拟机的三种联网方法及原理 博客分类: 操作系统 虚拟机Vmware互联网网络应用网络协议 一.Brigde--桥接 :默认使用VMnet0 1.原理: Bridge 桥"就 ...
- ArrayList类contains方法实现原理
以ArrayList集合示例 思考:contains方法如何执行? public static void main(String [] args){List<String> list=ne ...
- ajax连接前后端原理,前后端数据交互方法和原理
前后端数据交互方法和原理 发布时间:2018-10-28 11:25, 浏览次数:742 对于想要搞web的新手而言,会用html+css+javascript实现一个页面没什么太大的困难,但是想要前 ...
- IO流-ReadLine方法的原理 自定义BufferedReader
package com.yyq; /** readLine 方法的原理* 无论是读一行,获取读取多个字符其实最终都是在硬盘上一个一个的读取,所以最终使用的都是* read方法一次读一个的发法* 缓冲区 ...
- Atitit.编程语言原理---方法重载的实现与设计 调用方法的原理
Atitit.编程语言原理---方法重载的实现与设计 调用方法的原理 1. 重载包括:普通方法的重载和构造方法的重载 1 1.1. 横向重载"和"纵向重载"1 1.2. ...
最新文章
- [转]VC6.0无法打开文件和无法向工程添加文件的解决办法
- 前谷歌工程团队负责人:如何打造一个完美的产品
- 密码学系列之:IDEA
- linux文件存储、inode、硬链接、软链接
- 这篇顶会paper,讲述了疫情期间憋疯的你和我
- SLAM GMapping(8)重采样
- [PyTorch] torchvision库及其常用的函数
- java怎么返回上一部,如何返回数据给上一个活动
- XSLT Transform
- python少儿编程面试题-《与孩子一起学编程》python自测题
- 如何做一个淘宝客(前期为自己省钱)
- 程 | 深度学习 + OpenCV,Python 实现实时视频目标检测 机器之心 09-21
- 七雄Q传封包辅助技术探讨回忆贴
- 008 [转载]文件后缀查询
- Tumblr营销大法(三)
- RFC5731 - 中文翻译(原创)
- oracle 企业管理器网页打不开 解决https://localhost:1158/em问题
- 高性能服务器架构(High-performace Server Architecture)
- Oracle11g新特性之Replay a captured workload 捕获工作负载新环境重放负载测试压力
- 大数据技术十大核心原理