999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種求倒數近似值的量子算法及其量子電路

2022-04-02 05:27:20朱家良
計算機技術與發展 2022年3期

朱家良,葉 賓,季 雯

(中國礦業大學 信息與控制工程學院,江蘇 徐州 221116)

0 引 言

量子計算以其獨特的并行計算特性,在機器學習、高維數據挖掘、大數據處理、圖像處理等領域有著巨大優勢[1-4]。和傳統的數字計算相比較,量子計算顯著減少了執行時間和能耗[5]。量子計算機的基本存儲單元是量子比特,一個量子比特可表示量子態|0〉和|1〉的疊加,因此一次運算就可同時處理兩個基態。處理2n狀態的信息,n個量子比特僅需一次操作,遠快于2n個經典比特所需的2n次操作[6]。正因如此,量子計算能夠指數級加速傳統算法,被認為是解決算力不足的有效方法之一。

求取一個無符號數的倒數在求解量子線性系統、量子相位估計、量子支持向量機等領域有著廣泛的應用。在傳統算法中常用牛頓迭代法、割線法等求取倒數的近似值,但是需要多次的迭代計算。量子計算的特性可以顯著降低牛頓迭代計算的問題規模。Cao[7]于2007年首次提出了一種基于牛頓迭代法近似求取正整數倒數的量子線路,但其耗費輔助量子比特較多,線路結構復雜。該文提出一種更簡潔的近似求取無符號數倒數的量子算法,此算法以基本的量子全加器[8-9]和量子乘法器[10-11]為基礎模塊,通過少量輔助寄存器進行連接,經過移位操作等搭建出量子電路。經過分析,其時間復雜度為O(n3),空間復雜度為O(2n3),具有量子代價小、結構簡單等特點,有利于降低構造量子電路的成本及物理實現難度。

1 量子邏輯門基礎

量子計算中的基本單位量子比特(qubit)與經典計算機中的比特(bit)相對應,單量子比特的狀態為2個基態相疊加的形式[12]:|φ〉=α|0〉+β|1〉,其中α和β均為復數,滿足|α|2+|β|2=1。

與經典計算機中的邏輯門類似,量子計算中的計算單元由量子邏輯門組成,它們在數學上是一個幺正變換和酉變換,并且這個變換是可逆的,在此介紹幾種常用的量子邏輯門:

非(NOT)門,是一個單量子門,量子電路符號如圖1(a)所示,它的作用是實現量子態從|0〉向|1〉的翻轉。

受控非(CNOT)門[13],是一個雙量子邏輯門,由控制位和目標位組成。如圖1(c)所示,它的作用是若控制位的量子態為|0〉,則目標位上的量子態不發生翻轉;反之,若控制位量子態為|1〉,目標位上的量子態發生翻轉。

Toffoli門[14],是一個三量子比特門,由兩個控制位和一個目標位組成。如圖1(d)所示,僅當控制位|a〉和|b〉都為|1〉時,目標位|c〉中的狀態發生翻轉,否則不發生變化。

圖1 量子邏輯門

測量門,將量子比特投影到經典比特中,實現觀測。如圖1(e)所示輸入為處于疊加態的量子位,輸出投影到|0〉和|1〉下的概率幅度。

2 量子乘法器的實現

2.1 量子半加器

n位的量子全加器是由n個半加器組成的,該文設計的半加器包括1個Toffoli門和2個CNOT門,如圖2所示。其中|a〉和|b〉是輸入的二進制數,|0〉是輔助量子位,結果存儲在|sum〉中,|cout〉是進位。

半加器的過程如下:

|a〉|b〉|0〉|0〉→|a〉|b〉|sum〉|cout〉

(1)

輔助量子位輸出:

|0〉|0〉→|sum〉|cout〉

(2)

|sum〉=|a⊕(b⊕0)〉

(3)

|cout〉=|ab⊕0〉

(4)

圖2 量子半加器

2.2 n位量子全加器

量子全加器是量子乘法器實現的基礎。2002年,Cheng Kai-Wen[8]首次完善了量子全加器和量子全減器的電路圖。常麗等人[9]于2019年采用了超前進位方式,簡化了量子全加器的結構。在此基礎上,該文根據全加器的邏輯表達式設計出單比特的量子全加器電路圖,如圖3(a)所示(圖3(b)為其簡化圖)。然后將多個單比特的量子全加器組合,得到n比特量子全加器,如圖3(c)所示。

|si〉=|ai⊕bi⊕ci-1〉

(5)

|ci〉=|aibi⊕(ai⊕bi)ci-1〉

(6)

其中,|ai〉是一個二進制數a的第i位,|bi〉是另一個二進制數b的第i位,|c〉是進位c的第i位,|si〉是a與b之和的第i位。

(a)單比特量子全加器電路圖

(b)圖(a)的簡化圖

(c)n比特量子全加器電路圖

2.3 量子乘法器

