computer-science / theory
计算理论
可计算性、P/NP、信息论、自动机、密码学——计算的数学骨架
93 篇
可计算性理论
Computability Theory
在第一台电子计算机被制造出来之前整整十年,数学家们已经严格地证明了:某些问题,无论计算机有多强大,永远无法被程序所解决。这不是工程的局限,而是数学的边界——一条永远不会因为技术进步而后退的线。
可计算性 · 停机问题 · 邱奇-图灵论题
被 3 个领域引用(哲学思想、宇宙学、宇宙物理)
计算复杂性理论
Computational Complexity Theory
1971 年,斯蒂芬·库克(Stephen Cook)在 ACM 会议上提出了一个问题,此后五十年没有人能够解决,而且极有可能在人类文明的有生之年都无法解决:P 是否等于 NP?
P vs NP · NP完全 · 多项式规约
被 10 个领域引用(数学、哲学思想、经济学、宇宙物理、化学、宇宙学、地球科学、人类历史、生命科学、政治学)
信息论
Information Theory
一个最基本的问题,直到 1948 年才有了精确答案:"信息"到底是什么,如何量化它?
信息熵 · 信道容量 · 编码
被 11 个领域引用(宇宙物理、生命科学、语言学、哲学思想、经济学、人类历史、宇宙学、医学与公共卫生、政治学、工程与技术、心理学)
自动机与形式语言
Automata and Formal Languages
任何一门编程语言——Python、C、Haskell——在被计算机"读懂"之前,都必须经过一个关键步骤:把源代码字符串解析为结构化的语法树。这个过程依赖的理论,是自动机与形式语言——一套把"什么是合法字符串"的问题变成精确数学的工具。
有限自动机 · 下推自动机 · 乔姆斯基谱系
被 2 个领域引用(生命科学、语言学)
密码学基础
Foundations of Cryptography
1976 年,斯坦福大学的两位研究者惠特菲尔德·迪菲(Whitfield Diffie)和马丁·赫尔曼(Martin Hellman)发表了一篇论文,标题听起来平淡无奇:《密码学的新方向》(New Directions in Cryptography)。
公钥密码学 · 单向函数 · RSA
被 6 个领域引用(数学、哲学思想、宇宙物理、经济学、政治学、法学)
λ演算与类型理论
Lambda Calculus and Type Theory
数学中的函数,在教科书里通常被写成 $f(x) = x^2 + 1$ 的形式——$f$ 有个名字,$x$ 是变量,结果是某个表达式。1936 年,阿隆佐·邱奇(Alonzo Church)提出了一种不需要函数名字的写法:把函数本身当作一个对象,写成 $\lambda x.\, x^2 + 1$。
lambda演算 · 类型系统 · Curry-Howard对应
被 2 个领域引用(哲学思想、数学)
形式文法与乔姆斯基谱系
Formal Grammars and the Chomsky Hierarchy
1956 年,一位年轻的语言学家在 IRE《信息论汇刊》上发表了一篇论文:《语言描述的三个模型》("Three Models for the Description of Language")。他的问题是语言学的:如何用数学方法描述人类语言的结构?然而,他的答案成为了计算机科学的核心理论之一。
乔姆斯基谱系 · 形式文法 · 上下文无关文法
被 5 个领域引用(哲学思想、语言学、心理学、人类历史、文学与叙事)
量子计算理论
Quantum Computing Theory
1994 年,美国数学家彼得·肖尔(Peter Shor)发表了一个算法。这个算法可以在多项式时间内分解大整数——而人类目前已知最好的经典算法(普通计算机上运行的算法)需要次指数时间。
量子计算 · BQP · 肖尔算法
被 4 个领域引用(宇宙物理、数学、化学、工程与技术)
柯莫哥洛夫复杂度
Kolmogorov Complexity
第一个字符串只是一串 A。你可以用一句话描述它:"一串 A",或者写一段极短的程序:print('A' 50)。第二个字符串看起来是随机的,描述它的唯一方法似乎是把它原样写出来。
柯莫哥洛夫复杂度 · 算法信息论 · 随机性
被 4 个领域引用(数学、哲学思想、经济学、生命科学)
纠错码理论
Error-Correcting Codes
1977 年,旅行者 1 号从地球出发驶向木星和土星。无线电信号穿越数亿公里的真空,抵达接收天线时已经微弱到几乎无法与宇宙背景噪声区分。然而,旅行者传回的木星大气图像是清晰的。1986 年,旅行者 2 号飞过天王星,仍然发回了清晰照片——此时信号飞越将近 30 亿公里。
纠错码 · 汉明码 · Reed-Solomon码
被 9 个领域引用(哲学思想、生命科学、数学、政治学、宇宙物理、化学、宇宙学、经济学、工程与技术)
随机算法
Randomized Algorithms
一个算法,通常被认为是确定性的:给定相同的输入,它每次都执行相同的步骤,给出相同的输出。而随机算法(Randomized Algorithm)在执行过程中会抛硬币——使用随机数来做决策,使得同一输入在不同运行中可能走不同的路径。
随机算法 · 蒙特卡洛 · 拉斯维加斯
被 2 个领域引用(数学、哲学思想)
逻辑与计算
Logic and Computation
1958 年,数学家哈斯凯尔·加里(Haskell Curry)注意到一件奇怪的事:某些组合子逻辑(combinatory logic)的类型,与命题逻辑中的公式在形式上一模一样。
Curry-Howard对应 · 程序验证 · 类型论
被 2 个领域引用(哲学思想、生命科学)
计算几何
Computational Geometry
你每次用手机地图导航,都在隐式地使用计算几何。地图应用需要计算:你的位置附近有哪些餐厅(最近邻问题);沿地图的多边形区域裁剪(多边形裁剪);两条路是否交叉(线段相交);如何优化无人机的送货路径(运动规划)。
计算几何 · 凸包 · Voronoi图
被 1 个领域引用(数学)
分布式计算理论
Theory of Distributed Computing
但当成千上万台计算机通过会延迟、会丢包的网络协同工作时,一个全新的难题出现了:它们怎么对"现在到底发生了什么"达成一致?某台机器是真的崩溃了,还是只是网络慢了一拍?没有任何一台机器能看到全局。
共识 · FLP不可能性 · 拜占庭容错
被 2 个领域引用(经济学、政治学)
算法博弈论
Algorithmic Game Theory
1951 年,约翰·纳什证明了一件让经济学界震动的事:任何有限博弈,都至少存在一个均衡——一组策略,没有任何参与者能靠单方面改变策略而获益。这是博弈论的基石。
纳什均衡 · PPAD · 价格无政府
被 4 个领域引用(哲学思想、经济学、生命科学、政治学)
近似算法理论
Approximation Algorithms
假设你证明了一个问题是 NP 难的——比如规划全国快递车队的最优路线。这意味着(如果 P $\neq$ NP)你永远找不到一个又快又总能给出最优解的算法。
近似比 · NP难 · PCP定理
被 2 个领域引用(经济学、数学)
统计学习理论与 PAC 学习
Statistical Learning Theory and PAC Learning
机器学习最基本的问题不是"怎么把训练数据拟合好"——那件事平凡到可以用一张查找表完成。真正的问题是:为什么在训练集上表现好的模型,在没见过的数据上也会表现好?
PAC 学习 · VC 维 · 泛化界
被 3 个领域引用(心理学、经济学、哲学思想)
在线算法与竞争分析
Online Algorithms and Competitive Analysis
绝大多数算法课教的是这样一个世界:输入摆在你面前,你可以从容读完再决定怎么做。
在线算法 · 竞争比 · 缓存置换
交互式证明与零知识
Interactive Proofs and Zero Knowledge
"证明"这个概念在 1980 年代被重新定义了两次,每一次都让它变得更强。
交互式证明 · 零知识 · PCP 定理
被 1 个领域引用(哲学思想)
为什么 P vs NP 这么难证:三道障碍
Why P vs NP Resists Proof: The Three Barriers
大多数关于 P 与 NP 的介绍会告诉你问题是什么、悬赏多少、以及"大家都相信 P ≠ NP"。很少有介绍讲这件事:我们不只是没证出来,我们还知道为什么整类看起来最自然的证明方法注定证不出来。
P vs NP · 相对化 · 自然证明
计算的物理极限
The Physical Limits of Computation
复杂性理论问"这个问题需要多少步"。本篇问一个更基础的问题:一步计算,最少要花多少能量?
兰道尔原理 · 可逆计算 · 麦克斯韦妖
被 1 个领域引用(宇宙物理)
通信复杂度
Communication Complexity
这是一个把"计算需要多少步"换成"两个人需要说多少话"的模型,而这个换法出人意料地强大。
通信复杂度 · 集合不相交 · 下界方法
平均情况复杂性与密码学的五个世界
Average-Case Complexity and the Five Worlds
NP 完全性说的是最坏情况:某个问题存在难解的实例。但最坏情况的难度对现实几乎没有承诺。旅行商问题是 NP 完全的,而工业求解器每天处理着数万城市的实例;反过来,密码学需要的恰恰相反——它需要随机取一个实例就几乎必然难解。
平均情况复杂性 · 单向函数 · 五个世界
参数化复杂度
Parameterized Complexity
1999 年,罗德尼·唐尼(Rodney G. Downey)和迈克尔·费洛斯(Michael R. Fellows)把一本当时看起来有点偏门的书交给 Springer:《Parameterized Complexity》。
FPT · 核化 · W层次
电路复杂度
Circuit Complexity
香农在 1949 年算过一笔让人泄气的账:几乎所有 $n$ 元布尔函数都需要指数规模的电路。绝大多数函数「就是难的」。
布尔电路 · AC0 · 自然证明
细粒度复杂度
Fine-Grained Complexity
P ≠ NP 即使被证明,也不会告诉你:编辑距离该不该是 $n^2$,全源最短路该不该是 $n^3$,3SUM 该不该是 $n^2$。这些问题都在 P 里。细粒度复杂度问的是多项式的指数:在一组比 P ≠ NP 更强、也更具体的假设下,目前的 $n^2$、$n^3$ 算法是不是已经顶到天花板。
SETH · 3SUM · 正交向量
计数复杂度
Counting Complexity
1979 年,莱斯利·瓦利安特(Leslie Valiant)把一张看起来几乎和行列式一样的式子推到了理论计算机科学的中心。积和式(permanent)只是把行列式展开里的正负号全部拿掉。高斯消元能在多项式时间算出行列式;积和式却被他证明是 #P 完全的,对象见 Valiant 1979。
计数复杂度 · 积和式 · 户田定理
差分隐私
Differential Privacy
2006 年,辛西娅·德沃克(Cynthia Dwork)、弗兰克·麦克雪莉(Frank McSherry)、科比·尼西姆(Kobbi Nissim)与亚当·史密斯(Adam Smith)在 ICALP 上给出一套把「参与数据集是否改变输出分布」写成不等式的定义。
差分隐私 · 拉普拉斯机制 · 组合定理
兼职议会与 Paxos
The Part-Time Parliament
人们常把 Paxos 听成一次多数投票。名单固定、轮次清楚、票的含义事先谈妥——那样的投票,教室里就能做完。莱斯利·兰波特 1998 年刊出的《兼职议会》(The Part-Time Parliament)要处理的,是另一幅现场:议员会缺席,信使会走丢,同一条法令可能被同时发起好几次。
Paxos · 兼职议会 · 共识
拜占庭将军问题
The Byzantine Generals Problem
1982 年 7 月,莱斯利·兰波特、Robert Shostak 与 Marshall Pease 在 ACM Transactions on Programming Languages and Systems 第 4 卷第 3 期发表《The Byzantine Generals Problem》,页码 382 至 401。
拜占庭容错 · 口头消息 · 签名消息
Lamport 1978:先于关系怎样把分布式事件收成不靠墙钟的偏序
Time, Clocks, and the Ordering of Events in a Distributed System
1978 年 7 月,莱斯利·兰波特(Leslie Lamport)在 Communications of the ACM 第 21 卷第 7 期发表《Time, Clocks, and the Ordering of Events in a Distributed System》,页码 558 至 565。
逻辑时钟 · happened-before · Lamport
FLP:完全异步下一次崩溃也能挡住确定性共识
FLP 1985: Impossibility of Distributed Consensus with One Faulty Process
1985 年 4 月,迈克尔·费希尔(Michael J. Fischer)、南希·林奇(Nancy A. Lynch)与迈克尔·帕特森(Michael S. Paterson)在 Journal of the ACM 第 32 卷第 2 期发表《Impossibility of Distributed Consensus with One Faulty Process》,页码 374 至 382。
FLP · 共识 · 异步
Ben-Or 1983:抛硬币怎样把异步共识的终止改成几乎必然
Ben-Or 1983: Randomized Agreement in Complete Asynchrony
1983 年,迈克尔·本-奥尔(Michael Ben-Or)在 PODC 发表短文《Another Advantage of Free Choice: Completely Asynchronous Agreement Protocols》,页码 27 至 30。
Ben-Or · 随机共识 · FLP
Chandra–Toueg 1996:会犯错的怀疑预言怎样成为共识的最弱检测器
Chandra–Toueg 1996: Unreliable Failure Detectors for Reliable Distributed Systems
1996 年 4 月,图沙尔·迪帕克·钱德拉(Tushar Deepak Chandra)与萨姆·图埃格(Sam Toueg)在 Journal of the ACM 第 43 卷第 2 期发表《Unreliable Failure Detectors for Reliable Distributed Systems》,页码 225 至 267。
Chandra-Toueg · 故障检测器 · 最终弱检测器
Herlihy–Wing 1990:线性化怎样把并发对象收成合法的顺序历史
Linearizability: A Correctness Condition for Concurrent Objects
1990 年 7 月,莫里斯·赫利希(Maurice P. Herlihy)与珍妮特·温(Jeannette M. Wing)在 ACM Transactions on Programming Languages and Systems 第 12 卷第 3 期发表《Linearizability: A Correctness Condition for Concurrent Objects》,页码 463 至 492。
线性化 · Herlihy-Wing · 并发对象
Fidge–Mattern:分量时间戳怎样把并发从标量编号里认出来
Fidge–Mattern: Timestamps That Preserve the Partial Ordering
1988 年,科林·J.·菲奇(Colin J. Fidge)在第 11 届澳大利亚计算机科学会议(University of Queensland)发表《Timestamps in Message-Passing Systems That Preserve the Partial Ordering》,页码 56 至 66;同文亦见于 Australian Computer Science Communications 第 10 卷第 1 期。
向量时钟 · Fidge · Mattern
Garcia-Molina 1982:编号更高的进程怎样在超时假设下抢走协调者
Garcia-Molina 1982: Elections in a Distributed Computing System
1982 年 1 月,赫克托·加西亚-莫利纳(Hector Garcia-Molina)在 IEEE Transactions on Computers 第 C-31 卷第 1 期发表《Elections in a Distributed Computing System》,页码 48 至 59。
bully · 选举算法 · Garcia-Molina
Castro–Liskov 1999:实用拜占庭容错,不是将军寓言
Castro–Liskov 1999: Practical Byzantine Fault Tolerance
1999 年 2 月,米格尔·卡斯特罗(Miguel Castro)与 芭芭拉·利斯科夫 在新奥尔良第三届 OSDI 上发表《Practical Byzantine Fault Tolerance》,页码 173 至 186,DOI 10.5555/296806.296824。
PBFT · 拜占庭容错 · 状态机复制
Chandy–Lamport 1985:标记消息怎样把全局状态收成一致割
Distributed Snapshots: Determining Global States of Distributed Systems
1985 年 2 月,凯·马尼·钱迪(K. Mani Chandy)与 莱斯利·兰波特(Leslie Lamport)在 ACM Transactions on Computer Systems 第 3 卷第 1 期发表《Distributed Snapshots: Determining Global States of Distributed Systems》,页码 63 至 75。
分布式快照 · Chandy-Lamport · 一致割
Gilbert–Lynch 2002:异步网上原子寄存器无法既可用又抗分区
Brewer's Conjecture and the Feasibility of Consistent, Available, Partition-Tolerant Web Services
2002 年 6 月,塞思·吉尔伯特(Seth Gilbert)与南希·林奇(Nancy A. Lynch)在 ACM SIGACT News 第 33 卷第 2 期发表《Brewer's Conjecture and the Feasibility of Consistent, Available, Partition-Tolerant Web Services》,页码 51 至 59。
CAP · Gilbert-Lynch · 原子寄存器
Gray 1978:两阶段提交怎样把多处改动收成提交或中止
Notes on Data Base Operating Systems: Two-Phase Commit
1978 年,吉姆·格雷(Jim Gray)的长篇讲义《Notes on Data Base Operating Systems》收入鲁道夫·拜耳(Rudolf Bayer)、罗伯特·格雷厄姆(Robert M. Graham)与格哈德·塞格米勒(Gerhard Seegmüller)主编的 Operating Systems: An Advanced Course,作为 Springer LNCS 第 60 卷印出,页码 393 至 481。
两阶段提交 · 原子提交 · 协调者
Shapiro 2011:副本收敛是半格或可交换操作,不是共识协议
Conflict-free Replicated Data Types
2011 年 10 月,马克·夏皮罗(Marc Shapiro)、努诺·普雷吉萨(Nuno Preguiça)、卡洛斯·巴克罗(Carlos Baquero)与马雷克·扎维尔斯基(Marek Zawirski)在第十三届 Stabilization, Safety, and Security of Distributed Systems(SSS)发表《Conflict-free Replicated Data Types》,收入 Springer LNCS 第 6976 卷,页码 386 至 400。
CRDT · 半格 · 强最终一致性
Dwork–Lynch–Stockmeyer 1988:终将有界的延迟怎样让确定性共识可能
DLS 1988: Consensus in the Presence of Partial Synchrony
1988 年 4 月,辛西娅·德沃克(Cynthia Dwork)、南希·林奇(Nancy A. Lynch)与拉里·斯托克迈尔(Larry Stockmeyer)在 Journal of the ACM 第 35 卷第 2 期发表《Consensus in the Presence of Partial Synchrony》,页码 288 至 323。
部分同步 · GST · 共识
Attiya–Bar-Noy–Dolev 1995:消息传递上的原子寄存器
ABD 1995: Sharing Memory Robustly in Message-Passing Systems
1995 年 1 月,哈吉特·阿蒂亚(Hagit Attiya)、阿莫茨·巴尔-诺伊(Amotz Bar-Noy)与丹尼·多莱夫(Danny Dolev)在 Journal of the ACM 第 42 卷第 1 期发表《Sharing Memory Robustly in Message-Passing Systems》,页码 124 至 142。
ABD · 原子寄存器 · 多数派
Herlihy 1991:等待自由怎样按共识数给并发对象分层
Wait-Free Synchronization
1991 年 1 月,莫里斯·赫利希(Maurice P. Herlihy)在 ACM Transactions on Programming Languages and Systems 第 13 卷第 1 期发表《Wait-Free Synchronization》,页码 124 至 149。
等待自由 · 共识数 · Herlihy
Herlihy–Moss 1993:事务内存怎样用体系结构支持无锁数据结构
Transactional Memory: Architectural Support for Lock-Free Data Structures
1993 年 5 月,莫里斯·赫利希(Maurice Herlihy)与 J. 艾略特·B. 莫斯(J. Eliot B. Moss)在第 20 届计算机体系结构国际研讨会(ISCA)发表《Transactional Memory: Architectural Support for Lock-Free Data Structures》,页码 289 至 300。
事务内存 · Herlihy-Moss · 无锁
Cook 1971:定理证明手续的复杂度怎样把 SAT 写成 NP 完全
The Complexity of Theorem-Proving Procedures
1971 年 5 月 3 日至 5 日,第三届 ACM 计算理论年会(STOC)在俄亥俄州谢克海茨(Shaker Heights)举行。多伦多大学的斯蒂芬·库克(Stephen A. Cook)发表《The Complexity of Theorem-Proving Procedures》,页码 151 至 158。
Cook-Levin · NP完全 · SAT
Shavit–Touitou 1995:软件事务内存怎样把无锁写成运行时而不是每只对象的手工艺
Software Transactional Memory
1995 年 8 月,尼尔·沙维特(Nir Shavit)与丹·图伊图(Dan Touitou)在第 14 届分布式计算原理研讨会(PODC)发表《Software Transactional Memory》,页码 204 至 213。DOI 为 10.1145/224964.224987。
软件事务内存 · STM · PODC 1995
Karp 1972:组合问题之间的可归约性怎样把二十一个问题写成多项式完全
Reducibility among Combinatorial Problems
1972 年 3 月 20 日至 22 日,国际商用机器公司托马斯·J·沃森研究中心在纽约州约克敦海茨召开「计算机计算的复杂度」讨论会。加州大学伯克利分校的理查德·卡普(Richard M. Karp)发表《Reducibility among Combinatorial Problems》。
Karp · NP完全 · 多一归约
Lamport 1979:顺序一致性怎样把多处理器程序收成某一条尊重程序序的交错
How to Make a Multiprocessor Computer That Correctly Executes Multiprocess Programs
1979 年 9 月,莱斯利·兰波特(Leslie Lamport)在 IEEE Transactions on Computers 第 C-28 卷第 9 期发表《How to Make a Multiprocessor Computer That Correctly Executes Multiprocess Programs》,页码 690 至 691。
顺序一致性 · Lamport · 多处理器
Goldwasser–Micali–Rackoff 1985:交互证明系统的知识复杂度怎样把零知识写成定义
The Knowledge Complexity of Interactive Proof-Systems
1985 年 5 月 6 日至 8 日,第十七届 ACM 计算理论年会(STOC)在罗德岛普罗维登斯举行。
GMR · 交互式证明 · 知识复杂度
Hoare 1969:公理基础怎样把程序正确性写成可推导的三元组
An Axiomatic Basis for Computer Programming
1969 年 10 月,《美国计算机学会通讯》(Communications of the ACM)第 12 卷第 10 期发表 C. A. R. 霍尔(Charles Antony Richard Hoare)的《An Axiomatic Basis for Computer Programming》,页码 576 至 580、583。
Hoare三元组 · 赋值公理 · 推论规则
Floyd 1967:归纳断言怎样把程序的意义写在流程图的边上
Assigning Meanings to Programs
1966 年 4 月,美国数学会在纽约召开应用数学讨论会,主题是计算机科学的数学方面。卡内基理工学院(Carnegie Institute of Technology)的罗伯特·弗洛伊德(Robert W. Floyd)宣读了《Assigning Meanings to Programs》。
Floyd · 归纳断言 · 流程图
Savitch 1970:非确定性空间怎样被确定性平方空间模拟
Relationships Between Nondeterministic and Deterministic Tape Complexities
1970 年 4 月,《计算机与系统科学杂志》(Journal of Computer and System Sciences)第 4 卷第 2 期刊出沃尔特·萨维奇(Walter J. Savitch)的《Relationships Between Nondeterministic and Deterministic Tape Complexities》,页码 177 至 192。
Savitch定理 · 空间复杂度 · NSPACE
Valiant 1979:积和式怎样把计数写成比判定更硬的类
The Complexity of Computing the Permanent
1979 年,《理论计算机科学》(Theoretical Computer Science)第 8 卷第 2 期刊出莱斯利·瓦利安特(Leslie G. Valiant)的《The Complexity of Computing the Permanent》,页码 189 至 201。
Valiant · 积和式 · 永久式
Yao 1979:分布式计算的复杂度问题怎样把通信写成资源
Some Complexity Questions Related to Distributive Computing
1979 年 4 月 30 日至 5 月 2 日,第十一届 ACM 计算理论年会(STOC)在佐治亚州亚特兰大举行。
Yao · 通信复杂度 · STOC 1979
Dijkstra 1965:互斥怎样在没有仲裁者的共享变量上写成可推理的问题
Solution of a Problem in Concurrent Programming Control
1965 年 9 月,艾兹格·威贝·迪科斯彻(Edsger W. Dijkstra)在 Communications of the ACM 第 8 卷第 9 期发表《Solution of a Problem in Concurrent Programming Control》,整整一页,页码 569。
Dijkstra · 互斥 · 临界区
Peterson 1981:两进程互斥怎样用两面旗与一个 turn 写成短注
Myths About the Mutual Exclusion Problem
1981 年 6 月 13 日,加里·L·彼得森(Gary L. Peterson)在 Information Processing Letters 第 12 卷第 3 期发表《Myths About the Mutual Exclusion Problem》,页码 115 至 116。
Peterson · 互斥 · Dekker
Hartmanis–Stearns 1965:算法复杂度怎样被写成时间可构造的层次
On the Computational Complexity of Algorithms
1965 年 5 月,《美国数学会汇刊》(Transactions of the American Mathematical Society)第 117 卷刊出尤里斯·哈特马尼斯(Juris Hartmanis)与理查德·斯特恩斯(Richard E. Stearns)的《On the Computational Complexity of Algorithms》,页码 285 至 306。
Hartmanis · Stearns · 时间层次
Lamport 1974:面包店算法怎样给互斥加上先来先服务
A New Solution of Dijkstra's Concurrent Programming Problem
1974 年 8 月,莱斯利·兰波特(Leslie Lamport)在 Communications of the ACM 第 17 卷第 8 期发表《A New Solution of Dijkstra's Concurrent Programming Problem》,页码 453 至 455。
Lamport · 面包店算法 · 互斥
Levin 1973:通用顺序搜索怎样把 NP 搜索写成一个万能问题
Universal Sequential Search Problems
1973 年,《Проблемы передачи информации》(《信息传输问题》)第 9 卷第 3 期刊出列昂尼德·列文(Leonid A. Levin)的短讯《Универсальные задачи перебора》。页码 115 至 116。
Levin · NP 完全 · 通用搜索
Knuth 1966:互斥的集体进展怎样仍允许一个人被永远超过
Additional Comments on a Problem in Concurrent Programming Control
1966 年 5 月,唐纳德·厄尔·克努斯(Donald E. Knuth)在 Communications of the ACM 第 9 卷第 5 期发表《Additional Comments on a Problem in Concurrent Programming Control》,页码 321,排到 322 上栏,体裁是半页评论。
Knuth · 互斥 · 饥饿
Immerman–Szelepcsényi 1988:非确定性空间怎样对补运算封闭
Nondeterministic Space is Closed Under Complementation
1988 年 10 月,《SIAM 计算杂志》(SIAM Journal on Computing)第 17 卷第 5 期刊出尼尔·伊默尔曼(Neil Immerman)的《Nondeterministic Space is Closed Under Complementation》,页码 935 至 938。
Immerman · Szelepcsényi · NL
Baker–Gill–Solovay 1975:相对化怎样把对角化挡在 P 对 NP 门外
Relativizations of the P =? NP Question
1975 年 12 月,《SIAM 计算杂志》(SIAM Journal on Computing)第 4 卷第 4 期刊出西奥多·贝克(Theodore Baker)、约翰·吉尔(John Gill)与罗伯特·索洛维(Robert Solovay)的《Relativizations of the P =?
Baker–Gill–Solovay · 相对化 · 神谕
Ladner 1975:若 P 不等于 NP,中间问题怎样必须存在
On the Structure of Polynomial Time Reducibility
1975 年 1 月,《ACM 会刊》(Journal of the ACM)第 22 卷第 1 期刊出理查德·拉德纳(Richard E. Ladner)的《On the Structure of Polynomial Time Reducibility》,页码 155 至 171。
Ladner · NP 中间 · 多项式归约
Razborov–Rudich 1997:自然证明怎样把电路下界挡在伪随机函数门外
Natural Proofs
1997 年 8 月,《计算机与系统科学杂志》(Journal of Computer and System Sciences)第 55 卷第 1 期刊出亚历山大·拉兹博罗夫(Alexander A. Razborov)与史蒂文·鲁迪奇(Steven Rudich)的《Natural Proofs》,页码 24 至 35。
自然证明 · 电路复杂度 · 伪随机
Furst–Saxe–Sipser 1984:常数深度电路怎样算不出奇偶性
Parity, Circuits, and the Polynomial-Time Hierarchy
1984 年 12 月,《数学系统理论》(Mathematical Systems Theory)第 17 卷刊出梅里克·弗斯特(Merrick Furst)、詹姆斯·B·萨克斯(James B. Saxe)与迈克尔·西普塞尔(Michael Sipser)的《Parity, Circuits, and the Polynomial-Time Hierarchy》,页码 13 至 27。
AC0 · 奇偶性 · 电路复杂度
Håstad 1986:切换引理怎样把浅电路收成近乎最优的下界
Almost Optimal Lower Bounds for Small Depth Circuits
1986 年 5 月 28 日至 30 日,第十八届 ACM 计算理论年会(STOC)在加利福尼亚州伯克利举行。约翰·哈斯塔德(Johan Håstad)的《Almost Optimal Lower Bounds for Small Depth Circuits》印在会议录页码 6 至 20。
切换引理 · AC0 · 奇偶性
Karp–Lipton 1980:SAT 若有多项式电路,多项式层次怎样坍到第二层
Some Connections between Nonuniform and Uniform Complexity Classes
1980 年 4 月 28 日至 30 日,第十二届 ACM 计算理论年会(STOC)在洛杉矶举行。
Karp–Lipton · P/poly · 多项式层次
Razborov 1985:单调电路怎样看不见团
Lower bounds on the monotone complexity of some Boolean functions
1985 年,《苏联科学院报告》(Doklady Akademii Nauk SSSR)第 281 卷第 4 期刊出亚历山大·拉兹博罗夫(Alexander A. Razborov)的俄文短讯《Нижние оценки монотонной сложности некоторых булевых функций》,页码 798 至 801。
单调电路 · 团 · 近似方法
Adleman 1978:可放大的随机性怎样被多项式忠告替换
Two Theorems on Random Polynomial Time
1978 年 10 月 16 日至 18 日,第十九届计算机科学基础年会(FOCS)在密歇根州安阿伯举行。会议录页码 75 至 83 刊出伦纳德·阿德尔曼(Leonard M. Adleman)的《Two Theorems on Random Polynomial Time》。
Adleman · BPP · P/poly
Toda 1991:多项式层次怎样被一次
PP is as Hard as the Polynomial-Time Hierarchy
1991 年 10 月,《SIAM 计算杂志》(SIAM Journal on Computing)第 20 卷第 5 期刊出户田诚之助(Seinosuke Toda)的《PP is as Hard as the Polynomial-Time Hierarchy》,页码 865 至 877。
Toda · 户田定理 · PP
Nisan–Wigderson 1994:E 里足够硬的函数怎样冒充 BPP 测试者的硬币
Hardness vs Randomness
1994 年 10 月,《计算机与系统科学杂志》(Journal of Computer and System Sciences)第 49 卷第 2 期刊出诺姆·尼桑(Noam Nisan)与阿维·维格德森(Avi Wigderson)的《Hardness vs Randomness》,页码 149 至 167。
Nisan–Wigderson · 伪随机发生器 · 去随机化
Valiant–Vazirani 1986:唯一可满足性怎样被随机归约钉成和 SAT 一样硬
NP is as easy as detecting unique solutions
1986 年,《理论计算机科学》(Theoretical Computer Science)第 47 卷刊出莱斯利·瓦利安特(Leslie G. Valiant)与维贾伊·瓦齐拉尼(Vijay V. Vazirani)的《NP is as easy as detecting unique solutions》,页码 85 至 93。
Valiant–Vazirani · 隔离引理 · Unique SAT
Impagliazzo–Wigderson 1997:E 的指数电路硬度怎样把 BPP 收成 P
P = BPP if E Requires Exponential Circuits: Derandomizing the XOR Lemma
1997 年 5 月 4 日至 6 日,第二十九届 ACM 计算理论年会(STOC)在得克萨斯州埃尔帕索举行。
Impagliazzo–Wigderson · 去随机化 · BPP
Yao 1982:陷门函数怎样把单向置换的硬度放大成假硬币
Theory and Application of Trapdoor Functions
1982 年 11 月 3 日至 5 日,第二十三届计算机科学基础年会(FOCS)在伊利诺伊州芝加哥举行。会议录页码 80 至 91 刊出姚期智(Andrew C. Yao)的《Theory and Application of Trapdoor Functions》。
Yao · 陷门函数 · XOR引理
Goldreich–Levin 1989:每个单向函数都有一枚内积硬核谓词
A Hard-Core Predicate for all One-Way Functions
1989 年 5 月 15 日至 17 日,第二十一届 ACM 计算理论年会(STOC)在华盛顿州西雅图举行。
Goldreich–Levin · 硬核谓词 · 单向函数
Blum–Micali 1984:离散对数硬核怎样迭代成密码学伪随机比特
How to Generate Cryptographically Strong Sequences of Pseudorandom Bits
1984 年 11 月,《SIAM Journal on Computing》第 13 卷第 4 期刊出曼纽尔·布卢姆(Manuel Blum)与西尔维奥·米卡利(Silvio Micali)的《How to Generate Cryptographically Strong Sequences of Pseudorandom Bits》,页码 850 至 864。
Blum–Micali · 伪随机发生器 · 硬核谓词
Impagliazzo 1995:略微难的问题怎样收成一块几乎乱猜的硬核分布
Hard-Core Distributions for Somewhat Hard Problems
1995 年 10 月 23 日至 25 日,第三十六届计算机科学基础年会(FOCS)在威斯康星州密尔沃基举行。
Impagliazzo · 硬核分布 · 硬核集合
Impagliazzo–Levin–Luby 1989:一般单向函数怎样交出多项式时间伪随机发生器
Pseudo-random Generation from One-way Functions
1989 年 5 月 15 日至 17 日,第二十一届 ACM 计算理论年会(STOC)在华盛顿州西雅图举行。
Impagliazzo–Levin–Luby · 伪随机发生器 · 单向函数
Goldwasser–Micali 1984:语义安全怎样把密文写成多项式不可区分
Probabilistic Encryption
1984 年 4 月,《计算机与系统科学杂志》(Journal of Computer and System Sciences)第 28 卷第 2 期刊出沙菲·戈德瓦塞尔(Shafi Goldwasser)与西尔维奥·米卡利(Silvio Micali)的《Probabilistic Encryption》,页码 270 至 299。
Goldwasser–Micali · 概率加密 · 语义安全
Goldreich–Goldwasser–Micali 1986:长度翻倍发生器怎样铺成询问下仍像随机的函数
How to Construct Random Functions
1986 年 10 月,《Journal of the ACM》第 33 卷第 4 期刊出奥德·戈德赖希(Oded Goldreich)、沙菲·戈德瓦塞尔(Shafi Goldwasser)与西尔维奥·米卡利(Silvio Micali)的《How to Construct Random Functions》,页码 792 至 807。
Goldreich–Goldwasser–Micali · 伪随机函数 · GGM 树
Diffie–Hellman 1976:公钥怎样把陷门、指数与签名写成公开程序
New Directions in Cryptography
1976 年 11 月,《IEEE 信息论汇刊》(IEEE Transactions on Information Theory)第 22 卷第 6 期刊出惠特菲尔德·迪菲(Whitfield Diffie)与马丁·E·赫尔曼(Martin E. Hellman)的《New Directions in Cryptography》,页码 644 至 654。
Diffie–Hellman · 公钥密码学 · 陷门单向函数
Luby–Rackoff 1988:伪随机函数怎样三轮费斯托变成询问下仍像随机的置换
How to Construct Pseudorandom Permutations from Pseudorandom Functions
1988 年 4 月,《SIAM Journal on Computing》第 17 卷第 2 期刊出迈克尔·卢比(Michael Luby)与查尔斯·拉科夫(Charles Rackoff)的《How to Construct Pseudorandom Permutations from Pseudorandom Functions》,页码 373 至 386。
Luby–Rackoff · 伪随机置换 · 费斯托网络
Merkle 1978:N 枚谜题怎样把公开分发的窃听代价抬成平方
Secure Communications Over Insecure Channels
1978 年 4 月,《ACM 通讯》(Communications of the ACM)第 21 卷第 4 期刊出拉尔夫·C·默克尔(Ralph C. Merkle)的《Secure Communications Over Insecure Channels》,页码 294 至 299。
Merkle puzzles · 公钥分发 · 二次代价
Goldreich–Micali–Wigderson 1987:任意心智博弈怎样在诚实多数下被编译成不泄露部分信息的协议
How to Play any Mental Game
1987 年 5 月,第十九届 ACM 计算理论年会(STOC)在纽约举行。
Goldreich–Micali–Wigderson · GMW · 心智博弈
Naor–Yung 1990:被动窃听上的公钥怎样加上非交互零知识挡住选择密文
Public-key Cryptosystems Provably Secure against Chosen Ciphertext Attacks
1990 年 5 月 13 日至 17 日,第二十二届 ACM 计算理论年会(STOC)在马里兰州巴尔的摩举行。
Naor–Yung · 选择密文攻击 · 非交互零知识
Goldreich–Micali–Wigderson 1986:NP 里每个语言怎样都有计算零知识证明
Proofs that Yield Nothing But Their Validity
1986 年 10 月,第二十七届计算机科学基础年会(FOCS)在多伦多举行。
Goldreich–Micali–Wigderson · GMW · 零知识
Rackoff–Simon 1991:选择密文的时间窗怎样被拉到看见挑战之后
Non-Interactive Zero-Knowledge Proof of Knowledge and Chosen Ciphertext Attack
1991 年 8 月 11 日至 15 日,第十一届国际密码学年会(CRYPTO)在加利福尼亚州圣芭芭拉举行。
Rackoff–Simon · CCA2 · 自适应选择密文
Dolev–Dwork–Naor 1991:看见密文之后为什么仍不该能改出相关明文的另一条
Non-Malleable Cryptography
1991 年 5 月 5 日至 8 日,第二十三届 ACM 计算理论年会(STOC)在路易斯安那州新奥尔良举行。
Dolev–Dwork–Naor · DDN · 不可延展
Cramer–Shoup 1998:判定性迪菲–赫尔曼上怎样交出不再挂非交互零知识的选择密文
A Practical Public Key Cryptosystem Provably Secure against Adaptive Chosen Ciphertext Attack
1998 年 8 月 23 日至 27 日,第十八届国际密码学年会(CRYPTO)在加利福尼亚州圣芭芭拉举行。
Cramer–Shoup · CCA2 · DDH
Bellare–Rogaway 1993:为什么先把哈希当成公开的随机预言机
Random Oracles are Practical: A Paradigm for Designing Efficient Protocols
1993 年 11 月 3 日至 5 日,第一届 ACM 计算机与通信安全会议(CCS '93)在弗吉尼亚州费尔法克斯举行。那还是酒店式的小型年会,不是后来上千人的安全大会。
Bellare–Rogaway · 随机预言机 · CCS 1993
Bellare–Rogaway 1994:RSA 前面那两轮掩码为什么被叫优选
Optimal Asymmetric Encryption
1994 年 5 月 9 日至 12 日,欧洲密码学年会(EUROCRYPT)在意大利佩鲁贾举行。
OAEP · Bellare–Rogaway · EUROCRYPT 1994