从点列收敛问题看泛函分析的内容

在微积分、实变函数和泛函分析中,有大量涉及到收敛问题的讨论,十分有必要进行总结,否则会将各种收敛的概念,定理交织在一起,难以搞清楚它们到底有什么区别,最后的目的是什么。下面我们先讨论各种收敛的概念并进行比较,主要从他们的本质特征出发进行讨论,然后讨论收敛的意义和作用,进而概括一下泛函分析研究的主要内容。

1.收敛的通用表达

学习完泛函分析以后,只要看到收敛,首先要考虑的不是函数列或者数列,而是首先想到空间的概念,然后考虑空间的点特征属性,将所有的收敛问题,统统放到空间的概念里面考察。具体说,首先是分析点列中点的属性,收敛具体的含义,然后需要确定的是:

(1)什么空间的收敛问题:具体的空间有测度空间,度量空间,赋范线性空间,Banach空间,内积空间,希尔伯特空间,拓扑空间等等;度量空间为一般普遍空间,需要首先分析其距离的定义。

(2)这个空间的距离定义问题:如果是一般的度量空间,就需要立刻弄明白怎样定义距离才能保证具体问题的收敛和依距离收敛相一致,如果是赋范线性空间以及其它特殊赋范线性空间,就要立刻弄清楚怎样定义范数,事实上赋范线性空间的距离可以通过范数计算出来,因此可以统一的说成空间的距离怎样定义。

(3)将具体的收敛问题转化为空间的点列按照距离收敛问题。所谓按照距离收敛,就是一个点列和一个点的距离趋于零。一般度量空间的点列收敛最具有普遍性,因此我们将收敛的严格定义摘抄一下:设$R$为一个度量空间,$x_n,x{\in}R(n=1,2,{\cdots})$,当$n{\to}\infty$时,数列$p(x_n,x){\to}0$,就说点列$\left\{x_n\right\}$以距离$p(x,y)$收敛于$x$,记作$x_n{\to}x$,或者$\lim_{n{\to}\infty}x_n=x$,这个时候称$\left\{x_n\right\}$为收敛点列,$x$为$\left\{x_n\right\}$的极限。这个定义的关键是要找到$\left\{x_n\right\}$和$x$的距离公式

只需要把握住上述三个步骤,就不会被各种各样的收敛说法搞晕头。我们下面看一些具体的收敛问题。

(1)实数点列的收敛问题

具体表达为实数点列$\left\{x_n\right\}$收敛于实数点$x$,按照上面的步骤分析,此处点列和收敛的点都是实数,这是它们共同的特征,因此他们属于一维实数空间,这是最简单的度量空间,而这个空间的距离定义就是$p(x_n,x)=|x_n-x|$,也即两个实数的绝对值大小,这和实数列收敛相一致。我们只要套用度量空间点列收敛定义立刻就可以写出实数点列$\left\{x_n\right\}$收敛于实数点$x$的具体定义,其实就是将$p(x_n,x)$换成$|x_n-x|$即可,也就是将距离公式具体取为绝对值。这是微积分课程中最基本的点列收敛问题,很容易接受,因为和生活最为相关。我们分别用微积分中的实数列收敛定义和上面的度量空间的点列收敛定义相比较就一目了然了。这种收敛所在的空间是$(E^1,|x-y|)$。

(2)连续函数列一致收敛(均匀收敛)

这是微积分初学者接触到的又一个函数收敛问题,这种收敛的具体定义如下:设连续函数列$\left\{f_n(x)\right\}$和连续函数$f(x)$都定义在一个闭区间$[a,b]$上,如果对于任意$\varepsilon>0$,总存在一个自然数$N$,使得对于任何自然数$n_0(n_0{\ge}N)$和该闭区间任意一个$x_0$,都有下面式子成立:

$$ |f_{n_0}(x_0)-f(x_0)|<\varepsilon $$

这种定义如果仔细分析一下还是能够理解的,问题是会很快忘记。一直很难将函数列一致收敛和逐点收敛区分开来。

