MathLabs

解法:MRDP定理:丢番图集合恰为递归可枚举集合(1970年)

第 2/9 步:丢番图集合与递归可枚举集合
通俗地说

一个数集是“可枚举的”(递归可枚举),是指存在某个计算机程序,永远运行下去,最终会打印出该集合的每一个成员,且只打印这些——即便这个程序永远不会停止,也永远无法对一个不属于该集合的数确定地回答“不是”。一个集合是“丢番图”的,是指属于该集合这件事,可以表达为某个固定的多项式方程(以目标数为参数)有整数解。

每个丢番图集合自动都是可枚举的——只需让程序按顺序尝试每一组可能的非负整数元组,一旦找到解就打印出对应的参数即可。而深刻得多、远没那么显然的问题是反过来:每个可枚举集合是否也秘密地是丢番图的?

S Diophantine  ⟺  ∃P, a∈S  ⟺  ∃x1,…,xn∈Z≥0, P(a,x1,…,xn)=0S \text{ Diophantine} \iff \exists P,\ a \in S \iff \exists x_1, \ldots, x_n \in \mathbb{Z}_{\ge0},\ P(a, x_1, \ldots, x_n) = 0
详细分析

集合 S⊆Z≥0S \subseteq \mathbb{Z}_{\ge 0} 是递归可枚举的(r.e.),或者说可枚举的,是指存在一个算法,只要给足时间,就能按某种顺序恰好输出 SS 的元素(不保证会停机,也不要求对非成员说明任何情况)。集合 SS 是丢番图的,是指存在一个整数系数多项式 PP,使得 a∈S  ⟺  ∃x1,…,xn∈Z≥0a \in S \iff \exists x_1, \ldots, x_n \in \mathbb{Z}_{\ge0} 且 P(a,x1,…,xn)=0P(a, x_1, \ldots, x_n) = 0。

“丢番图   ⟹  \implies r.e.”这一蕴含是显然的:按对角线方式遍历所有元组 (x1,…,xn)(x_1, \ldots, x_n) 与所有候选值 aa,一旦找到解就输出 aa。反方向的蕴含——每个r.e.集合都是丢番图的——则远非显然,因为多项式方程看起来比任意算法那种灵活的逐步逻辑要僵硬得多,是纯粹代数性质的工具。

马丁·戴维斯在1953年猜想这两个概念事实上完全重合;下一步将精确陈述这个猜想及其意义。

本步骤中的术语
递归可枚举(可枚举)集合
一个集合,存在某个算法永远运行下去,最终会输出它的每一个成员(且只输出成员);这样的集合未必是可判定的,因为算法可能永远无法确认某个给定的非成员永远不会出现。
本步骤用到的知识