閘與電路

通用閘集合(universal gate set)

想想看,在普通的數位電子電路裡,你並不需要為每一種可能的邏輯運算都準備一種不同的硬體。少數幾個基本閘——及、或、非,甚至單單一個反及(NAND)閘——連接起來,就能計算出任何函數。量子計算中的通用閘集合是同一個想法,只是上升了一層:它是一小組量子閘,只要按正確的順序施加它們,你就能搭建出任何想要的量子計算。

一個常見的通用集合是 {H, T, CNOT}——哈達瑪閘、T 閘和受控非閘。僅憑這三個,你就能近似出所需的任何量子操作。這裡的「近似」二字很要緊,但並不是缺陷:量子閘是以連續的角度旋轉量子態的,所以一個有限的工具箱無法精確命中每一種可能的操作。你要做的,是把這些閘組合起來,落到離目標任意接近的地方;而一個叫做 Solovay-Kitaev 定理的結果保證,你能高效地做到這一點——每多要求一位精度,並不需要用到多得離譜的閘。

因此,當工程師設計量子處理器時,他們不會去為成千上萬種不同的操作分別造硬體。他們只造少數幾個高品質的閘,讓它們合在一起就是通用的,然後把每個演算法都表達成從這個集合中抽取的一串序列——很像編譯器把你的程式碼轉成一串少數幾種機器指令。具體選哪幾個閘取決於硬體,但通用性的承諾都是一樣的:凡是量子電腦能算的,沒有一樣會被排除在外、搆不著。

「通用」指的是任何量子操作都能由這個集合搭建出來——它對速度隻字未提;大多數問題根本得不到量子加速,而確實存在的好處,從二次加速(Grover)到只有像 Shor 因數分解這類特定的、有結構的問題才有的指數級加速,跨度很大。

又稱
universal set of quantum gates