现在我们使用上面的方法来分析这种收敛。首先将函数列和收敛的函数看作一个点,由于是连续函数,立刻可以确定是全体连续函数构成的空间,这时需要定义空间的距离,由于对于${\forall}x_0$,都有$|f_{n_0}(x_0)-f(x_0)|<\varepsilon$,显然可以这么定义距离$p(f_n(x),f(x))=\max_{x{\in}[a,b]}|f_n(x)-f(x)|<\varepsilon$,因为这样定义的距离和上面一致连续定义的等价,而这个距离定义可以由$\|f(x)\|_{\infty}=\max_{x{\in}[a,b]}|f(x)|$导出,于是该函数列收敛问题归纳为$(C[a,b],\|{\cdot}\|_{\infty})$赋范线性空间点列的收敛问题,这一下子就彻底理解了,和上面度量空间的点列收敛定义一样,就是点列和收敛点之间的按照范数定义的距离趋于无穷小。很显然只要记住空间的距离定义,那么点列收敛,函数列一致收敛就变得极其自然和容易理解了。我们很容易分析这种理解变得简洁,统一和标准化的原因就是考虑收敛问题的时候,将复杂的函数列收敛定义封装到距离的定义上面,使得问题一下子从宏观上变得清晰了。在赋范线性空间里面的这种以距离收敛,我们称之为以范数收敛(强收敛) 。

我们这里举出一个不一致收敛的例子,也就是$f_n(x)=x^n$在$[0,1]$上不一致收敛于任何函数。其实从$C[a,b]$赋范线性空间上考虑,点列$\left\{f_n(x)\right\}$在该空间根本就不是基本点列,自然不会收敛了,根据度量空间基本点列的定义,这种定义当然和点列收敛定义一致,而且也是简洁,明晰的。可见基本点列定义很有用,因为当我们不知道它是否收敛的时候,我们可以使用基本点列的定义来判断。当然不是连续函数列也可以转化为空间点列的一致收敛问题,只不过这个空间不是连续函数空间,而是一般函数空间了。

这种收敛所在的空间是$(C[a,b],\|{\cdot}\|_{\infty})$。

(3)函数列的逐点收敛

逐点收敛就是函数列取定某一个区间内的点得到的函数值数列都收敛,也就是对于${\forall}x_0$都有$f_n(x_0){\to}f(x_0)$,所有的这些收敛的点作为因变量就构成一个函数,就是函数列逐点收敛于该函数,估计所有微积分的初学者对这个概念都完全理解和接受,因为本质上就是实数列收敛,只不过可以看成一个实数列的集合收敛于一个实数集,而实数列用一个函数列表达出来,实数集用一个函数表达出来而已。但是一个问题来了,我们怎样才能将这种逐点收敛也归于一个空间的点列,然后使用距离来描述这种收敛,以达到标准,统一和简洁的效果呢?这个问题的本质完全取决于如何定义距离,使得基于定义距离的收敛和所有基于函数值绝对值的逐点收敛等同,只要找到这个距离定义就可以了。

我们先给出逐点收敛的一般定义:设$X$是一个集合,$R(X)$表示$X$上的实函数全体。又设$\left\{f_n\right\}{\subset}R(X),f{\in}R(x)$,如果对${\forall}x{\in}X$,有$\lim_{x{\to}\infty}f_n(x)=f(x)$,那么称函数列$\left\{f_n\right\}$在$X$上处处(逐点)收敛于$f$。

现在我们可以分两种情况讨论,一种情况是 $f_n(x)$的定义域是可数集合,当然可以是有限集合,也即是$X=\left\{x_n|n=1,2,3,{\cdots}\right\}$,这个时候,我们将$f_n(x)$看做空间$R(X)$中的点,那么距离定义如下:

$$ p(f_n(x),f(x))=\sum^{\infty}_{i=1}\frac{1}{2^i} \frac{|f_n(x_i)-f(x_i)|}{1+|f_n(x_i)-f(x_i)|} $$

我们很容易验证上面的定义的距离和逐点收敛中所有点函数值数列收敛是保持一致的:假设对任意一个正数$\varepsilon<\frac{1}{2}$,在点$x_i$上满足$|f_n(x_i)-f(x_i)|<\varepsilon$,则有

$$ p(f_n(x),f(x))<\lim_{n{\to}\infty}(1-\frac{1}{2^n})\varepsilon=\varepsilon $$

同样若有$p(f_n(x),f(x))<\varepsilon$,则根据定义的距离公式,对于

