龙空技术网

华师《数学分析》——函数概念的辨析

无穷的小基数 517

前言:

现在朋友们对“n元运算的定义”都比较注意,看官们都想要分析一些“n元运算的定义”的相关文章。那么小编在网络上网罗了一些对于“n元运算的定义””的相关文章,希望同学们能喜欢,各位老铁们快快来学习一下吧!

温馨提示:本文只需要有高中及以上数学基础即可阅读。

文章概览:我们先来辨析一下华东师范《数学分析》里关于函数概念的某些瑕疵,然后再花点篇幅介绍一下函数的一个易混淆点——“一对多”和多值函数的区别。

函数的问题,其实我们之前聊过。这次又“旧事重提”无非是因为它重要、基础。但是另外一个促使我下决心写它是原因是,我发现即使在近来新出版的经典教材中,函数的概念依旧是初级且不完善的,并且这种观点根植于高中,散播于大学。

华东师范的《数学分析》,在国内和复旦的《数学分析》、俄罗斯的那些同类教材以及鲁丁的《数学分析原理》平分天下,而对于考研,考生们可能更关注讲授的易接受性、概念的精炼简单性、说明的详细、多面性。总之,一本易教易学的书是考生们的首选,这也是为什么华师的书在淘宝和拼多多大卖的原因。

这书出到第五版了,我也是慕名拜读了一下,但是在函数这里感觉依旧很初等,而且作者完全是按照高中的概念在阐述函数的定义,看下图。

正常来讲,图中的说法其实对于应用不算太有问题。如果“咬文嚼字”要求严格对照函数的定义。那么该说法是欠妥的。

先来看一下在我们的教育体系下对于函数是怎么定义的。

初中教材用的是欧拉的方式:对于两个变量,如果前面的变量变化时,后面的变量也随之改变,我们称后面的变量为前面变量的函数。这可比莱布尼茨的定义要高级的多——虽然函数的名字他第一个提出的,但是他给出的定义相当依赖几何:任意随曲线的点变动而变动的量称为函数。

高中教材用的是黎曼的方式:如果x是一个变量,那对于它的每一个数值,都有变量y的某个值与之对应,我们说y是x的函数。黎曼的观点很先进,但是还不够严谨,因为没有排除“一对多”,而这是狄利克雷的工作——他严格限定函数的对应性质:一种数学对象称之为函数【而非关系】,那么对于变量x的每个值,都有变量y的唯一一个值与之对应。

因此,是狄利克雷限制函数只能“一对多”而不能“多对一”!这种限制就是数学上很有名约束条件:单值化原则。

再之后就是布尔巴基的定义,它的定义更为抽象,以现代的观点看,它可以说是目前为止最一般、最抽象的定义,因为它是基于集合的:一个对象称为函数,当且仅当在满足单值化原则的基础上,它是某些集合形成的笛卡尔积的子集。

例如,当满足单值化原则时由集合A形成的二元笛卡尔积A×A,它的某个子集就是一元函数,如果是三元的A×A×A,那么它就是二元函数。这里有两点要注意:

1.对于任意n元笛卡尔积A×A×...×A,我们要求,最后一个集合A不能为是空集,否则,即使它满足单值化原则,它的子集也不是函数。

2.我们不特意区分函数和映射的差别,虽然有的书上有所区别,但本文视为同一。

现在我们只关注一元函数,也就是满足单值化原则的二元笛卡尔积。

看前面的截图,它对于函数相等的定义是:有相同的定义域和对应法则。而我们要说的是,这个说法是错误的!为了清楚地叙述,我们定义全体函数值形成的集合叫函数的像【或者值域】,包含像的那个更大的集合叫目标域。通常的函数记号f:M→N中,A就是定义域,而B是目标域,而非像。

我们给出一个定义域、对应法则、像都相同但是却是不同函数的例子:

设三个集合,A={1,2,3},B={a,b,c},C={a,b,c,k}

考虑映射f:A→B,其中作为对应法则为1→a,2→b,3→c,为了叙述方便,我们将对应法则记为F,写成集合就是F={<1,a>,<2,b>,<3,c>},其中< >表示序对。显然,这三组序对的第一个元素形成的集合就是A,第二个元素形成的就是B,因此,f的定义域就是A,像就是B。作为序对的集合,F包含于A×B。

现在考虑映射g:A→C,其中对应法则G=F={<1,a>,<2,b>,<3,c>},重复上面的讨论的,g的定义域和像同f一样,但是g≠f,因为两者的目标域不同,这给出了两个映射的一种本质上的差别:f是单射,又是满射,进而是双射;但g只是单射,不是满射,因而不是双射。

如果按高中和前面图片定义的方式,似乎在具体计算时,两者拥有完全相同的函数值和定义域,无论你怎么算它们都是一样的,按输入与输出的角度,认为它们是不同的,似乎有点不妥。但是这种定量的分析不能完全体现函数的特点:

