- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第8章 计算复杂性
概述 Oded Goldreich提出定义“安全”的两种途径: 基于信息论的经典方法:度量密文中包含明文的信息量。 基于计算复杂性的现代方法:给出破解密文的难度。 本章内容 介绍确定型图灵机、非确定型图灵机、概率图灵机这三个基本计算模型; 在三种图灵机的基础上讨论NP完全问题和加密体制是否安全之间的关系; 多项式时间不可区分性。 8.1 确定性多项式时间 8.1.1 算法效率分析 什么是算法? 算法(Algorithm)即是在有限步骤内求解某一问题所使用的一组定义明确的规则。 如何衡量算法的效率? 使用复杂度来衡量算法的效率。 算法效率分析 定义8.1 复杂度 时间复杂度(Time Complexity):该算法完全运行所需运算时间的多少。通常采用阶(Order)的概念来描述时间复杂度。 空间复杂度(Space Complexity):该算法完全运行所需存储空间的大小。 算法效率分析 定义8.2 渐进记号(Asymptotic Notation) 假定 、 均为非负函数,定义域均为N。问题的输入规模为n,为描述渐进复杂度中的阶,定义如下记号: O:当且仅当 ,称 :当且仅当 ,称 :当且仅当 与 ,称 算法效率分析 算法效率分析 定义8.3 有效算法(Efficient Algorithm) 时间复杂度为O(nk)(k∈N)的算法是有效算法。多项式算法是有效算法。 8.1.2 问题的难度 如何判断问题的难度: 如果一个问题存在有效算法解决之,则可认为它是较“简单”的问题,反之则可认为它是较“困难”的问题。 问题的难度 定义8.4 确定型图灵机(Deterministic Turing Machine) 一台DTM由如下要素组成: 符号表∑:∑由有限个符号组成,包括标识空白的特殊字符*; 可双向移动的无限长纸带:该纸带由无限个方格组成,方格上的符号均属于∑,除了有限个方格外,其它方格上的符号均为*; 读写头:可在任一时刻对某个确定的方格进行操作。此读写头可向左(←)或向右(→)移动; 控制器:它携带状态集Γ,包括特定的起始状态 和停机状态集 。 问题的难度 DTM的计算可由转移函数(Transition Function)决定: 若控制器当前状态为 且读写头指向方格内容为 ,转移函数 可完成如下工作: 若 ,则计算停止(也称停机),否则确定控制器的下一步状态 ; 修改读写头指向方格内容,将其改为 ; 确定读写头移动的方向,要么向左(←),要么向右(→)。 问题的难度 问题的难度 8.2 非确定多项式时间 非确定多项式时间 非确定多项式时间 8.3 概率多项式时间 概率多项式时间 PP机(Probabilistic Polynomial-time Machine) : 存在多项式界限且没有未知状态的PTM。 PP机满足两类概率的界限: 输入I属于语言L时,PTM识别该输入属于语言L的概率,这是一种正确概率: 输入I不属于语言L时,PTM识别该输入属于语言L的概率,这是一种错误概率: BPP机(Bounded Probabilistic Polynomial-time Machine) 界限为 和 的PTM。 概率多项式时间 定义8.8 广义的有效算法 在DTM或PP机下的多项式算法是有效算法。 定义8.9 Monte Carlo算法 满足下列特点的概率算法: 这种算法的速度最快,但会犯一定的错误。它对应复杂性类PP(Monte Carlo)。 概率多项式时间 定义8.10 Las Vegas算法 满足下列特点的概率算法: 这种算法几乎完全正确,但速度较慢。它对应复杂性类PP(Las Vegas) 定义8.11 Zero-sided-error算法 满足下列特点的概率算法: Zero-sided-error算法速度最快,也几乎完全正确。它对应复杂性类ZPP。 8.4 多项式时间不可区分性 * * 第8章 计算复杂性 通常分析时间的渐进复杂度,常使用O记号,指明算法的上界。Θ记号更为精确,但难以估算,较少采用。
文档评论(0)