目前大多數的量子乘法器是在一個n量子比特的寄存器中輸入|a〉1=|an-1〉1?|an-2〉1?…?|a0〉1來表示整數a=2n-1an-1+2n-2an-2+…+20a0;在另一個n量子比特的寄存器中輸入|b〉2=|bm-1〉2?|bm-2〉2?…?|b0〉2來表示整數b=2m-1bm-1+2m-2bm-2+…+20b0;第三個l量子比特的寄存器用來存放前兩個寄存器中的數相乘的結果,其狀態為|c〉3=|cl-1〉3? |cl-2〉3?…?|c0〉3,其中c=2l-1cl-1+ 2l-2cl-2+…+20c0。經過量子乘法器運算后各寄存器中的數值改變如下:

|a〉1|b〉2|c〉3→|a〉1|b〉2|c+abmod2l〉3

(7)

最后通過測量第三個量子寄存器,將其讀數寫入經典寄存器來得到兩數相乘的結果[15-17]。

2.4 量子乘法器的移位實現

在實現量子乘法運算的過程中,最重要的一步就是對乘數進行移位相加,例如實現110和111的乘積,其實現步驟見圖4(a)。由其規律可知,部分積之間的相加要實現左移操作,即在量子計算機上實現移位寄存器。文獻[10]中設計的量子乘法器完善了移位寄存器的功能,算法整體的時間復雜度為o(n2),空間復雜度為o(n2)。Suzuki[11]在2020年提出的量子乘法器的時間復雜度和空間復雜度都較低,但是結構復雜。該文運用對寄存器低位置零的操作達到移位寄存器的效果,擁有結構簡單、復雜度低等優點。具體步驟如下:

(8)

如圖4(b)所示,將圖4(a)中部分積的低位置零,再與高位相加,即可實現與移位同樣的效果,110與111相乘的部分積低位置零后表示為:

(9)

分析可知,此方法耗費寄存器的空間復雜度僅為O(2n-1)(n為兩個乘數中位數較大的二進制數的位數)。

圖4 置零乘法的實現步驟

2.5 量子乘法器的實現

下面按照圖3(b)中所示的乘法計算過程,將輸入寄存器、置零寄存器、全加器,以及輸出寄存器(包含量子寄存器和經典寄存器)合并以設計出完整的量子乘法器。

如圖5所示,輸入寄存器中的n位二進制數|a〉1=|a〉1?|a〉2?…?|a〉n和m位二進制數|b〉2=|b〉1?|b〉2?…?|b〉m相乘,將部分積 |a0bt〉,|a1bt〉…|anbt〉,(t=0,1,…,m-1)的結果分別存放在置零寄存器:

|0〉0=|0〉0?…?|0〉t0?…?|0〉m-1(t0=0),

|0〉1=|0〉0?…?|0〉t1?…?|0〉m-1(t1=1)

?

|0〉l=|0〉0?…?|0〉tl?…?|0〉m-1(tl=n,l=2×max(n,m))上(第s個置零寄存器從第ts位開始存放,s=0,1,…,n);再將置零寄存器與全加器相連,依次求出部分積|0〉0,|0〉1,…,|0〉l的和(此過程中可以通過對|0〉s寄存器逐個清零來減少寄存器的使用,大大降低空間復雜度),并將結果存放在寄存器|c〉3=|c0〉3?…?|cl〉3中(l=2×max(n,m));最后通過測量將量子寄存器上的信息轉化至經典寄存器c上,實現結果的觀測。

圖5 量子乘法器電路圖

2.6 量子乘法器復雜度分析

為了驗證算法的有效性,該文用通用量子門作為時間單元,輔助量子比特作為空間單元,分析基于牛頓迭代法的量子倒數器的時間復雜度以及空間復雜度。

首先是時間復雜度的分析。對于n位二進制數乘以m位二進制數,該文改進的量子乘法器線路如圖5所示。在量子乘法器中,首先是用Toffoli門進行各位二進制數的相乘操作,需要mn個Toffoli門。隨后將輔助量子寄存器中的數進行相加,由圖3(a)可知,一個比特的量子全加器由2個Toffoli和5個CNOT門組成,因此n比特的量子全加器需要7n個通用量子門。進行m次加法操作,因此需要用7mn個通用量子門。因此整個乘法器需要用到8mn個通用量子門,時間復雜度為O(mn)。若計算的二進制數都是n位,則時間復雜度為O(n2)。

其次是空間復雜度的分析。由圖5所知,對于n位二進制數乘以m位二進制數(m>n),需要m+n個輸入寄存器來儲存輸入的二進制數。一個輔助量子寄存器需要m個量子比特,m個輔助量子寄存器一共需要2m2量子比特。所以量子乘法器一共需要2m2+m+n個量子比特,時間復雜度為O(m2)。若計算的二進制數都是n位,則時間復雜度為O(n2)

該量子乘法器需要用到8mn個通用量子門,時間復雜度為O(n2)(m=n時)。所需量子寄存器的數量是2m2+m+n,空間復雜度為O(n2)(m=n時)。

3 求倒數近似值的量子算法及其量子電路

3.1 牛頓迭代法

根據牛頓迭代公式:

(10)

若求取已知數λ的倒數,則令函數f(x)為:

(11)

對f(x)求導得:

f(x)'=-x-2

(12)

聯立式(6)~式(8)可得:

(13)

其中,λ為所求倒數的原數,要求滿足λ>1;x0為滿足x0>0且與λ-1相近的二進制數。圖6為牛頓迭代法的電路圖。

圖6 利用牛頓迭代法求倒數的電路圖

3.2 求倒數近似值的量子算法及其量子電路實現步驟

按照式(9)與圖6的系統圖,利用3個量子乘法器和2個量子全加器可設計出單步牛頓迭代法對應的量子電路,然后將每一步的迭代電路相連實現整個迭代過程。詳細的迭代步驟如下:

(1)進行第一次迭代,將2和x0分別轉化為二進制數,輸入量子寄存器|a〉=|an-1〉?|an-2〉?…?|a0〉和|b〉=|bm-1〉? |bm-2〉?…|b0〉中,把|2x0〉0的結果放入輔助寄存器|qcarry_sum0〉2n(n代表兩個乘數中位數較多的二進制數的位數);

(3)通過測量將量子寄存器|qborrow〉上的信息轉化至經典寄存器上,實現第一次迭代結果的觀測。量子電路圖如圖7(a)所示;

(a)一次迭代的倒數近似器電路

(b)n次迭代的倒數近似器電路

4 量子倒數器代價分析

4.1 時間復雜度

4.2 空間復雜度

由圖7所示,λ與x0都為n位二進制數的時候,用以存放λ與x0的寄存器數量為2n,輔助寄存器|qcarry_1〉1至|qcarry_n〉2n-1的數量為2n2-n,寄存器|qcarry_sum0〉和|qcarry_sum1〉的數量一共為4n,寄存器|qbarrow〉的數量為2n-1,因此一共所需的寄存器為2n2+7n-1。最終一次迭代的倒數計算器的空間復雜度為O(n2)。用n個倒數器進行疊加相連,空間復雜度為O(n3)。

5 結束語

該文設計的基于牛頓迭代法的量子倒數計算器實現了求取n位二進制數的倒數,并且改進了量子乘法器,用低位置零操作代替移位操作。該設計大大降低了系統的空間復雜性。時間復雜性分析進一步表明,所設計的量子倒數器的時間復雜度并未遠大于單獨的乘法器,且結構簡單,易于優化,迭代次數可根據具體精度需要任意選擇。

主站蜘蛛池模板: 成年女人a毛片免费视频| 久久五月天综合| 中文字幕首页系列人妻| 狠狠综合久久| 尤物亚洲最大AV无码网站| av手机版在线播放| 中文字幕不卡免费高清视频| 久久国产亚洲偷自| 特黄日韩免费一区二区三区| 国产电话自拍伊人| 成人永久免费A∨一级在线播放| 91精品久久久无码中文字幕vr| 亚洲无码精彩视频在线观看| 久久人搡人人玩人妻精品一| 又污又黄又无遮挡网站| 国产产在线精品亚洲aavv| 亚洲一区二区黄色| 亚洲中文无码av永久伊人| 亚洲国产系列| 亚洲一区二区三区中文字幕5566| av在线人妻熟妇| 免费毛片视频| 亚洲AV无码不卡无码 | 免费高清a毛片| 九月婷婷亚洲综合在线| 天天操天天噜| 在线视频亚洲色图| 好吊色妇女免费视频免费| 国产在线98福利播放视频免费| 91小视频在线播放| 中文字幕在线播放不卡| 精品国产99久久| 国产一级毛片网站| 综合色区亚洲熟妇在线| 日本人妻一区二区三区不卡影院 | 久草青青在线视频| 她的性爱视频| a级免费视频| 亚洲成人网在线播放| аⅴ资源中文在线天堂| 一区二区三区四区日韩| 国产不卡一级毛片视频| 伊人久综合| 国内a级毛片| 亚洲综合国产一区二区三区| 无码aⅴ精品一区二区三区| 九九精品在线观看| 欧美日韩高清在线| 成年人国产视频| 国产乱论视频| 精品福利网| 国内毛片视频| 国产精品一区二区国产主播| 色爽网免费视频| 在线欧美一区| 女同久久精品国产99国| 99久久亚洲精品影院| 91青青草视频在线观看的| 99久久婷婷国产综合精| 国产性生交xxxxx免费| 激情综合网激情综合| 福利国产微拍广场一区视频在线| 国产精品无码在线看| a在线亚洲男人的天堂试看| 国产91导航| 久青草免费在线视频| 国产精品免费p区| 亚洲欧洲日韩久久狠狠爱| 香蕉精品在线| 无码一区18禁| 亚洲精品色AV无码看| 久久香蕉国产线看观看式| 亚洲中文字幕在线精品一区| 国产主播在线一区| 日本高清免费不卡视频| 欧美国产日产一区二区| 久996视频精品免费观看| 亚洲日韩高清在线亚洲专区| 亚洲国产欧洲精品路线久久| 波多野结衣久久精品| 99久久精品无码专区免费| 免费看一级毛片波多结衣|