$$ {\forall}x_i,|(f_n(x_i),f(x_i)|<\frac{\varepsilon}{1-\varepsilon}<2\varepsilon $$

由此立刻明白,这种定义域为可列集的函数列$\left\{f_n(x)\right\}$ 逐点收敛问题的确可以转化为依据以上距离的度量空间的点列收敛来研究。这也称为以坐标收敛。

第二种情况是当$X$不是可数集,即对于一般的实数区间,就无法定义 $R(X)$中的距离$p(f_n,f)$,使得$\left\{f_n\right\}$在$X$上处处收敛于$f$等价于$p(f_n,f){\to}0$。这个证明的基本思想是假如存在某个距离定义可以描述任何函数列处处收敛一个函数,记这个距离为$p(f,g)$,那么构建非连续函数列

$$ \varphi_k(x)=\begin{cases}1,x=r_1,{\cdots},r_n\\0,x{\neq}r_i(i=1,2,{\cdots},n)\end{cases} $$

其中$r_i$是全体有理点。处处收敛于Dirichlet函数,显然可以用$p(\varphi_k,D){\to}0$来描述这种收敛;接着寻找连续函数列$f_{k,n}(x)$处处收敛于$\varphi_k(x)$,这样的连续函数显然存在,因此我们一样可以用$p(f_{k,n},\varphi_k){\to}0$来描述这种收敛,于是显然有$p(f_{n,k}(x),D){\to}0$,也即连续函数收敛于Dirichlet函数,而这是不可能的。主要是如果可以收敛的话,那么就存在无理数全体可以用可列个闭集的和来表示,也就是可列集,这当然和无理数不可列矛盾。故对于定义域不是可列集时,是无法使用距离来描述收敛的,也就是不能转化为度量空间的点列考察收敛性。注意第一种情况定义的距离只能用来描述定义域是可列集的函数列收敛,此处的 $f_{k,n}(x),\varphi_k(x),D$三个函数的定义域都不是可列集。通过这个特例也说明了度量空间定义的距离解决不了一类点列的特殊收敛问题,也就是这种函数列的处处收敛问题,于是要拓展空间的概念,这个概念必须将度量空间作为拓展后的空间特例,也就是概念扩展以后要兼容拓展前的概念,于是引入了拓扑空间的概念,这个概念引入以后,给出了拓扑收敛的概念,函数列的处处收敛就是用拓扑空间的拓扑收敛来描述,而函数列就是拓扑空间的一个点列。这样就将函数的处处收敛也纳入到了空间的点列收敛的大概念里面去了,实现了收敛问题的统一化,标准化和简洁化。事实上拓扑空间概念的提出扩大的研究范围。

设$(S,\mathfrak{E})$是一个拓扑空间,$x_n$是$S$中的点列,$x{\in}S$,如果对于$x$的任何环境$O$,有自然数$N$,使得当$n{\ge}N$时,$x_n{\in}O$,则称$x_n$按照拓扑$\mathfrak{E}$收敛于$x$,我们将这种收敛记为$x_n\stackrel{\mathfrak{E}}{\to}x$,有时略写为$x_n{\to}x$,这就是拓扑收敛,简单来说:就是极限点的任何环境都含有点列中的点。

那么点的环境(领域)是什么意思呢?我们都知道度量空间中点的环境定义,拓扑空间中点的环境是从这种环境推广而来的,度量空间中把球$O(x_0,r)$称为点$x_0$的$r-$环境,同时把包含$x_0$的任何开集称为$x_0$的一个环境或者邻域。极限点的概念与拓扑敛在形式上完全一样。目前最大不同就是环境怎样定义的。度量空间中一个点的环境只能根据点与点之间的距离定义,因为开集中的内点就是根据距离定义的,因此度量空间的开集归根结底是由度量空间中的距离定义的。

那么拓扑空间中的开集是怎样定义的呢?拓扑空间的定义是:对于一个不空的集合 $S$,将一些$S$中的子集组成一个集类,这个集类中的集合只要满足3个条件就称为是拓扑,同时称这些子集为开集,开集也称为其包含任何一点的环境。空间是有结构的集合,而拓扑定义的这个集类满足3个条件,这就是子集之间有关系,那么点之间也有关系了,因此是可以称为空间了。我们注意的一点是度量空间,赋范空间中点与点之间的关系是通过和一个实数联系起来度量它们之间的关系的,而拓扑空间是通过点与点之间是否属于某一个开集来度量它们之间的关系的,不再通过一个实数来衡量。当然拓扑的概念包含度量空间的概念,即度量空间可以根据距离定义一个拓扑,也就是集类,也就是一些开集的集合。那么拓扑空间中的拓扑和度量空间的距离相比较,提供的概念更为宽泛,因为距离的定义必须满足非负性,三角不等式,条件还是太严格了,而拓扑只是说一些开集的集合组成集类,这些集类的并集和通集还在在这个集类中,这些条件相对宽泛了许多,那么这些开集怎么确定呢?这要具体问题具体分析,给的概念抽象了,那么自然研究的对象范围就扩大了,现在就可以给出一个更具体的拓扑空间,也就是一个集合,如果该集合中所有点的环境基组成的集类就构成一个拓扑,这个意思是明显的,就是这个集类就满足拓扑的三个条件,也即是空集和全集在这个集类中,交集和并集也在这个基类中,其实这也是显然的。那么什么是环境基呢?这个一句话就可以说清楚,那就是点的环境基里面的任何一个环境都包含该点的无穷多个环境,一个形象的例子就是平面上一个点,以它为圆心由很多圆组成一个圆的集合,如果任何一个圆里面都包含这个集合中的一个圆,那么所有的这些圆的集合就称为该点的环境基。其实就是无穷多个同心圆组成的集合,只不过这些同心圆半径要趋于0而已。这种通过环境基建立的拓扑空间最为常用,因此很多性质都是基于这种拓扑空间讨论的。现在我们讨论函数列的逐点收敛就是这种拓扑空间的拓扑收敛。

现在我们建立一个函数的环境基,然后再建立拓扑空间。考察集 $R(X)$中的任何一个子集$S$,对于每一个$f{\in}S$,每一个正数$a$和任意有限个$x_1,x_2,{\cdots},x_n{\in}X$,定义

$$ U(f;x_1,{\cdots},x_n,a)=\left\{g|g{\in}S,|g(x_v)-f(x_v)|<a,v=1,2,{\cdots},n\right\} $$

令$\mathscr{U}(f)=\left\{U(f;x_1,{\cdots}x_n,a)|n{\in}N,x_v{\in}X,a>0\right\}$,那么将$S$看成函数的集合,集合里面的函数$f(x)$看成点,那么定义的$\mathscr{U}(f)$就是点$f(x)$的环境基,这是容易根据环境基的定义验证的。容易得出$S$中所有函数对应的环境基组成的集合就是一个拓扑$\mathfrak{E}$,于是$(S,\mathfrak{E})$就是一个拓扑空间,而函数就是空间的点。我们看看$\mathscr{U}(f)$究竟是什么?仔细分析一下,就是 $S$中和$f(x)$在定义域中任意多个点的函数值绝对值小于任意给定一个正数的所有函数的集合。如果要进一步看明白的话,可以取一个具体函数,然后 取定$x_1$为一个具体值,$a$取定一个正数,满足该条件的函数有很多,然后再取$x_1,x_2$两个具体值,再这样做又得出一系列的函数,这样下去得到的所有函数组成的集合,就会发现它们合在一起形成的环境族满足环境基的概念。现在再转回来看,如果存在函数列$\left\{f_n(x)\right\},f(x)$都属于这个$(S,\mathfrak{E})$空间,我们就会发现$f_n(x)$处处收敛于$f(x)$就是$f_n(x)$以拓扑收敛于$f(x)$。我们只要直观的想一想就可以看到,这样定义的环境基就使得对于每一个$x_0{\in}X$,只要拓扑收敛于$f(x)$,就会有$|f_n(x_0)-f(x_0)|$越来越小。其实这里面理解的关键是$U(f;x_1,a),U(f;x_2,a),U(f;x_1,x_2,a),{\cdots}$,等等这些都是开集,它们是否包含$f$点呢?也就是是否包含$f(x)$,我们容易看到是包含的。如果$a$再取大于0的实数,我们发现这些开集总是存在一系列开集形成一个类似的闭球套,将点$f(x)$套在里面,而且越来越小,类似闭球套定理。现在我们发现函数处处收敛实质上就是定义一系列的开集套套住收敛的点,同时也套住了$\left\{f_n(x)\right\}$中的一些点,使用这个套子衡量函数列的点和收敛点的关系,进而给出收敛定义。我们看度量空间以距离收敛其实也是根据距离的大小生成一系列的开集套子,也是一层层的套住函数列的函数和极限函数,最后实现收敛定义的,那么直观上看为什么函数列处处收敛无法使用度量空间中的距离来定义这些套子呢?课就是度量空间是满足第一可列公里的,而函数列处处收敛不满足第一可列公里。进一步解释的话,就是度量空间中的每一点存在一个可列集作为环境基,而处处收敛函数构建的拓扑空间不存在这种环境基,进一步讲是因为$f(x)$,这个$x$是实数区间,故是不可列的,而定义环境基的时候,要为每一个实数点定义一个对应的环境也就是开集,显然这些环境或者开集当然不可能是可列的了。说到底,一个点列收敛能否放在度量空间里面描述其收敛性,就要看这个极限点和点列中的点之间的关系能否用是有限个实数或者可列个实数来描述,不能的话就只能通过构建拓扑空间,构建极限点的环境基来实现了。一个题外话就是极限点的环境基包含许多环境,只要其中存在一个层层具有包含关系,而且越来越紧的环境套就可以了,当然这个环境套定义的时候要根据具体点列收敛给出的概念描述来进行,越来越紧还是要借助其中的数值来定义。

这种函数列收敛的空间是$(R(X),\mathfrak{E})$,拓扑$\mathfrak{E}$定义见上面。

Last modification:February 12th, 2020 at 05:13 pm