计算理论导论 Cheatsheet · 第1页 (自动机 / 可计算性 / 时间复杂性)

DFA (确定有限自动机)
M=\( (Q, \Sigma, \delta, q_0, F) \). \( \delta:Q \times \Sigma \to Q \). \( \hat{\delta}(q,\varepsilon)=q \), \( \hat{\delta}(q,wa)=\delta(\hat{\delta}(q,w),a) \). \( L(M)=\{w \mid \hat{\delta}(q_0,w) \in F\} \)
正则语言对∪,∩,补,∘,*,反转封闭. 乘积DFA: F₁∪₂=(F₁×Q₂)∪(Q₁×F₂); F₁∩₂=F₁×F₂; 补=交换F. 最小化:去不可达→迭代分裂不等价组→唯一最小DFA
NFA → DFA (子集构造)
\( \delta:Q \times \Sigma_{\varepsilon} \to \mathcal{P}(Q) \). ε-闭包E(S)=S出发仅经ε可达的状态(BFS). NFA接受:∃一条计算路径到接受状态
子集构造:初始=E({q₀}); δ_D(R,a)=E(∪_{r∈R}δ_N(r,a)); F_D={R|R∩F≠∅}. n状态NFA→≤\( 2^n \)状态DFA(上界可达). NFA≠更强,但更简洁
正则表达式 ⟷ NFA ⟷ DFA
R→NFA(Thompson):基元=边;并=ε分叉+汇;连=串联;星=ε回路+旁路. DFA→R(GNFA):加始终→逐消中间态→新边=R₁(R₃)*R₂∪R₄→剩一边即R
优先级:*>∘>∪. R∪S=S∪R; (R*)*=R*; ∅*=ε; R∪∅=R; R∅=∅R=∅; R(S∪T)=RS∪RT. 常用: (0∪1)*(全), (0∪1)*1(0∪1)*(含1)
泵引理 ★必考
L正则⇒∃p: ∀w∈L(|w|≥p) ∃w=xyz: |xy|≤p, |y|>0, ∀i≥0:xyⁱz∈L
证非正则:①假设正则(泵长p)②选w∈L,|w|≥p,利用|xy|≤p限制y位置③取某i使xyⁱz∉L. 关键:w依赖p;用|xy|≤p限制y落点.
{0ⁿ1ⁿ}: w=0ᵖ1ᵖ, y=0ᵏ, i=2→0^{p+k}1^p∉L. {ww}: w=0ᵖ10ᵖ1, y在前半. {a^q|q素数}: i=q+1→a^{q(1+k)}合数. {0ⁱ1ʲ|i>j}: i=0下泵.
Myhill-Nerode: L正则⟺x∼_L y有有限等价类. 类数=最小DFA状态数. 证非正则:找无限等价类({0ⁱ}对{0ⁿ1ⁿ}). 闭包性: L∩R非正则(R正则)⇒L非正则.
图灵机 (TM)
M=\( (Q,\Sigma,\Gamma,\delta,q_0,q_{\text{acc}},q_{\text{rej}}) \)七元组. δ:Q×Γ→Q×Γ×{L,R}. 格局=u q v(带uv,状态q,头在v首). 在q_acc/q_rej停机
多带TM:k带δ:Q×Γᵏ→Q×Γᵏ×{L,R}ᵏ,O(t²)单带模拟. NTM:δ→P(Q×Γ×{L,R}),存在接受分支即接受. 枚举器:L可识别⟺L可枚举. Church-Turing:"算法"=TM. UTM可模拟任意TM
可判定 vs 可识别
可判定(Decidable)可识别(RE)
TM在所有输入停机TM在接受串停机接受;拒绝可能loop
L和L̄都可识别⇒L可判定\( A_{\mathsf{TM}} \)可识别但不可判定
\( A_{\mathsf{TM}} \)不可判定 ★
\( A_{\mathsf{TM}} \)={⟨M,w⟩|M接受w}. 可识别(UTM)但不可判定
对角化:假设H判A_TM→构D(⟨M⟩):跑H(⟨M,⟨M⟩⟩)→H接受则D拒绝反之. D(⟨D⟩)接受?⟺H(⟨D,⟨D⟩⟩)拒绝⟺D(⟨D⟩)拒绝. 矛盾! ∴H不存在∎
推论:TM可数(有限描述)→语言不可数(Σ*子集≈R)→绝大多数语言不可识别!
不可判定问题链
问题可识别?归约
\( A_{\mathsf{TM}} \)✓(UTM)对角化(源)
HALT_TM\( A_{\mathsf{TM}} \)≤_m:M′模拟M,若M接受→停,否则loop
E_TM补可识别\( A_{\mathsf{TM}} \)≤_m:M′对入x:若x≠w拒,若x=w模拟M
EQ_TME_TM≤_m
REGULAR_TMRice定理
ALL_TM(L(M)=Σ*)Rice定理
映射归约 \( A \leq_m B \)
∃可计算f:w∈A⟺f(w)∈B. ≤_m传递. A不可判定∧A≤_mB⇒B不可判定. A不可识别∧A≤_mB⇒B不可识别
Rice定理 ★
P为RE语言的非平凡语义性质L_P={⟨M⟩|L(M)满足P}不可判定
证:归约自A_TM,设∅∉P,取M_P满足P,构M′先模拟M→若接受转模拟M_P. L(M′)=L(M_P)∈P当M接受w;否则=∅∉P.
推论(均不可判定):{⟨M⟩|L(M)正则/有限/无限/∈CFL/含ε/=Σ*}. 不适用:语法性质("状态数<5")
语言类层次
\( \mathsf{REG} \subsetneq \mathsf{CFL} \subsetneq \mathsf{DEC} \subsetneq \mathsf{RE} \subsetneq \mathsf{ALL} \)
{0ⁿ1ⁿ}∈CFL\Reg. A_TM∈RE\Dec. A̅_TM∈All\RE. 可判定性:DFA全可判;CFG成员/空可判,等价不可判;TM全不可判(Rice)
问题DFACFGTM
成员✓(模拟)✓(CYK O(n³))
空性✓(BFS)✓(标记法)
等价✓(对称差)
全性
时间复杂性: P / NP
TIME(t)={L|DTM在O(t)判定}. P=∪_k TIME(nᵏ). NP=∪_k NTIME(nᵏ). EXPTIME=∪_k TIME(2^{nᵏ})
NP验证机刻画:L∈NP⟺∃多项式p,V: x∈L↔∃c(|c|≤p(|x|))∧V(x,c)=1. P⊆NP⊆EXPTIME. P=?NP open
时间层次:f(n)log f(n)=o(g(n))⇒TIME(f)⊊TIME(g). 推论:P⊊EXPTIME. Cook-Levin: SAT是NPC
NPC归约链
SAT→3SAT→CLIQUE→IS→VC→SUBSET-SUM; 3SAT→HAMPATH
归约要点
SAT→3SAT长句(a∨b∨c∨d)→(a∨b∨x)∧(¬x∨c∨d)
3SAT→CLIQUE每文字→顶点,不矛盾不同句文字间连,k=子句数
CLIQUE→IS取补图; G的团=Ḡ的独立集
IS→VCS独立⟺V\S点覆盖; k_VC=n-k_IS
→SUBSET-SUM高基数编码,每变量(真/假)两数,每子句两数,列和约束
NPC证明四步 / coNP
NPC:①L∈NP(证书+验证器)②选已知NPC源(3SAT)③构造多项式f④证双条件(⇒和⇐)
coNP={L|L̄∈NP}. TAUTOLOGY,UNSAT. NP?=coNP open. NP≠coNP⇒P≠NP. 若NP=coNP→PH坍缩
问题证书验证
SAT赋值τ代入 O(n)
CLIQUEk顶点完全子图 O(k²)
HAMPATH顶点序列每步有边 O(n)
SUBSET-SUM子集求和 O(n)
COMPOSITE因子除法 O(log²n)
归约证明模板
证B不可判定:①选已知不可判定的A(通常A_TM)②构造可计算f:⟨M,w⟩→B实例③证双条件:⟨M,w⟩∈A_TM⟺f(⟨M,w⟩)∈B. B可判定⇒A可判定,逆否为证.
A_TM≤_m HALT_TM
f(⟨M,w⟩)=⟨M′,w⟩. M′忽略输入,模拟M在w上:若M接受→M′停机接受;若M拒绝或loop→M′无限循环. ⟨M,w⟩∈A_TM⟺M′在w上停机.
A_TM≤_m E_TM
f(⟨M,w⟩)=⟨M′⟩. M′对输入x:若x≠w拒绝;若x=w模拟M. L(M′)={w}若M接受w,否则L(M′)=∅. ⟨M,w⟩∈A_TM⟺L(M′)≠∅∈E̅_TM.
可判定性问题总表
问题DFACFGTM
成员资格✓(模拟|w|步)✓(CYK O(n³))✗(A_TM不可判)
空性✓(BFS可达)✓(标记)✗(E_TM不可判)
等价性✓(对称差判空)✗(EQ_TM不可判)
正则性✓(平凡)✗(Rice)
全性(=Σ*)✗(Rice)
重点:EQ_DFA可判定,EQ_CFG和所有TM语义问题不可判定!
语言类层次(补全)
严格包含证明:{0ⁿ1ⁿ}∈CFL\Reg; A_TM∈RE\Dec; A̅_TM∈All\RE.
可判定↔可识别: L可判定⟺L和L̄都可识别. 证:并行跑M_L和M_{L̄},恰一者停机.
递归定理 (Recursion Theorem)
∀可计算t:Σ*→Σ*,∃TM R: L(R)=L(M_{t(⟨R⟩)}). TM可"获得自己的描述"并自我修改. 可用递归定理优雅地证A_TM不可判定(不显式用对角化).
递归定理应用:证A_TM不可判定—假设H判定,构造M:入w→获取自描述⟨M⟩→跑H(⟨M,w⟩)→H接受则做相反. M在w上做与H判定相反→矛盾.
补充: CFL泵引理
CFL泵引理:∃p:∀w∈L(|w|≥p)∃w=uvxyz:|vxy|≤p,|vy|>0,∀i≥0:uvⁱxyⁱz∈L. 注意:泵两部分v和y,限制|vxy|≤p(非|uv|≤p).
证{aⁿbⁿcⁿ}非CFL:w=aᵖbᵖcᵖ. vxy跨字符块或同块,分别推导矛盾. 跨块→泵后字符数不均; 同块→某字符缺失.
对角化:从Cantor到Turing
Cantor:实数不可数—假设[0,1]可列,取对角线构成不在表中的新实数. Turing:TM可数(有限描述)→语言不可数(等势R)→∃不可识别语言.
A_TM可识别(UTM模拟)但不可判定(对角线). E_TM的补可识别(∃w∈L(M)? 非确定猜w,跑M(w)→若接受则接受). E_TM本身不可识别.

