简单集合论
Cantor-Bernstein 定理:两集合互有单射,则必有双射
对于集合 S,T ,如果存在单射 f:S→T 和 g:T→S ,则 S,T 之间存在双射。
证明:可以构造一个二分图,左部是 S ,右部是 T ,那么图是由环和链构成,其中链没有终点,只有起点。
于是对于从 T 开始的链,可以令 φ(x)=g−1(x) ,否则令 φ(x)=f(x) 。
环的话就令 φ(x)=f(x) 即可。
Cantor 定理: 不存在 2S 到 S 的单射。
假设 φ:2S→S 是单射。
令 A=φ(2S) ,T={x∈A∣x∈/φ−1(x)} 。
那么 T∈2S 。令 a=φ(T)
如果 a∈T ,则 a∈/φ−1(a)=T ,矛盾
如果 a∈/T ,则 a∈A−T ,那么 a∈φ−1(a)=T ,矛盾
综上,不存在这样的 φ 。
结论:R∼2N
先找 2N→R 的单射:令 φ(S)=x∈S∑3−x 即可。
再找 R→2N 的单射,我们分为两步。
先找 R→(0,1) ,其实有 R∼(0,1) ,构造 f:(0,1)→R 满足 f(x)=tan(2π(2x−1)) ,这是双射。
再找 (0,1)→2N ,考虑把一个 (0,1) 间的数看成是二进制小数,问题在于它有两种表示方式:无限 0 结尾,无限 1 结尾,限制为前者即可。
结论:N∼Q
N→Q 显然。
Q→Z×N :把一个有理数写成整数除以正整数的形式。
Z×N→N : 我们只需要把这些数对按照一个顺序排列,依次编号。可以蛇形地进行编号,虽然最后的形式比较丑,但确实很对。
基数乘幂规则:(ST)W∼ST×W
考虑 h:W→ST 。现在构造 φ(h):T×W→S 。考虑 φ(h)(x,y)=h(y)(x) 即可。这个显然是双射。
结论:A∼A′,B∼B′→AB∼A′B′
对于 h:B→A ,构造 φ(h):B′→A′ 满足 φ(h)(b′)=(h(b))′
结论:RN∼R
R→RN 显然:对于 x∈R ,构造 f:N→R 满足 f(0)=x,f(1)=0,f(2)=0,… ,然后令 φ(x)=f 。
RN→R :对于 f∈RN ,我们可以蛇形串起来 f(0),f(1),f(2),… ,得到一个实数…。哎,这个构造很魔怔。
另一个证法: RN∼(2N)N∼2N×N∼2N∼R 。
偏序
a≤a,a≤b∧b≤c→a≤c,a≤b∧b≤a→a=b
全序:偏序基础上,任意二者都可比较,也就是 a≤b∨b≤a
良序:全序基础上,∀S,∃a∈S,∀b∈S,a≤b
良序定理
任意集合都能找到一个序,这个序是良序的
连续统假设(CH)
是否有一个集合的势在 ∣N∣ 和 ∣R∣ 之间?前人已经证明:在现有的数学体系下,无法证明这件事是否成立。是,或不是,可以引出两套独立的理论。
命题逻辑
一些符号
原子命题(Atomic Propositions):P,Q,P1,P2,⊥,⊤,…
逻辑联结词 (Logical Connectives):∨,∧,⟹,⟺,¬ …
辅助符号 (Auxiliary Symbols):()…
我们把这个字母表记作 Σ 。
Σ∗=i=0⋃+∞Σi ,表示所有有限字符串的集合。
接下来定义下面的 X⊆Σ∗ 合法:
-
单独的原子命题都在 X 中。
-
如果 P,Q∈X ,则 (P∧Q),(P∨Q),(P⟺Q),(P⟹Q),⋯∈X
-
如果 P∈X ,则 (¬P)∈X
满足上面条件的最小的 X 被称为 PROP。
比如说 (P→Q)∈PROP ,而 P→Q∈/PROP ,但实际上对一个命题我们都默认去掉最外层括号
我们称一个 v:PROP→{0,1} 是赋值,定义原子命题的真值表即可
重言式 (tautology) :对任意赋值 v ,都有 [φ]v=1 。可以记作 ⊨φ
Γ⊨ψ :对于任意赋值 v ,如果 ∀φ∈Γ,[φ]v=1 ,则 [ψ]v=1
φ⊨ψ :对于任意赋值 v ,有 [φ]v≤[ψ]v
自然演绎(Natural Deduction)
自然演绎系统推导规则:
ψφφ→ψ ,这被称为假言消去,符号是 →E
φ∧ψφψ ,这被称为合取引入,符号是 ∧I
φφ∧ψ ,这被称为合取消去,符号是 ∧E
φ⊥[¬φ] ,这是矛盾引入,符号是 RAA
φ→ψψ[φ] ,这是蕴含引入,符号是 →I
φ⊥ ,这是爆炸原理
自然演绎具有完备性,也就是说 PROP 里每一条重言式,都能被自然演绎系统证明。
我们来做一个往年期中题。r→p⊢((p→q)→r)→p
-
r→p (known)
-
[(p→q)→r]
-
[¬p]
-
[p]
-
⊥(3,4,¬E)
-
q(5,φ⊥)
-
p→q(5,6,→I)
-
r(2,7,→E)
-
p(1,8,→E)
-
⊥(3,9,¬E)
-
p(3,10,RAA)
-
((p→q)→r)→p(2,11,→I)
大概讲一下我的思考过程,首先 [(p→q)→r] 是显然的,只要接下来能导出 p 就证完了。
那就反证,[¬p] ,有 ¬p⊢p→q ,然而这个不是标准步骤,所以得拆开了写。
然后就能通过 [(p→q)→r] 和 p→q 得到 r 了。
又有 r→p ,导出 p ,这和假设矛盾!于是有 p ,证明结束。
还有另一个往年期中题:(p→q)→(¬q→¬p) 和 (¬q→¬p)→(p→q) ,其中哪个能用不带 RAA 的自然演绎证出来?
没有 RAA 其实被称为 直觉主义逻辑 ,它认为双重否定不是肯定。
我们其实还是能用反证法,但只能在 φ 的假设和 ⊥ 的基础上,利用 →I 推出 ¬φ 。
此处只有前者能被证明,证明如下:
1.p→q2.[¬q]3.[p]4.q(2,3,→E)
5.⊥(2,4,¬E)6.¬p(3,5,→I),7.¬q→¬p(2,6,→I)
System K
我们先说明一下 Γ⇒Δ 的含义:
对于任意赋值 v 都有:如果 ∀φ∈Γ,[φ]v=1 ,则 ∃ψ∈Δ,[ψ]v=1 。
然后有以下八个定理:

