线性代数的概念很多,我们的“马同学线性代数”通过如下的通俗易懂的方式进行讲解,感兴趣可以点击最下方的“
阅读原文
”报名参加。
数系从整数扩张到实数,其实并不是一件简单的事情。
光增加实数本身意义不大,对应的计算规则也需要跟着扩张。否则就好像兑换了比特币,但发现没有消费场景,这就尴尬了。
比如,我们知道:
通过极限理论,可以把乘方扩展到实数范围,比如:
那么,下面这两个针对正整数的运算是否可以扩展到实数范围:
-
阶乘:
-
求导:
阶乘是定义在正整数上的,比如:
那么:
定义0的阶乘等于多少,数学家最主要考虑的是自洽。
自洽的意思是说,数学是环环相扣的,增加一个新的定义,必须让之前的公理、公式都成立。否则得不偿失。
我们来考虑
的泰勒展开:
那么令
有:
已知
(关于这个的定义又是另外的故事了,这里不讨论),于是,必须定义:
才能让上面这个等式成立,才能自洽。
现在我们知道了:
放在坐标轴上也就是这些点:
要把阶乘扩展到实数:
-
首先,必须保证阶乘本身在自然数上的定义
-
其次,满足上一点的前提下,尽量找到“好”的扩展
以此为前提,最自然的想法就是找到一条穿过这些点的线,比如:
这种折线我们一般不考虑,性质不“好”,好多地方不可导,这样插值在数学里面意义不大。
通过,牛顿插值法(可以参考
此文
,或者
此文
):
看着还行,但是插值点多了之后(下面增加了
三个插值点),图像就很曲折:
伯努利、欧拉、哥德巴赫尝试过各种插值法(详见
神奇的伽马函数
)。
我这里介绍一种插值方法,考虑这个积分:
两边对
求
次导:
即得到:
令
,得到:
这个就是我们要的插值函数,稍微换一下符号,写作(高斯就是这么标记的):
此时有:
欧拉和勒让德把这个稍微改动了一下,就是现在用的Gamma函数:
此时有:
图像如下:
可能大家非常不习惯,为啥:
大家猜测这样定义的话,欧拉后来定义的beta函数会比较对称:
否则按照高斯的标记法,beta函数得长这个样子:
可能到时候同学们又会抱怨beta函数难以记住了。
哎,总之阴差阳错,gamma函数就是长这个样子了。就好像圆的周长是:
为什么会多个 2 啊?这也是欧拉给我们留下的数学遗产。
其实,能够完成插值的函数不止一个,有非常多,比如:
再比如:
要我说,上面这两个插值函数还好一些,不像Gamma函数在
的时候,还有非常多的点取不到值,也不单调。
那么数学家到底怎么选择?怎么判断哪一个更“好”?直到Bohr-Mullerup定理出现,才算有了一个标准。
Bohr-Mullerup定理说的是,Gamma函数是唯一在定义域
中,满足以下三个条件的函数:
前面两个条件不说了,以上的插值函数都满足,数学家最看中的是最后一个条件。
最后这个条件说明这个函数性质良好(可以参看
Importance of Log Convexity of the Gamma Function
),在可选的插值函数中选择一个这样的函数,数学家还算满意。