计算理论导论 Cheatsheet · 第2页 (空间 / 高级专题 / 证明模板)

空间复杂性类
L=SPACE(log n). NL=NSPACE(log n). PSPACE=∪_k SPACE(nᵏ). EXPSPACE=∪_k SPACE(2^{nᵏ}). 空间不计输入(只读)
SPACE(f)⊆TIME(2^{O(f)})(格局数有界). TIME(f)⊆SPACE(f). 空间层次:f=o(g)⇒SPACE(f)⊊SPACE(g). 推论:L⊊PSPACE⊊EXPSPACE.
L⊆NL⊆P⊆NP⊆PSPACE=NPSPACE⊆EXPTIME⊆EXPSPACE
已知严格:L⊊PSPACE⊊EXPSPACE; P⊊EXPTIME. Open:P?=NP,NP?=coNP,P?=PSPACE,BPP?=P
Savitch定理 ★必考
NSPACE(f(n))⊆SPACE(f(n)²)(f≥log n). 推论:PSPACE=NPSPACE
CANYIELD(C₁,C₂,t):判C₁能否≤t步到C₂. t=1直接检;t>1枚举所有格局C_m,递归CANYIELD(C₁,C_m,⌈t/2⌉)∧CANYIELD(C_m,C₂,⌊t/2⌋). t≤2^{dg(n)},递归深O(g(n)),每层存C₁,C₂,C_m,t=O(g(n))→总O(g(n)²).
Immerman-Szelepcsényi
NL=coNL. 归纳计数:对每步i计算≤i步内可达格局数c_i→利用c_{i-1}验证"格局v在≤i步不可达"→补语言∈NL. 仅O(log n)空间.
PATH={⟨G,s,t⟩|s→t有向路径}∈NL完备(≤_L下). PATH∈NL:非确定猜路径,每步记当前位置. NL-hard:NTM格局图→PATH.
PSPACE完备: TQBF
TQBF={⟨Φ⟩|Φ=Q₁x₁...Q_nx_nφ为真},Qᵢ∈{∃,∀}. TQBF是PSPACE完备. TQBF∈PSPACE:递归求值空间O(n).
PSPACE-hard:∀L∈PSPACE,格局可达问题→量词编码:∃∀交替="存在格局使...所有格局使...". 表达能力等于PSPACE.
多项式层级 (PH)
Σ₀^P=Π₀^P=P. Σ_{k+1}^P=NP^{Σ_k^P}; Π_{k+1}^P=coΣ_{k+1}^P; Δ_{k+1}^P=P^{Σ_k^P}. PH=∪_k Σ_k^P⊆PSPACE
量词:L∈Σ_k^P⟺∃y₁∀y₂∃y₃...Q_ky_kR(...). Π_k^P以∀开头. Σ₁=NP;Π₁=coNP;Σ₂=NP^{NP}(∃∀).
坍缩:Σ_i^P=Π_i^P⇒∀j>i:Σ_j^P=Σ_i^P. P=NP⇒PH=P. BPP⊆Σ₂^P∩Π₂^P. Σ₂^P完备:MIN-FORMULA,SUCCINCT-SC.
电路复杂度
P/poly={L|多项式大小电路族}(非均匀). P⊆P/poly(TM展开);BPP⊆P/poly(固定随机串). P/poly含不可判定语言!
PARITY∉AC⁰(FSS/Håstad):奇偶校验需ω(1)深度—最强无条件下界. 切换引理:随机部分赋值→AC⁰以高概率坍缩为浅决策树.
AC⁰⊊NC¹⊆L⊆NL⊆NC²⊆NC⊆P. AC⁰:常数深度无界fan-in; NC:polylog深度有界fan-in. 均匀电路族=P.
随机化计算
接受拒绝误差
RPPr≥1/2Pr=0单侧假负
coRPPr=1Pr≤1/2单侧假正
BPPPr≥2/3Pr≤1/3双侧
ZPP正确或"?",Pr[?]≤1/2零误差(RP∩coRP)
关系:P⊆ZPP⊆RP⊆BPP⊆P/poly; RP⊆NP. BPP⊆Σ₂^P∩Π₂^P(SGL). BPP⊆P/poly.
误差缩减:跑k次取多数,Chernoff→≤e^{-Θ(k)}. BPP可降至2^{-n}保持多项式. 例:Miller-Rabin素性测试,PIT(Schwartz-Zippel).
去随机化:若E⊄P/poly(E需指数电路)→P=BPP(NW生成器). 广泛相信P=BPP.
交互式证明 IP=PSPACE
IP:多轮交互(V=PPT,P=无界). 完备≥2/3,可靠≤1/3. NP=1轮单向. IP=PSPACE(Shamir 1992)
IP⊆PSPACE:遍历交互树→求最优P策略接受概率. PSPACE⊆IP:算术化—TQBF→多项式→∃x=Σ_bP(b),∀x=Π_bP(b)→逐量词压缩→多项式恒等检验(有限域)→常数等式.
AM(Arthur-Merlin)=IP(公共硬币). MIP(多证明者)=NEXPTIME. PCP:NP=PCP[O(log n),O(1)](Arora-Safra 1998).
伪随机生成器 (PRG)
PRG:G:{0,1}^{ℓ(n)}→{0,1}^n,ℓ
OWF(单向函数):高效可算,PPT求逆成功negl. 硬核谓词:给定f(x),预测b(x)≈1/2. Goldreich-Levin:∀OWF→b(x,r)=x⊙r mod2是HCB.
HILL(1999):OWF存在⟺PRG存在. NW生成器:组合设计+硬函数f∈E→PRG. 若E⊄P/poly→P=BPP(完全去随机化).
密码学=复杂性:安全="破解需超多项式". OWF⇒P≠NP. PKE基于大数分解/离散对数;FHE基于LWE(格).
证明模板速查
证明模板
泵引理假设正则(泵长p)→选w∈L(|w|≥p)→利用|xy|≤p限制y→取某i使xyⁱz∉L→矛盾!
对角化假设判定器H存在→构造D(⟨M⟩):用H结果取反→D(⟨D⟩)产生矛盾→H不存在
不可判定归约选已知不可判定A(通常A_TM)→构造可计算f→w∈A⟺f(w)∈B→B不可判定
NPC证明①NP:证书+验证器 ②选NPC源(3SAT) ③构造多项式f ④双条件(⇒和⇐分别证)
SavitchCANYIELD(C₁,C₂,t):t=1直接;t>1枚举C_m,递归t/2→深O(g)每层O(g)→总O(g²)
Rice证P非平凡语义→归约A_TM:f(⟨M,w⟩)=⟨M′⟩,M′先跑M(w)→若接受转M_P→L_P不可判定
核心定理速记
定理内容方法
时间层次P⊊EXPTIME对角化+模拟
空间层次L⊊PSPACE⊊EXPSPACE对角化
SavitchPSPACE=NPSPACECANYIELD中位搜索
Immerman-Sz.NL=coNL归纳计数
Cook-LevinSAT是NPC计算表→布尔公式
ShamirIP=PSPACE算术化
SGLBPP⊆Σ₂^P∩Π₂^P概率方法
HILLOWF⟺PRGHCB+迭代
FSS/HåstadPARITY∉AC⁰切换引理
重要反例与分界线
概念正例/结论反例/边界
正则语言DFA/NFA/Regex等价{0ⁿ1ⁿ}(CFL非正则);{aᵖ}(非CFL)
可判定A_DFA,E_DFA,EQ_DFA, A_CFG,E_CFGA_TM,HALT_TM,E_TM,EQ_TM
NPSAT,CLIQUE,HAMPATH,SSTAUTOLOGY(coNP); TQBF(PSPACE)
PSPACETQBF(完备);NFA等价性EXPTIME完备问题
PPATH,素性测试(AKS),CYKNPC问题(若P≠NP)
L/NLPATH∈NL; 无向连通∈L(Reingold)有向连通∉L(若L≠NL)
PH之内BPP⊆Σ₂^P; NPC⊆Σ₁^PPSPACE完备问题(若PH≠PSPACE)
考前最后提醒
必考:对角化证A_TM不可判定; 泵引理证非正则; NPC证明四步法; Savitch定理CANYIELD. 大概率:Rice定理; IP=PSPACE算术化思想; BPP误差缩减. 可能:PARITY∉AC⁰; NL=coNL证明思路; PH坍缩.
时间分配建议:概念题10min→构造题20min→证明题50min→检查10min. 证明题逻辑链完整>长篇大论. 公式用\(...\)标注.