传统的计算机基于晶体管的电流开关(0 和 1)进行逻辑运算。而以 PsiQuantum 为代表的光量子计算机,则利用光子(单个光粒子)的量子叠加、相位延迟与波的干涉实现量子计算。
预备知识
量子态的01
在经典计算机中,“0”和“1”是高低电压。而在 PsiQuantum 的光量子芯片中,使用双轨编码 (Dual-rail Encoding)来表示0和1,其光量子芯片内部就像一个微缩的两路高速公路网,系统通过光子所在的物理位置来定义量子态01逻辑:
- 状态 $|0\rangle$:代表光子在上方的波导轨道中传输。
- 状态 $|1\rangle$:代表光子在下方的波导轨道中传输。
量子计算使用了一种可以创建量子叠加态的逻辑门,被称为H门(Hadamard Gate)。对应到光量子计算机,即为一种半透半反镜 (Beam Splitter)。当一个处于 $|0\rangle$(上轨道)的光子穿过 H 门时,它会进入叠加态,此时这个光子会处于同时存在于上下两条轨道的叠加状态中。
相位门
此时我们还可以通过对特定波导区域施加电场或热量,改变其折射率(PsiQuantum使用具有极强电光效应的钛酸钡 BTO 材料,可施加电场瞬间改变其折射率)。当光子经过时,它的速度会极其微小地变慢,从而导致波峰滞后,产生相位差,从而导致波在轨道中的“起伏状态”有下面两种状态:
- 正号 ($+$):代表光波处于波峰。
- 负号 ($-$):代表光波处于波谷(即产生了 180 度的相位延迟)。
这衍生出了光子两种截然不同的叠加态:
- $|+\rangle$ 态:上轨道(0)是波峰,下轨道(1)也是波峰。两道波步调一致。
- $|-\rangle$ 态:上轨道(0)是波峰,下轨道(1)是波谷。两道波刚好错开半个节拍。
实际上,相位延迟不一定必须是180度。我们把让光波产生不同程度的滞后的“减速带”称为相位门,包括:
- Z门:让光波恰好延迟半个波长(180度),把 $|+\rangle$ 态变成 $|-\rangle$ 态的(即上文提到的例子)
- S门:让光波恰好延迟$1/4$个波长(90度),此时既不是波峰也不是波谷,而是刚好卡在中间的“零点”,在数学上,这对应着乘以一个虚数 $i$,所以被称为$|+i\rangle$ 态(有时也叫 $|R\rangle$ 态)
- T门:光波延迟$1/8$个波长(45度)
H门的性质
H门由于其物理材质,对于两个轨道的波还有以下规则:
-
规则 1(来自 0 号轨道的波):它会被均匀分成两半,一半去 0 号出口,一半去 1 号出口。两边都保持原样(不翻转),即如果进来是波峰,去 0 是波峰,去 1 也是波峰。
-
规则 2(来自 1 号轨道的波):它也会被分成两半。去 0 号出口的那一半保持原样;但是去 1 号出口的那一半,会被镜面反射的物理性质翻转 180 度,即如果进来是波峰,去 0 是波峰,去 1 则会被掰成波谷;如果进来是波谷,去 1 就会被硬掰成波峰。
此时让我们考虑分别输入$|+\rangle$ 态和$|-\rangle$ 态,经过一个H门时会出现的情况:
首先,我们考虑输入 $|+\rangle$ 态(0 是波峰,1 也是波峰)。现在,0 轨道和 1 轨道各带着一个“波峰”冲进了 H 门。我们站在两个出口看看会发生什么:
在 0 号出口观察:
- 0 号轨道分过来的波:是波峰(根据规则1,保持原样)。
- 1 号轨道分过来的波:是波峰(根据规则2,去 0 出口保持原样)。
- 结果:波峰+波峰=巨大的波峰(相长干涉)。这里的光极其明亮!
在 1 号出口观察:
- 0 号轨道分过来的波:是波峰(根据规则1,保持原样)。
- 1 号轨道分过来的波:它原本是波峰,但根据规则2,它被强行翻转成了波谷
- 结果:波峰+波谷=完全抵消(相消干涉)。这里变成了一片死寂的黑暗。
我们可以看到输入 $|+\rangle$ 态经过H门得到的结果是:所有的光都只从 0 号出口涌出,探测器的测量结果是0。
然后,我们考虑输入 $|-\rangle$ 态(0 是波峰,1 是波谷)。现在 0 轨道带着“波峰”,而 1 轨道带着“波谷”(负号)冲进了 H 门。
在 0 号出口观察:
- 0 号轨道分过来的波:是波峰(保持原样)。
- 1 号轨道分过来的波:它原本是波谷,去 0 出口保持原样,所以还是波谷。
- 结果:波峰+波谷=完全抵消(相消干涉)。这次,0 号出口变成了死寂的黑暗!
在 1 号出口观察:
- 0 号轨道分过来的波:是波峰(保持原样)。
- 1 号轨道分过来的波:它原本是波谷。但是根据规则2,它去 1 号出口时必须被翻转!“负负得正”,这个波谷被掰成了一个“波峰”
- 结果:波峰+被掰过来的波峰 巨大的波峰(相长干涉)。光全部汇聚在了这里!
我们可以看到输入 $|-\rangle$ 态经过H门得到的结果是:所有的光都只从 1 号出口涌出,探测器的测量结果是1。
总结而言:输入上下轨道相位相同的光波(即$|+\rangle$ 态),经过H门最终探测器检查到的是0;输入上下轨道相位相差180度的光波(即$|-\rangle$ 态),经过H门最终探测器检查到的是1。
量子黑盒模型
除此之外,量子计算还存在一个底层的物理限制:所有的量子逻辑门(除了测量)必须是可逆的(酉变换)。
在经典计算中,如果盲盒是一个“常数型”函数(例如无论输入0还是1,输出都是0),信息就丢失了,你无法从输出反推输入,这个过程是不可逆的。为了让这种黑盒子在量子计算中变得“可逆”,科学家们设计了一种标准的量子黑盒(Oracle)模型:它需要两个输入端口。
- 比特A 就是“输入口”(负责提问:0或1)。
- 比特B 就是“输出口”(充当黑盒写答案的草稿纸)。
具体而言,在 PsiQuantum 的光子芯片上,我们需要4条波导(轨道) + 2个光子来实现这两个比特。我们将这4条轨道分为两组:
第一组:代表比特A(包含轨道 $A_0$ 和 $A_1$)
- 初始化为 $|0\rangle$ 的物理操作: 我们拿出一把单光子枪,精准地朝着 轨道 $A_0$ (上轨道)发射1个光子(此时 $A_1$ 轨道为空)。这就是第一步中“把比特A初始化为0”的物理现实。
第二组:代表比特B(包含轨道 $B_0$ 和 $B_1$)
- 初始化为 $|1\rangle$ 的物理操作: 我们用另一把单光子枪,精准地朝着 轨道 $B_1$ (下轨道)发射1个光子(此时 $B_0$ 轨道为空)。这就是“把比特B初始化为1”。
多伊奇算法
预备知识铺垫了这么多,现在我们终于可以拿量子计算历史上最经典、也是最简单的一个算法来演示量子计算机的优越性了。
问题
首先假设我给你一个黑盒子(在计算机里称为“预言机” Oracle),这个盒子里装了一个简单的数学函数。它接收一个二进制数字(输入0或1),并吐出一个二进制数字(输出0或1)。
这个盲盒里的函数只可能是以下两种类型之一:
- 常数型 (Constant): 无论你输入什么,输出都一样。(比如:输入0输出0,输入1也输出0;或者全是1)。就像一个坏掉的开关,怎么按灯都不亮。
- 平衡型 (Balanced): 输入0和1,输出的结果恰好相反。(比如:输入0输出1,输入1输出0)。就像一个正常的开关。
现在的问题是:你最少需要测试几次,才能100%确定这个盲盒是“常数型”还是“平衡型”?
- 经典计算机的解法:必须测2 次。你只能先输入
0看看结果,再输入1看看结果。只有把两次结果拿来对比,你才能得出结论。如果盒子极其复杂,每次计算要耗费1万年,那你就得等2万年。 - 量子计算机的解法:只需要测1 次
量子实现
下面介绍量子计算机具体的实现原理:
第一步:制造“平行宇宙” (Hadamard 变换)
我们已经准备好了初始状态:
- 比特A(提问者):光子在 $A_0$ 轨道上(状态 $|0\rangle$)。
- 比特B(草稿纸):光子在 $B_1$ 轨道上(状态 $|1\rangle$)。
现在,我们让这两个光子分别穿过一个 H 门(半透半反镜)。
- 比特 A:从 $|0\rangle$ 变成了 $|+\rangle$。此时,A的光子同时处于 $A_0$ (波峰) 和 $A_1$ (波峰)。这意味着我们同时输入了0和1
- 比特 B:从 $|1\rangle$ 变成了 $|-\rangle$。此时,B的光子同时处于 $B_0$ (波峰) 和 $B_1$ (波谷)。
现在,整个系统进入了高度纠缠的准备状态,光子即将在黑盒子中相遇。
第二步:光子穿越黑盒 (Oracle 作用)
这是最神奇的一步。我们将这一团叠加的光子送入黑盒。虽然黑盒是基于函数 $f(x)$ 运行的,但由于我们构造了特殊的输入态,会发生一种叫 “相位回踢” (Phase Kickback) 的物理现象。
在这个光路结构中,比特 B 的状态决定了相位如何反弹给比特 A。让我们看看两种情况分别发生了什么:
情况 1:如果黑盒是“常数型” (Constant)
对于常数函数,无论输入 A 是什么,对 B 的操作都是一样的(要么都不翻转,要么都翻转)。
- 这里的物理含义是:光波在穿过黑盒时,虽然可能发生了路径交换,但对于比特 A 而言,$A_0$ 和 $A_1$ 轨道经历的相位变化是完全同步的。
- 结果:比特 A 保持原来的状态,即 $|+\rangle$ (上下轨道都是波峰)。
情况 2:如果黑盒是“平衡型” (Balanced)
对于平衡函数,输入 0 和 输入 1 会导致 B 发生相反的变化。
- 当 A 的光子走 $A_0$ 轨道(代表输入0)时,它可能让 B 保持原样。
- 当 A 的光子走 $A_1$ 轨道(代表输入1)时,它会让 B 发生翻转。
- 因为比特 B 初始化为了 $|-\rangle$ (这是一种对相位极其敏感的状态),这种不平衡的操作会导致 B 把一个 180 度的相位差“反踢”回了 A。
- 结果:比特 A 的 $A_0$ 轨道还是波峰,但 $A_1$ 轨道被“踢”成了波谷。比特 A 的状态从 $|+\rangle$ 变成了 $|-\rangle$。
关键点总结:
- 经过黑盒后,虽然我们不知道具体的函数值是多少,但函数的性质已经被印刻在了比特 A 的相位关系上。
- 常数型 $\rightarrow$ 比特 A 依然是 $|+\rangle$。
- 平衡型 $\rightarrow$ 比特 A 变成了 $|-\rangle$。
第三步:最后的干涉 (最后的 H 门)
现在,光子飞出了黑盒。我们只需要检查比特 A 的相位状态。但是,光探测器只能探测光子在哪里(位置),不能直接探测相位(波峰还是波谷)。
所以,我们需要再加一个 H 门(半透半反镜) 在比特 A 的出口处。 利用我们在“预备知识”中推导出的结论:
如果黑盒是常数型:
- 此时 A 是 $|+\rangle$ (同相)。
- $|+\rangle$ 穿过 H 门 $\rightarrow$ 发生干涉 $\rightarrow$ 光子全部汇聚到 $|0\rangle$ (上轨道)。
如果黑盒是平衡型:
- 此时 A 是 $|-\rangle$ (反相)。
- $|-\rangle$ 穿过 H 门 $\rightarrow$ 发生干涉 $\rightarrow$ 光子全部汇聚到 $|1\rangle$ (下轨道)。
第四步:单次测量定乾坤
我们在比特 A 的 $A_0$ 和 $A_1$ 出口放置探测器:
- 如果探测器在 $A_0$ (上轨道) 捕捉到光子:我们可以 100% 确定,黑盒是 常数型。
- 如果探测器在 $A_1$ (下轨道) 捕捉到光子:我们可以 100% 确定,黑盒是 平衡型。
只运行了一次,只测量了一次,我们就知道了函数的全局性质。