注:本节内容为《具体数学》(原书第二版) 第三章 整值函数 3.5节 顶和底的和式的旁注。

背景

在 3.5 节底和顶的和式中,作者介绍了定理:

如果 α 是无理数,那么分数部分 {nα}n 时在 01 之间是非常一致分布的。即对于无理数 α 以及所有处处连续的有界函数 f

limn1n0k<nf({kα})=01f(x)dx

书中为了展示这个定理的意义以及正确性,研究特殊情况:令

f(x)=fv(x)=[0x<v], 0v1

来研究当 n 很大且 α 为无理数的情况下,和式

0k<nfv({kα})=0k<n[{kα}<v]

与定理所阐明的 n 时的理想值:

n01fv(x)dx=n01[0x<v]dx=nv

有多么接近。

然而书上的过程十分简略,看的时候令我十分头大,故专门撰写此文来完善推导。

推导

首先定义下面的函数 s(α,n,v):

s(α,n,v)=0k<n([{kα}<v]v)

其描述的是代求和式与理想值之间的差。所以我们定义其最大的绝对值 D(α,n) 作为偏差 (Discrepancy):

D(α,n)=max0v1|s(α,n,v)|

我们的目的是通过证明当 α 为无理数时,D(α,n) 总是 适当地 小,从而证明 D(α,n)n 相比 不太大。不失一般性,我们假设 0<α<1

首先我们可以将 s(α,n,v) 改写成简单的形式:

s(α,n,v)=0k<n([{kα}<v]v)=0k<n(kαkαvv)

上一步的理由如下:讨论:

(1) {kα}<v 时,
kαkα<vkαv<kαkα1kαv<kαkαv=kα1kαkαv=1

(2) {kα}v 时,

kαkαvkαvkαkαkαv<kα+1kαv=kαkαkαv=0

[{kα}<v]=kαkαv

然后引入一个新的指标变量 j

0k<n(kαkαvv)=nv+0k<njZ[kαv<jkα]

接下来交换求和顺序。注意:因为 αRQ,nZ,所以 nα 同样为无理数,由此来确定求和上下界。

=nv+0k<njZ[kαv<jkα]=nv+0j<nαk<n[kαv<jkα]=nv+0j<nαk<n[jα1<k(j+v)α1]

为了让式子不至于太过凌乱,引入新记号:

a=α1,α=α1a

b=vα1,v=bvα1

α={α1}

v=vα1  mumble  1

边界条件就是灾难之源,所以我们不妨先忽略 k<n,先专注于求解

k[jα1<k(j+v)α1]=(j+v)α1jα1=(j+v)(a+α)j(a+α)=ja+jα+v(a+α)jajα=jα+v(a+α)jα=jα+vα1jα=jα+bvjα=b+jαvjα

带入回原式:

s(α,n,v)=nv+nαb+0j<nα(jαvjα)S

其中,S 是对我们未能排除掉的 kn 的情况所做的修正。接下来,我们想将向上取整转换为向下取整,我们来考察这两个取整式:

(1) 对于 jα: 由于 α 为无理数,显然 α 也为无理数,所以当且仅当 j=0jα=jα

(2) 对于 jαv: 给定 α,v 的情况下,我们至多找得到 一个jZ 使得 jαv 为整数,即 jαv=jαv.

对于 (2) 的证明:

假设我们已经找到一个 jZ,使得

jαv=nZ

进行一下简单的代数变换:

j=v+nα

如果这样的 j 不止一个,那么我们一定会产生一个新的 nZ (因为 α0),所以有:

j=v+nα=v+n+Δnα=j+Δnα

jZ,αRQ,ΔnZjZ

这与 jZ 矛盾。Q.E.D.

所以:

s(α,n,v)=nv+nαb+0j<nα(jαvjα)S=nv+nαb+0j<nα(jαv+1jα1)S+{0 or 1}=nv+nαb0j<nα(jαjαv)S+{0 or 1}

看起来我们得到了很有意思的东西,并不是封闭形式,而像是递归式。回忆一下,我们有:

s(α,n,v)=0k<n(kαkαvv)

这里我们更换一下参数,就会发现其与我们得到的式子中的和式非常相似!

