彭永剛
(1.南京郵電大學(xué) 理學(xué)院 應(yīng)用物理系,江蘇 南京 210003;2.江蘇省新能源技術(shù)工程實(shí)驗(yàn)室,江蘇 南京 210003)
當(dāng)今的筆記本電腦、臺(tái)式機(jī)和服務(wù)器所提供的中央處理器稱為經(jīng)典計(jì)算機(jī),與量子計(jì)算機(jī)進(jìn)行對(duì)比,由晶體管制成的經(jīng)典計(jì)算機(jī)的功能是通過(guò)操作0或1的數(shù)據(jù)位(比特)來(lái)執(zhí)行計(jì)算的,而量子計(jì)算機(jī)是利用量子力學(xué)的性質(zhì)(即量子態(tài)相干疊加性質(zhì)和量子糾纏性質(zhì))以不同的方式執(zhí)行計(jì)算的,從而比經(jīng)典計(jì)算機(jī)更有效地執(zhí)行計(jì)算,量子計(jì)算機(jī)可以在經(jīng)典計(jì)算機(jī)上進(jìn)行模擬,但模擬將花費(fèi)很長(zhǎng)時(shí)間和大量?jī)?nèi)存,因此,經(jīng)典計(jì)算機(jī)只能模擬小量子比特?cái)?shù)的量子算法.經(jīng)典計(jì)算機(jī)的邏輯運(yùn)算與算法運(yùn)算不依賴于它們的硬件實(shí)現(xiàn),在理想量子計(jì)算機(jī)中,量子比特被認(rèn)為是理想的雙態(tài)量子系統(tǒng),量子算法是由一序列基本操作(幺正變換) 的乘積構(gòu)成,量子算法的運(yùn)行結(jié)果不依賴于量子計(jì)算機(jī)的具體物理實(shí)現(xiàn),一臺(tái)物理上實(shí)現(xiàn)的量子計(jì)算機(jī)是一個(gè)多體量子系統(tǒng),其量子比特的內(nèi)在量子動(dòng)力學(xué)性質(zhì)對(duì)其運(yùn)算的結(jié)果是很重要的,考慮兩個(gè)邏輯上獨(dú)立的操作O1和O2,在理想量子計(jì)算機(jī)上,執(zhí)行這兩個(gè)相互獨(dú)立邏輯操作的順序并不重要,因?yàn)镺1O2=O2O1,然而在物理實(shí)現(xiàn)的量子計(jì)算機(jī)上有時(shí)相互獨(dú)立邏輯操作順序是至關(guān)重要的,在有些情況下,O1O2≠O2O1,改變量子算法的邏輯操作序列的順序物理實(shí)現(xiàn)的量子計(jì)算機(jī)就會(huì)給出錯(cuò)誤結(jié)果,這個(gè)問(wèn)題是不能通過(guò)量子糾錯(cuò)和量子容錯(cuò)解決的,我們把這個(gè)問(wèn)題稱為量子程序問(wèn)題[1-3].
已經(jīng)提出實(shí)現(xiàn)量子計(jì)算機(jī)的物理方案有超導(dǎo)量子計(jì)算方案[4]、離子阱方案[5]、腔量子電動(dòng)力學(xué)方案[6]、核磁共振方案[7]以及量子點(diǎn)方案[8]等,這些量子計(jì)算機(jī)物理實(shí)現(xiàn)方案,各有各的優(yōu)勢(shì),都存在需要攻克的技術(shù)難題,目前量子計(jì)算研究的核心內(nèi)容主要是量子計(jì)算機(jī)的物理實(shí)現(xiàn)和可用量子算法的研究.
在量子計(jì)算機(jī)的物理實(shí)現(xiàn)上出現(xiàn)的量子程序問(wèn)題是由于我們處理的是有相互作用的量子客體,對(duì)量子計(jì)算機(jī)來(lái)說(shuō)量子比特之間會(huì)交換信息,我們以核磁共振量子計(jì)算機(jī)為例來(lái)說(shuō)明量子程序問(wèn)題,用射頻脈沖磁場(chǎng)調(diào)控一個(gè)核自旋狀態(tài)而不影響其它核自旋的狀態(tài)是很困難的,在調(diào)控某一核自旋時(shí),其它核自旋的狀態(tài)也發(fā)生改變,沒(méi)有一般規(guī)則預(yù)先知道量子算法中哪個(gè)基本操作、何種操作順序會(huì)產(chǎn)生量子程序問(wèn)題,導(dǎo)致不正確的結(jié)果,目前在理論上研究量子程序問(wèn)題的唯一方法就是執(zhí)行量子算法的數(shù)值計(jì)算來(lái)研究量子程序問(wèn)題.
從理論上講量子算法是由一序列基本操作(幺正變換)的乘積構(gòu)成,從量子計(jì)算機(jī)核磁共振物理實(shí)現(xiàn)上說(shuō)實(shí)現(xiàn)量子算法就是把一序列基本幺正變換編譯成現(xiàn)代超導(dǎo)核磁共振譜儀上能夠直接執(zhí)行的核磁共振脈沖序列.我們討論量子處理器是零溫度且與環(huán)境沒(méi)有耦合的量子系統(tǒng),即模擬零溫度封閉量子系統(tǒng)的量子算法核磁共振實(shí)現(xiàn).本文從兩量子位的核磁共振量子處理器的物理模型出發(fā),利用Raedt[9]小組提出的自旋-1/2代數(shù)理論,根據(jù)量子控制非門(mén)的定義,介紹核磁共振實(shí)現(xiàn)量子控制非門(mén)邏輯上等價(jià)的4種不同核磁共振脈沖序列的設(shè)計(jì)過(guò)程,根據(jù)Grover量子算法原理,介紹了核磁共振實(shí)現(xiàn)兩量子位Grover量子算法邏輯上等價(jià)的兩種不同核磁共振脈沖序列設(shè)計(jì)過(guò)程,通過(guò)數(shù)值求解含時(shí)薛定諤方程等價(jià)于執(zhí)行量子控制非門(mén)和兩量子位Grover量子算法的物理實(shí)現(xiàn)過(guò)程,演示量子控制非門(mén)和兩量子位Grover量子算法呈現(xiàn)的量子程序問(wèn)題,分析與討論了產(chǎn)生量子程序問(wèn)題的原因.
一個(gè)三氯甲烷(CHCl3)分子中,氫1H和碳13C原子的核自旋均為1/2,可作為一臺(tái)兩量子位的核磁共振量子處理器,在均勻磁場(chǎng)(靜磁場(chǎng))和外加射頻磁場(chǎng)(振蕩磁場(chǎng))中,這個(gè)核自旋1/2兩量子位系統(tǒng)的哈密頓量[7,9,10]表示為
(1)
(2)
單個(gè)核自旋受到沿著z軸的均勻磁場(chǎng)和沿x軸的射頻脈沖磁場(chǎng)作用,其狀態(tài)隨時(shí)間的演化,遵守含時(shí)薛定諤方程:
(3)
(4)
自旋繞x軸轉(zhuǎn)動(dòng),需要在y軸上施加射頻脈沖磁場(chǎng). 核自旋繞x和y軸順時(shí)針轉(zhuǎn)動(dòng)π/2的操作可表示為:
(5)
(6)
量子計(jì)算中兩核自旋之間通過(guò)核自旋與核自旋的相互作用交換量子信息,核自旋1和核自旋2之間的相互作用受控相移門(mén)[11]為
(7)
用直積方法定義兩量子位邏輯門(mén):
X1=X?I
(8)
Y2=I?Y
(9)
設(shè)兩核自旋系統(tǒng)的初始波函數(shù)為
|ψ〉=a0|00〉+a1|01〉+a2|10〉+a3|11〉
(10)
(eiφ00c0+eiφ01c1)|01〉+
(eiφ10c2-eiφ11c3)|10〉+
(eiφ10c2+eiφ11c3)|11〉]
(11)
其中:c0=a0+a1,c1=a1-a0,c2=a2+a3,c3=a3-a2,由于量子控制非門(mén)的要求是當(dāng)且僅當(dāng)?shù)谝缓俗孕幱趹B(tài)|1〉時(shí),才翻轉(zhuǎn)第二核自旋狀態(tài),這要求:φ00=φ01,式(11)改為
eiβ(a2cosα+ia3sinα)|10〉+
eiβ(a3cosα+ia2sinα)|11〉]
(12)
式中β=α+φ11-φ00,α=(φ10-φ11)/2,eiφ00是無(wú)關(guān)緊要的整體相位因子,根據(jù)伊辛模型:
(13)
執(zhí)行受控相移門(mén)I12=e-iτH,則:φ00=τ(J/4+h),φ01=φ10=-τJ/4,φ11=τ(J/4-h),考慮到φ00=φ01,式(12)改寫(xiě)為
e-iα(a2cosα+ia3sinα)|10〉+
e-iα(a3cosα+ia2sinα)|11〉]
(14)
(15)
(16)
τJ=-π
(17)
τ表示量子處理器在沒(méi)有外界射頻磁場(chǎng)作用時(shí),兩量子位系統(tǒng)的狀態(tài)在哈密頓量式(13)的支配下,隨時(shí)間演化的時(shí)間間隔.
在伊辛模型式(13)中兩個(gè)核自旋感受到相同的靜態(tài)磁場(chǎng),但實(shí)際上兩個(gè)核自旋感受到的是不同的靜態(tài)磁場(chǎng),這個(gè)靜態(tài)磁場(chǎng)為
(18)
(19)
(20)
(21)
首先制備初始態(tài)|00〉為均勻疊加態(tài)|s〉核磁共振脈沖序列為
(22)
其中,Wj是作用在第j個(gè)量子位上的WH變換.
兩量子位搜索量子算法的查詢算符[12,13]為
Ua=I-2|10〉〈10|
(23)
分兩步來(lái)實(shí)現(xiàn),首先讓系統(tǒng)核自旋之間的相互作用(式(1)的第一項(xiàng))隨時(shí)間自由演化(不加射頻脈沖磁場(chǎng))一段時(shí)間t,兩量子位之間相互作用隨時(shí)間演化算符[12]為
(24)
eiπ/4|10〉+e-iπ/4|11〉)
(25)
(26)
所以,
(27)
構(gòu)造出查詢算符Ua核磁共振脈沖序列為
(28)
因?yàn)椋?/p>
(29)
同理可構(gòu)造出查詢算符另一個(gè)核磁共振脈沖序列:
(30)
在量子搜索算法中的平均值反轉(zhuǎn)算符[12,13]為Us=2|s〉〈s|-I,對(duì)于兩量子位量子搜索算法平均值反轉(zhuǎn)算符為
(〈00|+〈01|+〈10|+〈11|)]-I
(31)
Us可表示為WH變換、條件相移變換P和另一個(gè)WH變換的乘積:
Us=W1W2PW1W2
(32)
用于構(gòu)造Ua的脈沖序列方法也適用于條件相移門(mén)P,構(gòu)造條件相移門(mén)P的脈沖序列為
(33)
Grover量子算法迭代算符[10,11]為U=UsUa,在|s〉態(tài)中搜索|10〉態(tài)的迭代算符U2的完整脈沖序列為
U2=W1W2PW1W2Ua
(34)
(35)
(36)
考慮到兩個(gè)核自旋感受到不同的靜態(tài)磁場(chǎng)的事實(shí),需要對(duì)G(π)算符進(jìn)行修改:
(37)
應(yīng)該改寫(xiě)為
(38)
其中參數(shù):
τ=-π/J
(39)
(40)
(41)
邏輯上等價(jià)的迭代算符的另一個(gè)核磁共振脈沖序列:
(42)
在理論研究工作中,采用文獻(xiàn)[7]中參數(shù)取值:
(43)
(44)
(45)
采用自然單位,令?=1,這時(shí)兩個(gè)核自旋處于一個(gè)靜態(tài)磁場(chǎng)和一個(gè)射頻正旋磁場(chǎng)中,在旋轉(zhuǎn)參考系[14]中計(jì)算,當(dāng)射頻磁場(chǎng)與核自旋1發(fā)生共振,即
(46)
這時(shí)式(45)的解為
(47)
(48)
式(48)表明:要使核自旋1繞y軸轉(zhuǎn)動(dòng)π/2,但又不會(huì)影響核自旋2的狀態(tài),要求射頻脈沖作用時(shí)間t1滿足:
(49)
(50)
式(47)中第一個(gè)因子會(huì)產(chǎn)生一個(gè)相移,要消除這個(gè)相移對(duì)核自旋狀態(tài)的影響,要求:
(51)
k1是正整數(shù). 對(duì)脈沖參數(shù)的最后一個(gè)限制來(lái)自事實(shí):
(52)
且0<γ<1,要使核自旋1繞y軸轉(zhuǎn)動(dòng)π/2,但又不會(huì)影響核自旋2的狀態(tài)的條件式(49)—式(52),可得
(53)
同理,要使自旋2繞y軸轉(zhuǎn)動(dòng)π/2,而又不會(huì)影響自旋1的狀態(tài),可得
(54)
其中k2、n2是正整數(shù),式(53)和(54)無(wú)精確解,但在k1和k2很大,γ為有理數(shù)時(shí),令γ=N/M,0
(55)
表1 k=1核磁共振脈沖序列參數(shù)執(zhí)行時(shí)間τ取值 /4πns
表2 k=1量子控制非門(mén)脈沖序列參數(shù)J和h取值 /π×109 Hz
表3 k=1 Grover量子算法脈沖序列參數(shù)J和h取值 /π×109 Hz
量子算法核磁共振物理實(shí)現(xiàn)脈沖序列設(shè)計(jì)程序問(wèn)題可用含時(shí)薛定諤方程進(jìn)行數(shù)值求解來(lái)演示,等價(jià)于執(zhí)行量子算法. 核自旋系統(tǒng)隨時(shí)間的演化遵守含時(shí)薛定諤方程[15]:
(56)
采用自然單位,令?=1,|Φ(t)〉描述整個(gè)量子計(jì)算機(jī)在時(shí)刻t的狀態(tài),H(t)為哈密頓量,利用第j量子位z方向分量的期望值,定義:
(57)
Qj是自旋1和自旋2的z分量期望值有關(guān)的量,Qj=1表示|1〉,Qj=0表示|0〉.
下面用Suzuki對(duì)稱乘積[16,17]公式取代每個(gè)
U(t(n+1)δ,t+nδ):
e-iδHz/2e-iδHy/2e-iδHxe-iδHy/2e-iδHz/2
(58)
e-iδHy(t+(n+1/2)δ)/2e-iδHx(t+1/2)δ·
e-iδHy(t+(n+1/2)δ/2e-iδHz(t+(n+1/2)δ/2
(59)
其中
(60)
圖1 k=1, 執(zhí)行CNOT1|11〉運(yùn)算時(shí),Q1和Q2隨時(shí)間演化
圖2 k=1,執(zhí)行CNOT2|11〉運(yùn)算時(shí),Q1和Q2隨時(shí)間演化
圖3 k=1時(shí),執(zhí)行CNOT3|11〉運(yùn)算時(shí),Q1和Q2隨時(shí)間演化
圖4 k=1時(shí),執(zhí)行CNOT4|11〉運(yùn)算時(shí),Q1和Q2隨時(shí)間演化
圖5 k=32, 執(zhí)行CNOT1|11〉運(yùn)算時(shí),Q1和Q2隨時(shí)間演化
圖6 k=32時(shí),執(zhí)行CNOT2|11〉運(yùn)算時(shí),Q1和Q2隨時(shí)間演化
圖7 k=32,執(zhí)行CNOT3|11〉運(yùn)算時(shí),Q1和Q2隨時(shí)間演化
圖8 k=32,執(zhí)行CNOT4|11〉運(yùn)算時(shí),Q1和Q2隨時(shí)間演化
圖9 k=4時(shí), U2搜索|10〉時(shí),Q1和Q2隨時(shí)間演化
圖10 k=4時(shí),搜索|10〉時(shí),Q1和Q2隨時(shí)間演化
圖11 k=32時(shí),U2搜索|10〉時(shí),Q1和Q2 隨時(shí)間演化
圖12 k=32時(shí),搜索|10〉時(shí)Q1和Q2隨時(shí)間演化
表4 k=1核磁共振脈沖序列執(zhí)行時(shí)間τ、時(shí)間步長(zhǎng)δ和執(zhí)行步數(shù)m/4πns
表5 k= 1、4、8、32時(shí),控制非門(mén)四種不同脈沖序列作用于|11〉后Q1和Q2的期望值
表6 k= 1、2、8、32時(shí),Grover算法的兩種不同脈沖序列搜索|s〉態(tài)中后|10〉 Q1和Q2的期望值
在理論上量子處理器的相互獨(dú)立基本操作(幺正變換)是可對(duì)易的,在物理上實(shí)際執(zhí)行這些基本操作時(shí),在有些情況下相互獨(dú)立基本操作(幺正變換)并不對(duì)易,從而造成量子計(jì)算結(jié)果出錯(cuò),我們稱之為量子程序問(wèn)題,量子程序問(wèn)題產(chǎn)生的原因是:1) 理論上一個(gè)和兩個(gè)量子比特完美的量子邏輯門(mén)操作與其物理實(shí)現(xiàn)的操作之間是有差異的;2) 使核自旋1發(fā)生共振射頻脈沖磁場(chǎng)不僅會(huì)改變核自旋1的狀態(tài),也會(huì)改變核自旋2的狀態(tài);3) 射頻脈沖作用時(shí)間遠(yuǎn)小于核自旋之間相互作用時(shí)間,在理論工作中核自旋之間相互作用對(duì)核自旋在射頻脈沖作用下隨著時(shí)間演化的影響可以忽略,但實(shí)際上會(huì)對(duì)兩個(gè)核自旋之間產(chǎn)生相對(duì)相移. 據(jù)我們所知,目前理論上研究量子程序問(wèn)題的唯一方法,是利用含時(shí)薛定諤方程數(shù)值求解,通過(guò)執(zhí)行數(shù)值計(jì)算來(lái)模擬量子算法來(lái)研究量子程序問(wèn)題.