自然演绎的一致性,完备性
Γ⊨φ
对任意赋值 v ,如果 ∀ψ∈Γ,[ψ]v=1 ,则 [φ]v=1
Γ⊢φ
对任意赋值 v ,如果 ∀ψ∈Γ,[ψ]v=1 ,则可以证明 [φ]v=1 。
一致性 (Soundness)
如果 Γ⊢φ 则 Γ⊨φ
也就是说一个系统所有的规则都是对的。
完备性(Completeness)
如果 Γ⊨φ 则 Γ⊢φ 。
也就是说啥都能证。
接下来证明自然演绎的完备性。
引理: Γ,ψ⊢φ 且 Γ,¬ψ⊢φ ,就能有 Γ⊢φ
那现在想证明 Γ⊢φ ,如果有一个原子命题 P1 分别满足 Γ,P1⊢φ 和 Γ,¬P1⊢φ ,那就结束了。
类似的,我们递归的添加 P2,P3 ,直至添加所有原子命题。
对于一个赋值 v ,令其对应的集合 V 是: [Pi]v=1 则把 Pi 加入 V ,否则把 ¬Pi加入 V 。
我们只要能证明对任意赋值 v ,都有 Γ,V⊢φ ,那就结束了。
引理:
对于一个赋值 v ,若 [φ]v=1 则 V⊢φ ,否则 V⊢¬φ
引理证明:需要归纳。
φ 是原子命题则显然成立。
φ=φ1→φ2 :分类讨论即可。
举个例子,就是说 V⊢φ1,V⊢¬φ2 之后能否证明 V⊢¬φ 。
是可以的, [φ1→φ2] ,导出 φ2 ,和 ¬φ2 形成 ⊥ ,于是就有 ¬φ 了。
其他连接词类似,都用自然演绎来证。
证完引理之后,因为 Γ⊨φ 在前,本来就有 [φ]v=1 ,或者存在 ψ∈Γ 使得 [¬ψ]v=1 。
[φ]v=1 的话,直接就有 V⊢φ 了。
存在 [ψ]v=0 的话,就可以导出 ⊥ ,从而得到 φ 。也就是说 Γ,V⊢⊥⊢φ
Predictate Logic(一阶逻辑,谓词逻辑)
字母表:
-
常元 a,b,c,c1,c2,…
-
变量 x,y,z,x1,x2,x3,…
-
函数 f,g,h,f1,f2,f3,…
-
谓词 P,Q,P1,P2,…
-
连接词 ∧,→ 等
-
辅助词 () 等
-
量词 ∀,∃
定义 TERM:
∀ 变量 x ,x∈X
∀t1,t2,⋯∈X 和函数 f ,f(t1,t2,…)∈X
TERM 是满足上述条件的最小的 X。
定义 FOR(formula):
对于任意谓词 P 和 terms t1,t2,… P(t1t2)∈X
∀φ,ψ∈X ,φ→ψ,φ∧ψ⋯∈X
∀φ∈X 和变量 x ,
∀xφ∈X,∃xφ∈X
FOR 是满足上述条件的最小 X
定义 Structure:
包含论域 Ω ,函数 Ωn→Ω ,谓词 P:Ωn→{0,1} ,还有常元的对应值。
我的理解:在一个 structure 中,常元和函数的规则就确定了每个 term 在变量赋值后对应 universe 中哪个值。
而 predicate 的规则决定了每个原子公式的 true or false。当然这里也是在 term 中的变量赋值后得到的。
符号记作 A 。可以把 A 看做命题逻辑里的 valuation。
对于 A 的一个函数 f ,记它对应的那个原本的函数是 f ,那么 [f(t1,t2)]A=f([t1]A,[t2]A)
其他也是类似。
φ[t/x] :将 φ 中 x 的所有自由出现替换为 t 。前提条件:安全性,即替换成 t 之后,t 不会因为前面的量词变成 bounded var。
设 FV(φ) 是 φ 中的自由变量集合,V(φ) 是变量集合。
A⊨φ 的定义:
若 FV(φ)=∅ ,则 A⊨φ 等同于 [φ]A=1
否则,我们认为是 ∀x1∀x2…φ ,其中 x1,x2,… 表示所有 FV(φ) 中的元素
A⊨Γ 等价于 ∀φ∈Γ,A⊨φ
Γ⊨φ :如果 A⊨Γ ,则 A⊨φ 。
一阶逻辑中的自然演绎和等号公理
∀xφ(x)φ(x)(∀I)
φ(t)∀xφ(x)(∀E)
我们认为 ∃ 就是 ¬∀¬ ,可以想想 ∀xφ(x)⊢∃xφ(x) 是怎么做的。
等号公理:
x=x
x=y→y=x
(x=y)∧(y=z)→x=z
(x1=y1)∧(x2=y2)∧⋯→t(x1,x2,…)=t(y1,y2,…)
皮亚诺公理(Peano Axiom)
这是一套用来定义自然数的公理,它包含函数 +,⋅,S 和零元 0 ,单位元 1 ,其中可以认为 S(x) 是 x 的后继
∀x¬(S(x)=0)
∀x∀y(S(x)=S(y))→(x=y)
∀xx+0=x
∀x∀yx+S(y)=S(x+y)
∀xx⋅1=x
∀x∀yx⋅S(y)=x⋅y+x
φ(0)∧∀xφ(x)→φ(S(x)) ,则 ∀xφ(x)
皮亚诺公理加上一阶逻辑本身的公理,就可以在自然数上做一些证明了。比如说证 ∀x0+x=x,可以想一想
一阶理论(theory) 一个由公理和所有能从公理推导出的定理组成的集合 T。如果 T⊢φ ,则 φ∈T 。
亨金性质 一个理论 T 是 henkin theory ,当且仅当所有 T 中形如 ∃xφ(x) 的句子,都存在常量 c 使得 φ(c)∈T 。
定义理论的扩张:
如果 T2 是 T1 的扩张,则 T2 使用的语言 (即它的符号,如常量、函数、谓词) 必须包含 T1 的所有语言。在 T1 中可证的公式,在 T2 也是可证的。
保守扩张(conservative extension)
就是说 T2 是 T1 的扩张,且 T2 中所有能被 T1 的语言写出的能证明的公式,在 T1 也能被证明。
亨金扩张
对于一个给定的理论 T,它的亨金扩张 TH 是通过一个系统性的过程构造出来的。这个过程会:
-
对所有形如 ∃xφ(x) 的句子,引入一个新的常量符号 cφ。这个 c 被称为亨金常量。
-
为每个新引入的常量 cφ,增加一条新的公理:∃xφ(x)→φ(cφ)
我们记这样的单步扩张为 T∗ ,可以证明 T∗ 是保守扩张。然后不断这样扩张下去,最终得到的理论就是 T 的亨金扩张 TH,TH 显然是 henkin theory。
接下来对 TH 再做一次扩展:枚举 TH 的语言能写出的所有命题 φ ,如果 φ,¬φ∈/TH ,则 TH,φ 一定不会导出 bot,所以把 φ,¬φ 二者任取一加入 TH ,得到一个新的理论 TMC 。
接下来可以构造一个 model M 。
注意这里我们定义了 model ,它是一个特殊的 structure ,如果 M 是 T 的 Models,则 ∀φ∈T ,φM=1 。其实在命题逻辑里也有一个定义完全一样的相对于 valuation 的 model,但我们之前没提到。
对于 TMC ,我们首先定义 closed terms,它是指无变量的 terms 。
我们可以在 closed terms 之间定义一个等价关系,即 a∼b↔a=b∈TMC 。基于等号公理,可以证明它确实是等价关系。
比如说对于一个包含了自然演绎和皮亚诺公理的理论,我们会认为 S(0)+S(0) 和 S(S(0)) 在一个等价类,毕竟 1+1=2 (虽然证明不平凡)
然后我们认为 M 的论域是这些等价类构成的集合。比如一个只包含自然演绎和皮亚诺公理的理论,它在这个定义下的论域其实就是自然数集合。
继续我们的定义,对于常量,cM=[c] ,对于函数,fM([x1],[x2],…,[xm])=[f(x1,x2,…,xm)] 。对于谓词,PM([x1],[x2],…,[xm]) 成立当且仅当 P(x1,x2,…,xm)∈TMC
那这个模型有啥用? 由于 TMC 是 T 的一系列保守扩张, 可以证明 M 是 T 的一个模型。
哥德尔完备性定理
经典一阶逻辑中的任意一个一致的理论都能找到一个模型。
然后它有一个等价的结论:T⊢φ↔T⊨φ ,其中 T⊨φ 代表它的任意模型 M 有 M⊨φ 。
(说实话,我这里肯定是没完全搞懂证明过程的,只是大致记录了老师和 gemini 在说什么,可能也没记录对)
集合论
Axiom of Extensionality (外延性公理)
∀x,y(∀δδ∈x↔δ∈y) 则 x=y
Axiom schema of specification (分离公理模式)
对任意谓词 φ
∀A∃B∀x(x∈B↔x∈A∧φ(x))
这是为了定义 yφ={δ∈x∣φ(δ)}
当然这个谓词可能会加入更多 terms,原理是一样的
Axiom of pairing 配对公理
这是为了定义 δ={x,y}
$\forall x,y\exists \delta $ 使得 x∈δ 且 y∈δ
Axiom of union 并集公理
这是为了定义 ∪
∀x∃y∀w,δ(δ∈x∧w∈δ→w∈y)
Axiom of power set 幂集公理
这是为了定义 y=2x
∀x∃y∀z(z⊆x→z∈y)
Axiom of infinity 无穷公理
∃N(∅∈N∧(∀y,y∈N→y∪{y}∈N))
Axiom Schema of Replacement 替换公理模式
这是为了定义 B=fw(A)
对任意函数关系 φ(x,y) ,有 ∀x∃y∀a(a∈y↔∃b∈x,φ(b,a))
Axiom of Regularity 正则公理
∀A(A=∅→∃x(x∈A∧x∩A=∅))
Axiom of Choice 选择公理
∀S(∀xx∈S→x=∅∧∀x,y(x∈S∧y∈S)→x∧y=∅)
则 ∃T∀xx∈S→∃yy∈S∩T
直观来说,就是说如果有若干个苹果袋子构成了一个集合,则保证你能构造一个袋子,它能在每个袋子中都取一个苹果。
(这里的苹果,袋子其实都是集合)
现在我们证明哥德尔不完备定理,也就是说:任何无矛盾的公理体系,只要包含初等算术的陈述,则必定存在一个不可判定命题,用这组公理不能判定其真假。
我们希望构造一个语句使得它的含义是:它本身不能被证明
简单来讲,首先对所有语句做一个 encoding,映射到一个自然数,这样就可以把 TERM,FOR 定义成一个自然数的集合。
自然我们又能定义 PROV ,表示一个理论能证出来的自然数的集合。
对角线引理:对任意一个带一个自由变元的算术公式 ψ(x) ,都存在 φ 使得 PA⊢φ↔ψ(id(φ))
所以令 ψ=¬PROV ,即可找到一个语句 φ 使得 φ↔¬PROV(id(φ)) 。这个 φ 就是我们想要的东西了。
最后可以证明 φ 和 ¬φ 都不可能在 PROV 中,证明就结束了,细节我懒得管了。
初等数论
除数,被除数,余数:可以证明 ∀a>0∀b∃!q,r 使得 b=aq+r 且 r∈{0,1,…,q−1} ,这可以固定 a ,对 b 归纳证明。
Prime(n) 可以看做 (n=1)∧(∀a∈Na∣n→(a=1∨a=n))
gcd(a,b) :最大的正整数 k 使得 k∣a 且 k∣b
特别的,gcd(0,n)=n
gcd′(a,b) :最小的 am+bn∈Z+ ,其中 m,n∈Z 。
我们证明 gcd′(a,b)=gcd(a,b) :考虑 exgcd 即可
质因数分解(Factorization):n=p1p2…pt 可以证明分解是唯一的:
归纳证明,对于 n 的两组分解 p1p2…pt 和 q1q2…qs ,我们首先说明 q1,q2,…,qs 中至少有一个被 p1 整除:
反证,由于 gcd(a,b)=1∧gcd(a,c)=1→gcd(a,bc)=1 ,发现 p1∤q1,p1∤q2… 能导出 p1∤n ,这就矛盾了
不妨设 p1∣q1 ,因为它们都是质数所以 p1=q1 ,根据归纳,剩下的部分的分解是唯一的,这就证完了
同余:a≡b(modm) 表示 m∣a−b
∃a 使得 ac≡1(modm) 等价于 gcd(c,m)=1
我们称 Zm∗ 是 {n∈Zm∣gcd(n,m)=1}
费马小定理
xp≡x(modp)
对于任意正整数,则有 (x,n)=1→xφ(n)≡1(modn) ,其中 φ(n)=∣Zn∗∣
证明:考察 1,2,…,p−1 ,则 x,2x,…,(p−1)x 模 p 意义下和 1,2,…,p−1 是对应的,所以 (p−1)!xp−1≡(p−1)!(modp)
那么 xp−1≡1(modp)
然后再看任意正整数的情况,同样考察 A=i∈Zn∗∏i 。那么 i∈Zn∗∏(ix)=A∗xφ(n) ,由于可以建立 i 和 ix 之间的双射,即 i=(ix−1)x ,所以
A=A∗xφ(n) ,所以 xφ(n)≡1(modn)
phi 的性质:m=d∣m∑φ(d)
证明很简单:m=i=1∑m1=d∣m∑i∑[gcd(i,m)=d]=d∣m∑φ(dm)=d∣m∑φ(d)
一种加密算法:取 N=pq ,其中 p,q 是大质数。考虑信息 m∈ZN∗ ,加密成 memodN 。秘钥是 d 满足 edmodφ(m)=1 。解码: (me)dmodN=m 。
CRT
考虑 N=n1n2…nt ,其中 n1,n2,…,nt 是互质的。
设 π:Zn→Zn1∗Zn2∗⋯∗Znt
满足 π(a)=(amodn1,amodn2,…amodnt)
可以证明 π 是双射,为什么呢?
其实就是要搞出来 π−1(a1,a2,…,at) ,只需要设 bi 表示 niN 模 ni 的逆元,那么 ∑aibiniN 满足条件。
利用这个映射其实就可以证明 phi 为啥是积性函数了。