”如果你学过光,你可能已经对量子理论有所了解。你可能知道,一束光有时表现得好像它是由粒子组成的(像一股稳定的炮弹流),有时又好像是能量波在空间中波动(有点像海浪)。这被称为波粒二象性这是量子理论中的一个概念。很难理解一个东西可以同时是两种东西——粒子和波——因为它与我们的日常经验完全不同:汽车不是同时是自行车和公共汽车。
然而,在量子理论中,这就是可能发生的疯狂的事情。这方面最引人注目的例子是一个叫薛定谔的猫。简而言之,在量子理论的奇异世界里,我们可以想象这样一种情况,这只猫可以同时活着和死了!那这一切跟电脑有什么关系吗?假设我们继续推进摩尔定律——继续把晶体管做得更小,直到它们不再遵循普通的物理定律(比如老式的晶体管),而是遵循更奇异的量子力学定律。
问题是,以这种方式设计的电脑是否能做我们传统电脑做不到的事情。如果我们能从数学上预测它们可能会,我们能在实践中让它们像那样工作吗?几十年来,人们一直在问这些问题。IBM研究物理学家Rolf Landauer和Charles H. Bennett是第一批。兰道尔在20世纪60年代开启了量子计算的大门,当时他提出信息是一种可以根据物理定律操纵的物理实体。
这样做的一个重要后果是,计算机在操作内部的比特时会浪费能量(这也是计算机消耗如此多的能量并变得如此热的部分原因,尽管它们似乎并没有做太多事情)。20世纪70年代,班尼特在兰道尔研究的基础上,展示了计算机如何通过“可逆”的方式来绕过这个问题,这意味着量子计算机可以在不消耗大量能量的情况下进行大规模复杂的计算。
1981年,阿贡国家实验室的物理学家保罗·贝尼奥夫(Paul Benioff)试图设想出一种基本的机器,它的工作原理与普通电脑类似,但要遵循量子物理学的原理。第二年,理查德·费曼粗略地勾勒出一台使用量子原理的机器是如何进行基本计算的。几年后,牛津大学的David Deutsch(量子计算领域的领军人物之一)更详细地描述了量子计算机的理论基础。
这些伟大的科学家是如何想象量子计算机可能工作的呢?量子 计算=量子计算普通计算机位、寄存器、逻辑门、算法等的关键特性在量子计算机中具有类似的特性。量子计算机不是比特,而是量子比特或量子位,它们以一种特别有趣的方式工作。一个量子位可以存储0或1,一个量子位可以存储0、1、0和1,也可以存储介于0和1之间的无穷多个值——并且同时处于多个状态(存储多个值)!如果这听起来让人困惑,那就把光想象成粒子和波同时存在,薛定谔的猫是活的还是死的,或者汽车是自行车和公共汽车。