虽然布尔巴基把函数定义为“自变量-因变量”序对的集合——也就是说,对应法则就是函数本身,给定对应法则就能完全确定定义域和像。但那是集合的角度,在代数和分析的角度,像与目标域的差别是不可忽视的!像是函数在定义域和对应法则确定后,自动生成的,可以说它和定义域是同等地位的。而目标域的选择体现的是我们对当下数学研究内容的关心和侧重,它不只限于像,甚至可以这么说,大约90%的情况下它都不是像,原因很简单,一般来说,对于一个抽象的函数来说,我们无法得知它的对应法则,所以我们压根就不能判定该函数的像,因此你有什么理由一定认为它的像就是我们要研究的那些数学对象的集合呢?

从实用角度讲,正是因为要区分像和目标域的区别,我们才有了所谓满射的概念——一个函数是满射当且仅当像与目标域是同一集合。下面我们看一个代数的例子,如果你没学过,可以不用理解该定理的含义,只要读一遍表述即可。举例子的目的是想说,在具体的数学体系中,区分或者说强调满射是非常重要的。【其中的“群满同态”就是满射,其它的含义你可以不用关心】

群结构的对应定理

当代,一般书籍不太重视这种概念上的严谨定义,我读书不多,只在一本书上看过完善的定义:曼克勒斯的《拓扑学》。老人家给出的定义非常经典——两个函数f:A→B、g:A→C相等,当且仅当序对<F,B>和<G,C>相等。其中,f和g是非集合或者说通常数学意义下的函数,而F和G是相应函数的集合意义下的对应法则【即前面说的定义域与像的笛卡尔积的子集】,这些对应法则的确定,就相当于确定了每个函数的定义域和像,然后再通过规定它们各自的目标域也相同,从而完成了函数从集合到其它分支的融合。函数的这种相等是绝对的相等,无论在集合意义下,还是在代数与分析意义下。

最后我们简单聊一聊多值函数。

多值函数就是向量值函数,但是它并非简单的“一对多”。前面我们说过,狄利克雷把函数限制为允许多对一,不允许一对多,也就是说,一个单变量函数每次取值不可能有一个以上的函数值与之对应。那么向量值函数是那种允许“一对多”的“例外函数”吗?

答案是否定的。任何函数都不允许“一对多”。也就是说,无论它是什么函数,只要是“函数”,它就一定是不允许“一对多”。函数可以看成键盘,对于任意的电脑程序,每个按键只有以下两种情况:或者没有任何功能,或者只有一个功能。有些电脑程序,比如某些游戏,你可以在按键设置里规定两个不同按键实现同一个功能,比如名为《反恐精英》的电脑游戏,你可以规定“W键”和“↑键”都控制人物“向前走”。

但是如果你让“W键”既控制“向前走”又控制射击,这是系统不能实现的。一般来说,系统或者提示你,“W键”已经有“向前走”的功能,射击功能需要另选别的按键,或者系统直接选择替换——让“W键”控制射击功能,但是“向前走”的功能你需要另选一个按键重新绑定。

这就是函数的真实写照。为什么我们不能让函数一对多呢?原因就是为了避免不确定性。就像对一个班级的学生考试,可以有两个以上的学生是同一分数,但是你从没见过一个学生同时有两个不同的分数!

那么向量值函数所谓的“多值性”是怎么回事呢?

其实很简单,最经典直观的例子就是场函数了,我们用一个之前讲过的例子:把引力看成指向球心的向量场,那么引力场函数就是F(x,y,z)=(f1(x,y,z),f2(x,y,z),f3(x,y,z))。场函数是以空间点为自变量的,因此它有三个独立变量。右侧表示的是一个三维向量,每个分量都是某点处的引力向量在我们选定好的某个三维坐标系中的分量,这是向量常用的表达方式——选定好坐标系和基底后,任意向量都与其在该坐标系的分量一一对应。

我们当然也能看出每个分量也都是空间点的三元函数。虽然有时并不是每个维度的变量都会对每个分量的最终值提供实质贡献,但是在“形式数学”上,我们认为每个分量都是空间三个自由度的函数。

因此,向量值函数的多值性其实就是:向量值函数的“值”是一个多维向量,每个分量都是一个函数。向量值函数所谓的“一对多”或“多对多”其实指的是:向量值函数把自己的所有自变量依次分享给自己函数值的每个分量,使每个分量成为这些自变量的一元【一对多情形】或者多元【多对多情形】函数!

总结:华师的数学分析是一部经典教材,我以它为蓝本写的本文不是要说它有多么不好,只是想说,近现代数学的某些概念和定义已经不同以往了,我们在用这些经典教材时应该注意理解这些细节,不能因为它是经典而且出到了第五版就认为它已经至臻完善了。

标签: #n元运算的定义 #c语言里的函数和数学里面的函数有什么区别