s(α,nα,v)=0j<nα(jαjαvv)=nαv+0j<nα(jαjαv)

带入回 s(α,n,v),我们可以得到:

s(α,n,v)=nv+nαbnαvs(α,nα,v)S+{0 or 1}=nv+nα(bv)s(α,nα,v)S+{0 or 1}=nv+nαvα1s(α,nα,v)S+{0 or 1}

观察框出来的地方:假如我们能将 nα 替换为 nα,一切都可以变得简洁,前面的项会全部被抵消:

s(α,n,v)=s(α,nα,v)S+ϵ+{0 or 1}

其中,ϵ 为这样做的误差。

接下来,我要在这里求出并证明 ϵS 的上界。此处包含了习题 18 的内容。

(1) ϵ 的上界:

0<ϵ=(nαnα)vα1<vα1

(2) S 的范围:

S=0j<nαk[nk<(j+v)α1]

jnα2

j+vαnα2+vαnα1α<(nα+1)1α=n

0j<nα1k[nk<(j+v)α1]=0

0S=j=nα1k[nk<(j+v)α1]=k[nk<nα1+vα]=nα1+vαn=nαnα1+vα<11+vα=vα

结束了 ϵS 上界的讨论,我们继续看我们得到的递归式:

s(α,n,v)=s(α,nα,v)S+ϵ+{0 or 1}

注意到:s(α,nα,v) 的最后一项 j=nα1=nα,这一项对答案的贡献为 vv1,因为我们可以看回没有经过任何变形的原式(用 j 替换了原来的 k):

s(α,n,v)=0j<n([{jα}<v]v)

对于每一项,答案只可能为 0v 或者 1v,由于这里的 s(α,nα,v) 前有符号,所以这一项对答案的贡献只可能为 (v)=v(1v)=v1

接下来,我们便可以开始进行放缩了:

s(α,n,v)=s(α,nα,v)S+ϵ+{0 or 1}s(α,nα,v)+vS+ϵ+{0 or 1}s(α,nα,v)+v+ϵ+{0 or 1}s(α,nα,v)+v+vα+{0 or 1}s(α,nα,v)+v+vα+1s(α,nα,v)+vα1+1s(α,nα,v)+α1+1s(α,nα,v)+α1+2|s(α,nα,v)|+α1+2

由于 |s(α,nα,v)|+α1+2>0 ,所以我们可以将不等式左边也写成绝对值的形式:

|s(α,n,v)||s(α,nα,v)|+α1+2

我们已经离目标很近了!我们可以再进行一次缩放:

D(α,n)=maxv|s(α,n,v)||s(α,nα,v)|+α1+2maxv|s(α,nα,v)|+α1+2=D(α,nα)+α1+2

Q.E.D.

思考

这个过程中,我们用到了大量的放缩技巧。最后得到了一个关于 D 的递推不等式链。思考一下这个式子到底说明了什么:由于 nα 总是小于 n,所以当 n 充分大的时候,D(α,n) 总是比 n 要小得多。从而说明了定理在这种特殊情况下,即 fv 阶梯函数作为映射关系时的正确性。

补充

接下来,我们还证明一下 习题 29,也就是这个推导中的补充结论。

首先变换递推式,然后进行放缩:

s(α,n,v)=s(α,nα,v)+Sϵ{0 or 1}s(α,nα,v)+0ϵ1s(α,nα,v)vϵ1s(α,nα,v)α12

注:由于和上面的相似,所以包含了大量的跳步。

|s(α,n,v)|s(α,n,v)s(α,nα,v)α12

s(α,nα,v)|s(α,n,v)|+α1+2

|s(α,n,v)|+α1+2>0,故

|s(α,nα,v)||s(α,n,v)|+α1+2

|s(α,n,v)||s(α,nα,v)|α12

最后再进行一下放缩:

D(α,nα)=maxv|s(α,nα,v)||s(α,n,v)|+α1+2maxv|s(α,n,v)|+α1+2=D(α,n)+α1+2

D(α,n)D(α,nα)α12

结合上面的结论,我们得到了:

D(α,nα)α12D(α,n)D(α,nα)+α1+2

最后修改:2022 年 03 月 02 日 02 : 18 PM
真的不买杯奶茶嘛....qwq