清华大学出版社 TSINGHUA UNIVERSITY PRESS 第8章NP完全性理论
1 第8章 NP完全性理论
清华大学出版社 TSINGHUA UNIVERSITY PRESS 8.1计算模型 8.1.1随机存取机RAM ·8.1.2随机存取存储程序机RASP ·8.1.3RAM模型的变形与简化 8.1.4图灵机 ·8.1.5图灵机模型与RAM模型的关系 ·8.1.6问题变换与计算复杂性归约 2
2 8.1 计算模型 • 8.1.1 随机存取机RAM • 8.1.2 随机存取存储程序机RASP • 8.1.3 RAM模型的变形与简化 • 8.1.4 图灵机 • 8.1.5 图灵机模型与RAM模型的关系 • 8.1.6 问题变换与计算复杂性归约
清华大学出版社 TSINGHUA UNIVERSITY PRESS 81.1随机存取机RAM 1.RAM的结构 x1x2·xn二只读输入带 累加器 指令计数器 程序存储部件 内存储器 「y1|y2|- 只写输出带
3 8.1.1 随机存取机RAM 1. RAM的结构
清华大学出版社 TSINGHUA UNIVERSITY PRESS 8.1.1随机存取机RAM 2.RAM程序 △个RAM程序定义了从输入带到输出带的一个映射。可以对 这种映射关系作2种不同的解释。 解释一:把RAM程序看成是计算一个函数 若一个RAM程序P总是从输入带前n个方格中读入n个整数 X1X ,Xn,并且在输出带的第一个方格上输出一个整数 后停机,那么就说程序P计算了函数f(X1,X2 X 解释二:把RAM程序当作一个语言接受器。 将字符串S=a1a2an放在输入带上。在输入带的第一个方 格中放入符号a1,第二个方格中放入符号a2,…,第n个方格中 放入符号an。然后在第n+1个方格中放入0,作为输入串的结束标 志符。如果一个RAM程序P读了字符串S及结束标志符0后,在输 带的第一格输出一个1并停机,就说程序P接受字符串S。4
4 8.1.1 随机存取机RAM 2. RAM程序 一个RAM程序定义了从输入带到输出带的一个映射。可以对 这种映射关系作2种不同的解释。 解释一:把RAM程序看成是计算一个函数 若一个RAM程序P总是从输入带前n个方格中读入n个整数 x1,x2,…,xn,并且在输出带的第一个方格上输出一个整数y 后停机,那么就说程序P计算了函数f(x1,x2,…,xn )=y 解释二:把RAM程序当作一个语言接受器。 将字符串S=a1 a2…an放在输入带上。在输入带的第一个方 格中放入符号a1,第二个方格中放入符号a2,…,第n个方格中 放入符号an。然后在第n+1个方格中放入0,作为输入串的结束标 志符。如果一个RAM程序P读了字符串S及结束标志符0后,在输出 带的第一格输出一个1并停机,就说程序P接受字符串S
清华大学出版社 TSINGHUA UNIVERSITY PRESS 8.1.1随机存取机RAM 3RAM程序的耗费标准 标准一:均匀耗费标准 在均匀耗费标准下,每条RAM指令需要一个单位时间;每 个寄存器占用一个单位空间。以后除特别注明,RAM程序的复杂 性将按照均匀耗费标准衡量。 标准二:对数耗费标准 对数耗费标准是基于这样的假定,即执行条指令的耗费 与以二进制表示的指令的操作数长度成比例。在RAM计算模型下 假定一个寄存器可存放—个任意大小的整数。因此若设|(是整 数所占的二进制位数,则 og i≠0 i=0
5 8.1.1 随机存取机RAM 3. RAM程序的耗费标准 标准一:均匀耗费标准 在均匀耗费标准下,每条RAM指令需要一个单位时间;每 个寄存器占用一个单位空间。以后除特别注明,RAM程序的复杂 性将按照均匀耗费标准衡量。 标准二:对数耗费标准 对数耗费标准是基于这样的假定,即执行一条指令的耗费 与以二进制表示的指令的操作数长度成比例。在RAM计算模型下, 假定一个寄存器可存放一个任意大小的整数。因此若设l(i)是整 数i所占的二进制位数,则 0 0 1 log | | ( ) = = i i i l i