【计算理论基础】

这篇博客详细介绍了计算理论的基础概念,包括正则语言、上下文无关语言、图灵机及其可判定和可识别语言。此外,还深入探讨了这些语言类在不同运算下的封闭性证明,如正则语言在并、连接、星号运算下的封闭。同时,文章讨论了可判定性、可识别性以及NP完全问题的证明,并阐述了复杂度的包含关系,如TIME、NTIME、SPACE和NSPACE等复杂度类的关系。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 语言类的定义

1.1 正则语言

定义:
如果一个语言可以被一台有穷自动机识别,则称它是正则语言。
有穷自动机是一个五元组(Q,Σ,δ,q0,F)(Q,Σ,δ,q_0,F)(Q,Σ,δ,q0,F),其中:

  1. QQQ是一个有穷集合,称为状态集。
  2. ΣΣΣ是一个有穷集合,称为字母集。
  3. δ:Q×Σ→Qδ:Q×Σ→Qδ:Q×ΣQ是转移函数。
  4. q0∈Qq_0∈Qq0Q是起始状态。
  5. F⊆QF⊆QFQ是接受状态集。

举例:L(M)=L(M) =L(M)= { w∣ww | www是空串或以0结束}

1.2 上下文无关语言

定义:
与上下文无关文法相关的语言或者被下推自动机PDA识别的语言称为上下文无关语言。
上下文无关文法是一个四元组(V,Σ,R,S)(V,Σ,R,S)(V,Σ,R,S),其中:

  1. VVV是一个有穷集合,称为变元集。
  2. ΣΣΣ是一个与VVV不相交的有穷集合,称为终结符集。
  3. RRR是一个有穷规则集,每条规则由一个变元和一个由变元及终结符组成的字符串构成。
  4. SSS是起始变元。

举例:{ 0n1n∣n≥00^n1^n | n ≥ 00n1nn0}

1.3 图灵机

定义:
一台图灵机是一个七元组,{ Q,Σ,Q , Σ ,Q,Σ, ? , δ,q0,qaccept,qrejectδ , q_0 , q_{accept} , q_{reject}δ,q0,qaccept,qreject},其中:Q,Σ,Q , Σ ,Q,Σ, ? 都是有限集合,且满足:

  1. QQQ是状态集合。
  2. ΣΣΣ是输入字母表,其中不包含特殊的空白符☐。
  3. ? 是带字母表,其中☐∈? 且Σ ∈? 。
  4. δδδQ×Q ×Q× ? →Q×→ Q ×Q× ? ××× {L,R}是转移函数,其中{L,R}表示读写头是向左移还是向右移。
  5. qo∈Qq_o∈QqoQ是起始状态。
  6. qacceptq_{accept}qaccept是接受状态。
  7. qrejectq_{reject}qreject是拒绝状态。qaccept≠qrejectq_{accept} ≠ q_{reject}qaccept=qreject
1.4 图灵可判定语言

定义:
如果一个语言能被某一图灵机判定,则称该语言是图灵可判定的。
举例:ACFG=A_{CFG} =ACFG= { <G,w>∣G是CFG,w是串,G派生w<G,w> | G是CFG,w是串,G派生w<G,w>GCFG,wGw}

1.5 图灵可识别语言

定义:
如果一个语言能被某一图灵机识别,则称该语言是图灵可识别的。
举例:ATMA_{TM}ATM

1.6 非图灵可识别语言

定义:
如果一个语言不能被任何图灵机识别,则称该语言是图灵不可识别的。
举例:~ATM~A_{TM}ATM

2. 封闭性证明

2.1 证明正则语言类在并、连接、星号运算下封闭
  • 并运算
    构造两个有穷自动机N1N2N_1N_2N1N2,分别识别两个正则语言,构造第三个有穷自动机NNN识别它们俩的并。其中:
    NNN的起始状态是新的。
    NNN的状态集是它们俩状态集的并再加上NNN的起始状态。
    NNN的接受状态集是它们俩的接受状态集合的并。
    只要其中一个有穷自动机接受则接受。

  • 连接运算
    构造两个有穷自动机N1N2N_1N_2N1N2,分别识别两个正则语言,构造第三个有穷自动机NNN识别它们俩的连接。其中:
    NNN的状态集是N1N2N_1N_2N1N2的状态集的并。
    NNN的起始状态是N1N_1N1的起始状态,NNN的接受状态集是N2N_2N2的接受状态集。

  • 星号
    构造一个识别正则语言A1A_1A1的有穷自动机N1N_1N

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值