Hahn–Banach:延拓、支撑与分离
在子空间 M 上,我们已经知道一个线性泛函 u 的全部取值。现在想把它扩展到更大的空间 X,同时不让范数变大。这个要求听起来像是“补上缺失的坐标”,但真正困难的地方在于:新加的方向和 M 里的所有向量都可能发生抵消,随便指定一个值,很快就会破坏有界性。
不妨先看平面。只知道横轴上的读数 u(t,0)=t,延拓必然有 U(x,y)=x+λy 的形式。沿纵轴读多少,全由 λ 决定。换一种平面上的范数,允许的 λ 就可能从一个区间缩成一个点。我们从这个可计算的问题出发,看看一般空间里为什么也总能选到合适的新值。
延拓得到的泛函还可以当作一把有方向的尺子:某个集合里的读数全在一边,集合外一点的读数在另一边,就把它们分开了。贯穿这些论证的是线性与凸性;空间是否完备,反而不影响 Hahn–Banach 定理本身。

两个平面分别表示 U1(x,y)=x+y 与 U2(x 的读数。它们在 上都等于 ,离开这条轴后才出现分歧。延拓要保持的是原子空间上的所有取值。
从一个方向开始延拓
设 X 是赋范线性空间,标量域记作 K,它可以是 R 或 C。X∗ 表示所有连续线性泛函的空间,泛函的范数是
∥f∥=∥x∥≤1sup∣f(x)∣.如果 M⊂X 是线性子空间,u:M→K 线性且
∣u(m)∣≤C∥m∥(m∈M),那么 u 在 M 上已经有一个斜率上限 C。我们要找的是 U:X→K,满足 U∣M,并且仍有 。
代数上唯一的自由度
先只加入一个不在 M 中的向量 x0。每个
y=m+αx0(m∈M, α∈K)的表示是唯一的:若 m+αx0=m′+α′x,则 ;因为 ,只能有 ,继而 。
因此,任何延拓都只能写成
uλ(m+αx0)=u(m)+αλ,其中 λ 是我们要挑选的 U(x0)。线性没有留下别的选择。问题变成:能否找到一个 λ,使所有 m+αx0 同时满足范数估计?
下面暂时只处理实空间。为了以后能用于凸集,把 C∥x∥ 换成一个有限的次线性函数 p:X→R,并假设已有 u(m)≤p(m)。次线性指的是
p(x+y)≤p(x)+p(y),p(tx)=tp(x)(t不要求 p 对称,甚至不要求它非负。现在要维持的也是单侧控制 uλ≤p。把这个要求分别写在 m+x0 和 上,得到:
u(m)+λ≤p(m+x0),u(m)−λ≤p(m−x0),这两组不等式等价于
u(m)−p(m−x0)≤λ≤p(m+这些不等式会不会互相冲突?取任意 m1,m2∈M,原有的控制与次可加性给出
u(m1)+u(m2)=移项后,每一个下界都不超过每一个上界。因此,记
L=m∈Msup(u(m)−p(m就有 L≤R。这不是一个端点可能无限大的假区间。取 m=0 给出 L≥−p(−x0)、;再用每个下界不超过 的上界、每个上界不小于 的下界,得到
−p(−x0)≤L≤R≤p(x0).所以可以选一个实数 λ∈[L,R]。系数不是 ±1 时也没有漏掉:若 α>0,
uλ(m+αx0)=若 α=−t<0,改用另一个不等式,
uλ(m−tx0)=tα=0 就是已有的 u≤p。这样,所有新向量都得到控制,而不是只验证了两个特殊方向。

蓝色区域只示意上下约束夹出的允许范围;红色射线代表待检查的候选,并不全是反例。真正的上下界要由每个 m∈M 给出的不等式取上确界、下确界得到。
实 Hahn–Banach 定理
定理(实次线性形式)。 设 X 是实线性空间,p:X→R 次线性,M⊂X 是线性子空间,u:M→ 线性且 。则存在实线性泛函 ,使得
U∣M=u,U(x)≤p(x)(x∈X).上面的“一步延拓”说明,若 u 已经定义在 M 上,就能把定义域扩展到 M+Rx0,并保持 U≤p。为了扩展到整个 ,考虑所有满足条件的对 ,其中 , 且 。排序时必须同时要求定义域扩大和取值相容:
(N1,v1)⪯(N只比较定义域会漏掉第二个要求,同一个子空间上的两个不同泛函就无法区分。
这里使用的集合论工具是 Zorn 引理:一个非空偏序集若每条全序链都有上界,就有极大元。现在这组延拓至少包含原来的 (M,u)。一条全序链的定义域的并仍是线性子空间,因为并集里的任意两个向量总能放进链上的同一个较大子空间;因为链中的泛函在交叠部分彼此相容,可以把它们拼成并集上的一个泛函,而且每个向量都来自链中的某一项,所以仍满足 v≤p。Zorn 引理给出极大对 (N,V)。如果 N,选 ,一步延拓就能得到更大的对,这和极大性矛盾。因此 ,定理得证。
把 p 取成 C∥⋅∥,就得到常用的范数形式。因为对实线性 U,U(−x)=−U(x),所以 同时也给出 ,即
∣U(x)∣≤C∥x∥.完备性没有出现在延拓定理的假设里。Banach 空间当然可以使用 Hahn–Banach,但定理本身对任意赋范空间都成立;把“赋范”误读成“Banach”会让很多应用的适用范围无故变窄。
复 Hahn–Banach:实部负责延拓,旋转负责恢复
复数情形不能把实情形的区间选择直接照搬,因为 U(x0) 不在实轴上,而是要在复平面中选择。好用的办法是暂时忘掉复数乘法,只延拓实部。
设 M 是复线性子空间,u:M→C 复线性,满足 ∣u(m)∣≤C∥m∥。令
g(m)=Reu(m).把 M 看成实线性空间,g 是实线性泛函,并且 ∣g(m)∣≤C∥m∥。由实 Hahn–Banach,存在实线性 G:X→R,满足 且 。定义
U(x)=G(x)−iG(ix).先检查复线性。U 已经实线性,而且
U(ix)所以 U(αx)=αU(x) 对所有复数 α 成立。对 m∈M,复线性与 u 的复线性给出
ReU(m)=G(m)=Reu(m),并且对 im 也成立;因为 G(im)=Re(iu(m))=−Imu(m),代入定义就得到 U(。
还要检查范数不能变成 2C。由 ReU=G,对每个 x 有
∣U(x)∣=θ∈RsupRe(e因此得到复形式:若 u 是复线性且 ∣u∣≤C∥⋅∥,就存在复线性延拓 U,满足同样的估计。
只把 Reu 延拓成一个实线性泛函还不够。直接写成 G(x)−iG(ix) 后,必须检查复线性和范数估计;范数估计依赖对所有相位 e 的旋转,而不是简单使用三角不等式得到的 。
范数形式与范数保持
定理(范数形式)。 设 M 是赋范空间 X 的线性子空间,u:M→K 连续线性,则存在 U∈X∗,使得
U∣M=u,∥U∥=∥u∥.证明中的关键顺序是:先用 C=∥u∥ 得到 ∣u(m)∣≤C∥m∥,再延拓得到 ∥U∥≤C;另一方面,限制不会增加范数,所以
∥u∥=∥U∣M∥≤∥U∥.两边合起来就是等号。这里 u=0 时取 U=0 即可。
相同的限制,不同的延拓范围
把开头的例子稍微放宽:横轴上 u(t,0)=at,其中 ∣a∣≤1。固定 b>0,分别用
p1(x,y)=∣x∣+b∣y∣,p作为平面的范数。延拓 Uλ(x,y)=ax+λy 相对于它们的范数是
∥Uλ∥p1第一个式子可以直接估计:∣ax+λy∣≤max{∣a∣,∣λ∣/b}(∣x∣+b∣y∣),再分别取横轴、纵轴上的单位向量得到下界。第二个式子令 ,把泛函写成 ,用 Cauchy–Schwarz 并沿系数向量方向取等;系数全零时两边都为零。
因此,“控制在 1 以内”给出的可选范围分别是
∣λ∣≤b,∣λ∣≤b1−a2别把这个条件和保持原范数混淆。横轴上的原范数为 ∣a∣,所以保持范数的延拓在第一种情形要求 ∣λ∣≤b∣a∣,在第二种情形只能取 λ=0。
先把 a=1,b=2,预测两种范数下可选的 λ。在实验中切换单位球,再把 a 改为 1/2,比较“上界为 1”与“保持原范数”两条要求。拖动 λ 越过可行区间时,找出图上哪个单位输入率先违反上界。
Hahn–Banach 保证至少存在一个保持范数的延拓,没有保证唯一。这里菱形球与椭圆球给出不同的答案,恰好把“存在”和“唯一”分开。
Minkowski 泛函把凸集变成上界
延拓定理需要一个次线性上界 p。在几何应用里,这个上界通常不是现成的范数,而是由一个凸集产生的 Minkowski 泛函。
这一节在实赋范空间中讨论;若原空间为复空间,先把它看成底层实空间。设 C⊂X 满足:C 非空、凸,且 0∈intC。定义
pC(x)=inf{t>0:x∈tC}.这里 tC={tc:c∈C}。因为 0 有一个邻域包含在 C 中,对任意 x,取足够大的 t 就能让 ,所以 是有限实数。
正齐次性
对 s>0,有
pC(sx)当 s=0 时,pC(0)=0,所以对所有 s≥0 都成立。
次可加性
给定 ε>0,可以选 a,b>0 和 c1,c2,使得
x=ac1,y=bc2,并且
a<pC(x)+2ε,b<于是
x+y=(a+b)(a+bac两个系数非负且和为 1,凸性说明括号中的向量仍在 C 中。因此
pC(x+y)≤a+b<pC由于 ε 可以任意小,得到
pC(x+y)≤pC(x)+p如果 C 还是平衡的,即 ∣λ∣≤1 时 λC⊂C,那么
pC(λx)=∣λ∣pC(x)(λ∈K).实标量只需处理负号;复标量则把 λ 分成模长 ∣λ∣ 和相位 λ/∣λ∣,平衡性保证相位不会改变 C。这时 pC 是一个半范数;若 还是有界的平衡凸集且 ,那么 本身就是范数。为了检查正定性,取 使 对所有 成立。若 ,必有 ;取下确界得到 ,所以 只能发生在 。复空间中说“平衡”,需要对所有模不超过 的复数都成立,只有实数缩放不够。
最熟悉的例子是闭单位球 BX={x:∥x∥≤1}。它的 Minkowski 泛函正好是原范数:。因此,范数延拓定理可以看成次线性延拓定理在单位球上的一个直接应用。
开集条件怎样进入证明
取 r>0 使开球 B(0,r)⊂C。对任意 t>∥x∥/r,都有 ,所以
0≤pC(x)≤r∥x∥.次可加性还给出 pC(x)−pC(y)≤pC。交换 ,便有
∣pC(x)−pC(y)∣≤r因此这个上界是连续的。这里没有用到对称性,因为对 x−y 和 y−x 都有同一个范数估计。
如果 C 本身是开集,则还有一个重要的对应关系:
C={x:pC(x)<1}.对 x∈C,开性允许沿射线稍微向外走:某个 ε>0 满足 (1+ε)x∈C。于是 ; 时也成立。反过来,若 ,可以选 使 ,再用 与凸性得到 。
例如 C={(x,y):x2+4y2<1} 时, 的条件等价于 ,所以
pC(x,y)=x2+4y2沿纵轴走同样远,这把尺子的读数是横轴上的两倍。凸集的形状已经进入了次线性上界。
用 Minkowski 泛函分离一个点与开凸集
我们先证明一个构造性引理。
引理。 设 U⊂X 是非空开凸集,x0∈/U。则存在连续实线性泛函 F,使得
F(x)<F(x0)(x∈U).取 a∈U,令 D=U−a,z=x0−。则 且 。考虑 ,并在一维空间 上定义
g(tz)=t.我们检查 g≤pD。当 t≤0 时,g(tz)=t。当 时,若 ,就存在 使 ,从而 。由于 且 凸,,这会推出 ,矛盾。因此 。
实 Hahn–Banach 给出 F0:X→R,满足 F0∣R 且 。因为某个半径 的球 ,有 ;对 和 分别使用 ,得到
∣F0(y)∣≤r∥y∥.所以 F0 连续。对 x∈U,x−a∈D,而 D 是开集,所以 ;于是
F0(x−a)<1=F0(z).由于 F0(z)=1,这个泛函不为零。令 F=F0,在上式两边加上 ,就得到 。平移改变的是比较的常数,没有把线性泛函改成仿射函数。
两个凸集的分离
设 A,B⊂X 非空、凸且不交,并且 A 是开集。令
C=A−B={a−b:a∈A, b∈B}.C 仍然开且凸,且 0∈/C。将上面的引理用于 U=C 与 x0,得到连续实线性泛函 ,使得 。因此
F(a)<F(b)(a∈A, b∈B).固定 b0∈B 后,F(b0) 控制所有 F(a) 的上界;固定 后, 控制所有 的下界。两个集合非空,因而这里的上确界与下确界都是有限实数。于是可以取一个实数 ,使
a∈AsupF(a)≤α≤b∈Binf从而超平面
H={x∈X:F(x)=α}分离 A 与 B。注意这里的“严格”是逐点严格:如果集合之间的距离没有正下界,不能擅自把它改写成存在统一的正间隔。

在平面里,非零线性泛函的等值集是一条直线。分离要求点与凸集落在适当的两侧;能否留出统一的正间隔,还要检查集合的闭性与紧性等条件。
选方向,也要检查两侧的读数
考虑闭椭圆 K={(x,y):x2/r2+y2/,其中 。取单位法向 ,沿这个方向的最大读数为
hK(n)=v∈Kmaxn⋅v=令 v=(ru,sw),u2+w2≤1,就能用 Cauchy–Schwarz 得到上界;在 沿 方向时取等。接触点因而是
q=(hK(n)r每个方向都产生支撑线 n⋅v=hK(n),但它未必能分离你指定的点 z。要把 z 放到线的外侧,还需检查 n。两者的差是沿单位法向的间隔;它随方向变化,不自动等于点到椭圆的最短距离。
取 r=1,s=1/2,z=(1,1),转动法向,找出能分离的角度。把 z 拖进椭圆,再预测是否还可能出现正间隔。记录一个成功和一个失败的方向,比较它们的支撑线:两条线都接触椭圆,区别在点位于哪一侧。
若 z 在边界上,可以出现间隔为零的接触;若 z 在内部,所有方向的间隔都小于零。对外点,只是选错方向也会得到负间隔,因此一次失败不能否定分离定理。
支撑泛函:在球面上放一张切平面
定义与存在性
对 x0=0,称 f∈X∗ 是 x 处的支撑泛函,如果
∥f∥=1,f(x0)=∥x0∥.在复空间中,若某个单位范数泛函满足 ∣f(x0)∣=∣x0∣,把它乘以适当的单位复数,就能让 f(x 成为正实数。这里采用的正是这个归一化。
构造很短,但每一步都值得保留。在线性子空间 Kx0 上定义
u(αx0)=α∥x0∥.它是良定义的,因为 x0=0;并且
∣u(αx0)∣=∣α∣∥x0∥=∥αx所以 ∥u∥=1。用范数形式的 Hahn–Banach 延拓到 f∈X∗,得到 ∥f∥=1 且 。
对单位向量 e=x0/∥x0∥,实空间的单位球满足
f(y)≤1(∥y∥≤1),f(e)=1.所以 f(y)=1 是单位球在 e 处的一张支撑超平面。在复空间里,把 f(y)≤1 换成
Ref(y)≤1来理解几何支撑,因为复数没有自然的大小顺序,而实部给出了底层实线性空间上的半空间。

支撑线让整个凸集留在一侧,同时接触边界。支撑不是严格分离:接触点与支撑线上的读数相等。
例题:在 ℓ¹ 的球面上找支撑泛函
在 X=(R2,∥⋅∥1) 中,令 x=(2,。求一个满足 且 的线性泛函,并写出对应的支撑直线。
先判断方法。Hahn–Banach 只能保证延拓存在;在二维
ℓ1 空间中,直接利用
ℓ1 与
ℓ∞ 的对偶范数更快,因为泛函
的范数是
。
这里体现了两种方法的分工:抽象证明告诉我们任何赋范空间都有支撑泛函,有限维的对偶范数则让我们能把它写出来。

这里画的是欧氏圆球,图中的支撑线只接触一个点。前面的 ℓ1 单位球是菱形,某些支撑线会沿整条边接触;不能把圆球的唯一接触点直接套到所有范数上。内侧虚线表示较小的同心球,不是泛函的等值线。
点与闭子空间的分离
距离是闭性带来的正数
设 M 是 X 的线性子空间,x0∈/M。定义
d=dist(x0,M)=m∈Minf∥若 M 闭,则 d>0。否则可以找到 mn∈M 使 m,闭性会推出 。这一步不能省略:当 不闭时,点可能离 的距离为 。对于这样的点,连续泛函不可能在 上为零、在 上取非零值。
用一维定义构造分离泛函
在 M+Kx0 上定义
u(m+αx0)=αd.良定义性来自 x0∈/M。当 α=0 时,
∥m+αx0∥因此 ∣u(m+αx0)∣≤∥m+αx0∥; 时不等式显然成立。Hahn–Banach 给出 ,满足
f∣M=0,f(x0)=d,∥f∥=为什么范数确实等于 1,而不仅是小于等于 1?对任意 m∈M,有 f(x0−m)=d,所以
∥f∥≥∥x0−m∥∣f(x令 m 沿着逼近距离下确界的序列变化,右端趋近 1,于是 ∥f∥≥1。
这给出一个很实用的判别:闭子空间可以被连续线性泛函“看见”,而泛函在 M 上全部为零,却在 x0 上留下了恰好等于距离的读数。
例题:C[0,1] 中的端点约束
取 X=C[0,1],范数为 ∥g∥∞=max0,令
M={g∈C[0,1]:g(0)=g(1)},x求 dist(x0,M),并构造范数为 1、在 M 上为零的泛函。这里可以选择直接找端点差,也可以完整使用距离延拓方法;哪一种更合适?
先看距离的下界。若
g∈M,记公共端点值为
c。则误差
h=x0 满足
、
,所以
。因此距离至少是
。
双对偶中的等距嵌入
令 X∗∗=(X∗)∗。每个 x∈X 都可以让泛函“在 处取值”,于是定义
J:X→X∗∗,J(x)(f)=f(x)(f∈这个定义有三件事要检查:J(x) 确实是连续线性泛函,J 本身线性,以及范数恰好保持。
对固定的 x,J(x) 对 f 线性;而且
∣J(x)(f)∣=∣f(x)∣≤∥f∥∥x∥.所以 J(x)∈X∗∗,并得到
∥J(x)∥≤∥x∥.另一方面,若 x=0,支撑泛函定理给出 fx∈X∗,满足 且 。于是
∥J(x)∥≥∣J(x)(fx)∣=∣f结合上下界,
∥J(x)∥=∥x∥(x∈X).当 x=0 时等式显然成立。J 还是线性的,因为对任意 f∈X∗,
J(αx+βy)(f)=f(αx+βy)=αf(x)+因此 J 是等距线性嵌入,特别地是单射。
若这个自然映射 J 还是满射,空间才称为自反;仅仅存在别的同构并不是这里的定义。本章证明的是无条件成立的等距嵌入 J:X↪X∗∗。不要把单射误写成满射,也不要把赋范空间自动写成 Banach 空间。

J 把 x∈X 送入 X∗∗。固定 x 以后,J(x) 的输入是 ,输出才是标量 ;它不是又把向量当作输入。
练习:从延拓到迁移
做延拓题时,先写出所有可能的线性形式,再用上界筛掉不合适的系数。几何题则需要把“分开”翻译成两个可以比较的读数。下面几道题会分别用到这两种做法。
概念检查
1关于 Hahn–Banach 范数形式,下列哪项是正确的?
2若 M 是不闭的真线性子空间,也总能找到连续泛函 f,使 f|M=0 且 f(x0)=1,其中 x0 不属于 M。
3要把 C 的 Minkowski 泛函用作全空间上的有限次线性上界,哪些条件有直接作用?
4闭单位球 B_X={x:||x||≤1} 的 Minkowski 泛函是 ____。
巩固:把一维延拓写完整
设 X=R2,p(x,y)=∣x∣+2∣y∣。在 上定义 。
- 证明 u≤p,并求出所有能把 u 延拓成 U(x,y)=x+λy 且满足 U≤ 的 。
在 M 上,
u(t,0)=t≤∣t∣=p(t,0),所以
。
应用:闭子空间的距离证书
在 ℓ1 中令
M={x=(xn):n=1∑证明 M 是闭子空间,求 dist(e1,M),并构造范数为 1、在 M 上为零的泛函。
定义
s(x)=∑nxn。由
,
是连续线性泛函,且
,所以 M 闭。
变式:复延拓中的相位
令 X=(C2,∥⋅∥2),x=(1,i,。定义 。
- 求 ∥u∥。
- 找出一个复线性延拓 U(z1,z2)=az,并验证它保持范数。
因为
∥x∥2=2,所以
,从而
。
几何应用:从椭圆外一点找分离泛函
在 R2 中令
C={(x,y):x2+4y2<1},选一个线性泛函,将 C 与点 z 分离,并写出你用到的估计。不要只写“由分离定理存在”。
取
F(x,y)=x+4y。对
(x,y)∈,把它写成
,Cauchy–Schwarz 给出
。
迁移:泛函分离点与稠密性
设 M 是赋范空间 X 的线性子空间。证明:
M=X⟺(f∈X∗, f∣若
M=X 且
f∣M=,连续性给出
。因为
,所以 f=0。
综合:检查双对偶映射的每一处条件
对任意 x∈X 定义 J(x)(f)=f(x)。请分别说明:为什么 J(x) 属于 X,为什么 线性,以及为什么 。若删去 Hahn–Banach,只保留泛函范数定义,证明会卡在哪一步?
固定 x 后,
J(x) 对 f 线性;并且
∣J(x)(f)∣=∣f(x),所以
连续且
。
可行区间未必关于零对称
把上面巩固题的控制函数换成 p(x,y)=∣x+y∣+∣y∣,仍令 u(t,0)=t。求所有满足 的 ,并说明这个区间为什么不必关于零对称。
令 x=−y,必要条件变为 (λ−1)y≤∣y∣,正负两个方向合起来给出 ∣λ−1∣≤。反过来,若该条件成立,则
一个不能当作范数的 Minkowski 泛函
令 C={(x,y):x<1}。验证它满足本章构造次线性函数的条件,求 pC,并指出它为什么不是范数。
C 开、凸,且包含原点的一个邻域。对 t>0,(x,y)∈tC 等价于 x<t。若 ,允许的 恰为 ,下确界是 ;若 ,任意 都允许,下确界为零。故 。它在很多非零向量上为零,也不关于原点对称,因此不是范数。有限、连续、次线性本身还不够。
一个边界点可以有多少个支撑泛函
在实二维 ℓ1 空间中,分别求单位向量 e1=(1,0) 与 v= 处的全部支撑泛函。
写成 f(x,y)=ax+by,其范数为 max{∣a∣,∣b∣}。在 e 处要求 ,所以所有 都给出支撑泛函。对 ,条件为 ,而 。只有 能取到这个最大值。因此菱形的顶点有多个支撑方向,边的内部点却只有一个。不要把球面上一段接触点与某个固定点处有多个支撑方向混为一谈。
等距嵌入的像何时闭
设 X 完备。证明自然嵌入的像 J(X) 是 X∗∗ 的闭子空间。能否仅凭这个结论就说 X 自反?
若 J(xn)→Φ,等距性给出 ∥xn−。完备性提供 ,再次用等距性得到 。极限唯一,故 。这正是第二章的“完备子空间必闭”在这里的应用。闭子空间仍可能是真子空间,不能据此断言 满射。
本章回看
回到横轴上的 u(t,0)=t:线性只告诉我们延拓的形式,真正决定新方向可以读多少的是空间的范数。一般空间里,我们用次线性上界把所有限制放在同一个区间中,才得到存在性。换到凸集,这个上界由集合的形状产生;换到双对偶,则需要为每个非零向量找到一个读数达到其范数的泛函。以后再用 Hahn–Banach,值得停下来辨认的就是这件事:这次要延拓哪个小空间上的泛函,它要替我们保留什么信息?