反射序数
更多操作
反射是一个非递归记号。它表示非递归序数,其特点是并不会表示其极限之下的所有序数。它具有深厚的集合论背景
数学定义
前排提醒:对数学定义不感冒或者看不懂的读者可以跳到后面
为了说明反射序数的性质,我们先要对一阶逻辑的结构进行更加细致的讨论。下面我们根据命题中无界量词的性质,给出公式的层次:
满足如下条件之一的集合论公式称为公式
- 它不包含无界量词
- 它形如,其中为公式
- 它形如或,其中为公式
公式中的所有量词都是有界的。对于那些包含无界量词的公式,我们给出如下的递归定义:
公式及公式定义如下:
- 公式及公式为公式。
- 如果为公式,则为公式。
- 如果为公式,则为公式。
反射序数是具有某种特殊反射性质的序数。下面我们给出反射的定义:
L为可构造宇宙,在X上反射了公式,是说.
我们进一步给出如下定义:
若在X上反射了所有的公式,则称α是X上的序数。
特别的,若在所有序数上反射了所有的公式,则称α是序数。
关于反射序数有如下的重要结论:
α是X上的反射序数,等价于α是X上的反射序数
也就是说,我们只需要研究集合上的反射序数即可。进一步的有
α是X上的反射序数,等价于α是X上的反射序数,等价于α是X上的极限点。
在一些资料中,会出现反射等价于全体序数的说法。这是错误的。事实上,如果我们想要写出全体序数,应该写出。
我们还有结论:α是X上的反射序数,等价于α是X上的容许序数。
结构讲解
基本符号
onto
onto 是反射模式的核心。它的作用对象是一个集合,同时也输出一个集合。例如: 全体序数,得到的是全体极限序数构成的集合;全体序数构成的集合,得到的是全体容许序数构成的集合。
方便起见,我们把简写为 n-X 。这里的 n 是自然数, X 是被操作的集合。特殊地,当 X 为全体序数,我们直接将它省略不写,此时的结果直接记为 n 。也就是说,在反射模式中, 1 可以用来表示全体序数的集合的结果,以此类推。
∩
这里的∩指交集。没错,就是那个大家熟知的交集, 表示同时属于集合 A 和集合 B 的元素。交集也是反射模式中的一种重要运算。同样是为了方便起见,我们将∩简写为空格。 ∩在反射式中的运算优先级与onto相同,并且从右向左计算。例如: 2 1-2表示的集合; 2-3 1-3 2-3表示的集合。
以及
反射模式研究的集合中的元素都是序数。因此,我们可以把这些序数从小到大进行排序,并用来分别表示集合 X 中从小到大的第 2 、第 3 以及第 n 个元素。不过,对于 X 中的第 1 个元素,我们一般不叫它,而是叫它min X 。在不引起歧义的情况下,也可以把这个min省略,直接用 X 来指代 X 中的第一个元素。在会引起歧义的场合,则用 (X) 来代表 min X 。不建议使用之类的“第超限序数个”的表达。
aft
将序数从小到大排序,排在后面的就是更大的序数。因此, 表示“集合 A 中大于序数 B 的元素”。将这一表达与等结合起来,可以得到(可直接简写为)、 等,分别表示“集合 A 中最小的大于序数 B 的元素”和“集合 A 中第二个大于序数 B 的元素”。
反射
1- 的作用
一个集合的效果,是取出这个集合中所有的极限点。所谓的极限点,就是前极限序数个元素的上确界。
现在我们可以来推导一下 1 ,也即全体序数的构成。
具体地,我们需要遍历全体极限序数α ,并找到前α个序数的上确界。
前ω个序数的上确界为ω,前个序数的上确界为 ……
事实上, 1 就等于全体极限序数的集合 。
类似地, 1 中的前ω个序数的上确界是,1 中的前个序数的上确界是……因此,,是 的倍数的集合。
继续递推,还能得到
……直到——
方便起见,我们把重复的 1- 合并合并。把重复的操作用括号括起来,上标表示重复次数。这样, 1-1-1 可以写作 , 1-1-1-1 可以写作 。对于这种有限次的 1- ,我们都可以递归地得到它代表的集合。
但,呢?
我们首先需要定义。较一般地,对于 ,其中 α为极限序数的情况,我们只需要取交集,即定义 。
自然地,我们可以推导出,即的倍数的集合。
,就是 的倍数的集合,。
等
上标只能放序数的情形是简单的,一个“的倍数”就直接解决了。如何让情形变得更有趣呢?我们可以借用veblen函数的不动点进位模式,在上标上引入多个数字,来表示不同层级的不动点。
我们定义。根据上一节的结论,我们可以知道。因此, 是全体 序数的集合,即 。
可以继续对 进行 1- 的操作,得到的集合记为 。应当是全体“下标为极限序数的 序数”的集合,即。
更一般地,我们在上标上使用weak veblen函数,记 为。于是,我们还可以有 。在上标遇到极限序数时,我们也仍取交集。
直到我们遇见了新的不动点。我们定义 。借用veblen函数的模式,我们还能把定义推广到 等等并且还能在此基础上进行扩展。理论上,只要扩展足够强力,所有的递归序数都能像这样被表示出来。
值得一提的是,本条目折叠不动点采用了veblen函数式的写法。事实上,是存在OCF式的写法的。读者可以参见条目Σ1稳定序数。
反射和容许序数
任意集合的作用,暂时是难以说明的,所以我们先从全体序数开始。这里不加证明地给出以下结论: 反射作用于全体序数的集合,得到的是全体容许序数的集合。
所谓容许序数,可以大致地理解为无法通过比它小的序数进行递归运算得到的序数。所谓的“无法通过比它小的序数进行递归运算得到的序数”,换用另一个更直观的概念,就是“不存在长度小于它的、递归表达的基本列的序数”。也就是说,如果我们找到了某个序数的一条长度小于它本身的基本列,就能立刻断言它不是容许序数。这为我们排除很多容许序数的备选提供了一条可行的方案。
最小的容许序数是Church-Kleene序数,记为,在这里我们把它写作 ——没错,就是在OCF中出现的那个。
紧接着,第二个容许序数是 ,在这里写作。它无法通过包括 在内的比它小的序数通过递归运算得到,这意味着不是之类的东西,而是远远在它们之上的存在。
再然后,还会有它们一同组成了容许序数的集合。
值得注意的是,上面一句话跳过了,而单独列出了和 。这是因为 和 并非容许序数——这一点可以通过“找长度小于它本身的基本列”来实现。
更进一步地,存在一条长度为ω的基本列,它也是非容许的。
事实上,对于大多数的,其中 α为极限序数, α的基本列总是会成为我们我们的突破口,让我们找到的一条长度小于自身的基本列。
顺便一提,对于所有的后继序数α,都毫无疑问是容许序数。
等
1-2 ,即取出集合 中所有的极限点。
2 中的前ω 个序数的上确界是,所以 ;
2 中的前 个序数的上确界是,所以……
如此一来, 1-2 就是“ ,其中α为极限序数”的集合。需要注意的是,这样的序数大多数都是非容许的。这意味着 1-2 这个集合中的大部分元素甚至不属于 2 。我们对 2 这个集合进行了 的操作,得到了一个性质更差的集合,这种事在反射里,是相当常见的。
接着是 1-1-2 。我们取集合 1-2 的极限点,可以得到“,其中α 为的倍数”的集合。同样地,我们可以通过取交集得到乃至 。由于 ,所以 又可以写作 。这里在上标上省略了min ,并且在外面加了一层括号用以和序数 2 区分。
于是我们来到了 。类似的定义,。不难发现,的每一个元素α 都满足 ,因此,是全体 OFP的集合。.
过后,同样也有。不过,不管 的上标的层级多深,只要它还是不动点的形式,它就是非容许的。
递归不可达序数
前排提示:关于I及多元I函数在OCF中的折叠规则,参见词条多元I函数
我们不妨思考一下,若一个极限序数α足以使得为容许序数的话,它需要满足什么条件呢?
首先,α是容许序数;其次, 。即满足上述条件的α属于 2 和 1-2 的交集,记为 。
根据ZFC公理体系,我们可以直接证明 2 和 1-2 的交集存在元素,我们将其命名为递归不可达序数。最小的递归不可达序数记作 I ,次小的是……就和 差不多。
总之,。注意到这里也没有列出 , 并非容许序数。
接下来,我们还可以对 2~1-2 进行若干次 1- ,例如。推导过程和 1-2 是一致的,注意 1-2~1-2 表示的实际上是 。
自然是全体IFP,也就是满足 的序数构成的集合。
容许点
对“容许点”的定义,即:
序数 为函数 的容许点,等同于 是 的不动点且为容许序数。
于是我们可以看到,是函数 的容许点;I 是函数 的容许点。
更一般地,若函数的值域是集合 A ,那么的容许点组成的集合是 。
在更以后的地方,提到的某函数的“马洛点”“ K 点”等“ X 点”概念也都指代“某序数是 X 序数且是该函数的不动点”。
I(1,0) 等二元I函数
函数的容许点是什么呢?认为是 M 的读者可能受到了 IMK 经常被一同提起的影响。实际上,函数的最小的容许点仅仅是 I(1,0) 。受到《大数入门》的影响,部分读者会认为 I(1,0) 与IFP等同,实则并非如此。
根据前面提到的“若函数的值域是集合 A ,那么的容许点组成的集合是 。”的规则,不难知道,函数 的全体容许点的集合是。
的次小的容许点是 I(1,1) 。这里,二元 I 的最后一位实质上相当于或者 I 的下标。于是, 。 同样是非容许的。
是函数 的不动点,记作 。最小的 也并非 I(2,0) 。 I(2,0) 是函数 的容许点。多元 I 函数的这种进位方式,称为容许点进位。
……
像这样继续往前,自然会遇到 ,我们期望它是。如果我们仍用定义时的交集来定义它会怎么样呢?下面才会真正开始涉及真伪的争端…
psd.和real.
的定义方式与 是类似的。即:
这意味着 以及α为后继序数时,都存在一条长度为ω的基本列,这使得非容许。这与前面的 的性质是截然相反的。最小的同时满足“ α 是极限序数”和“ 容许”的序数是函数 的容许点,记作 。
对于等“高位为极限序数的二元 I 函数”的情形,都可以像这样定义。对于绝大多数极限序数β 和后继序数α, 都不是容许序数。
对于使用交集定义的,一般称作。即
现在让我们思考一下一个序数如果要是 ,它需要具备哪些性质。根据上面的结论,我们可以推出:
为容许序数等函数的不动点
首先关注后面的条件。利用类似veblen函数的“闭包”机制,可以证明,α为这些函数的不动点等同于。那么,整个条件就变为了“α是 序数且 为容许序数”。这正是我们要刻画的 的模样。
像这样直接跳过 一族序数似乎不太好。我们希望能有一个简单的反射式子来表示它们,并且最好这个简单的式子就是 。这就引出了下面的的定义:
定义完了之后,我们会发现实际上就是。如此一来就建立了 psd. 和 real. 的联系。
重要: psd. 和 real. 的形式类似、性质则相当不同,容易引起不必要的争端。因此,本条目在之后提及和类似的 等序数时,若不使用前缀,则默认为 psd. 定义。因此,可以直接写 。
多元 I 函数
顺着继续往上,使用容许点进位的规则和 psd. 定义,有:
是 的最小的容许点, ;
是 的最小的容许点,;
是全体 序数。 ;
……
像这样,我们可以确定任意的 的景象。当α 为后继序数时,是全体序数中的容许序数;当α为极限序数时,就是全体序数。
上标增加到一定程度,自然就会出现不动点。与 类似地,我们把满足的序数集合记作 。
我们可以像这样用二元 I 函数来表示它 :
即 是全体 的不动点。最小的这样的不动点该如何用多元 I 表示? I(1,0,0) 吗?不要忘了 I 的容许点进位规则。它应该是 。次大的不动点自然就是了。所以,有:
是函数 的容许点,也就是全体序数中的容许序数。在这里, 的强度借助不动点,有了一个提升。
后面的多元 I 并没有新的附加规则,只需要牢记容许点进位即可。如
……
递归马洛序数
前排提示:关于M在OCF中的折叠规则,参见词条递归马洛序数
进一步增加的上标的深度之后,我们会被一道新的不可逾越之壁所阻挡。正如同 无法通过单纯的 1- 操作得到一样, 也无法通过单纯的 操作得到。我们把这样的 M 称作递归马洛序数。
递归马洛序数有无穷多个。我们把第二个,第三个……递归马洛序数分别记为 ,就像这样:
当然了, 也不是递归马洛序数。它甚至不是容许序数——所有的递归马洛序数都是容许序数。