量子計算提前填坑

2022-10-11 09:33:08 字數 1871 閱讀 5030

現在即使科學家也處於量子計算的早期研究階段,各大量子機廠商也在摸索階段,所以不同機器的邏輯很可能不相容,就像intel和amd一樣。還有個棘手問題是退相干引起的,因為量子程式一旦開始就不能中止了,沒法執行一半儲存起來下次繼續。這樣就要求程式必須在量子資訊衰退之前就完成,不然就拿不到結果。還有一些其他問題,這裡一起看一下。

我們對qubit的實現不是對稱的,比如cnot門把\(q_0\)當控制位,\(q_1\)當目標位;但是反過來就不行:

以ibm的量子計算機q為例,如果用cnot門連線\(q_1\)和\(q_2\),就會報錯:

因為q5機不允許\(q_1\)當控制位\(q_2\)當目標位

調整一下就不會報錯了:

要避免這個問題,可以使用交換門:

傳統計算機中,與非門(nand)是乙個通用門,可以構建保持操作。通用門效能較好,可以實現更多通用門。複雜閘電路可以把它們組合來實現。

量子門中,通用邏輯是「cnot門+所有單qubit門」。ibm q實現有乙個通用門:

\[\begin

u_1(\lambda),r_x(\pi/2),cnot

\end

\]其中,

\[u_1(\lambda)=\begin

1&0 \\

0&e^ \\

\end,r_x(\pi/2)=\begin

\frac}&-\frac} \\

-\frac}&\frac} \\

\end

\]ibm q現在提供了這些門的能力:

\[\begin

i,x,y,z,h,s,s^\dagger,t,t^\dagger,u_1(\lambda),u_2(\lambda,\phi),u_3(\lambda,\phi,\theta),cnot

\end

\]其中,

\[u_2(\lambda,\phi)=\begin

\frac}&-\frac}} \\

\frac}}&\frac}} \\

\end,u_3(\lambda,\phi,\theta)=\begin

\cos\frac&-e^\sin\frac \\

e^\sin\frac&e^\sin\frac \\

\end

\]量子計算過程會產生精度問題和異常資料,而且由於qubit不是全同的,它們的誤差也不一樣。

門誤差是使用量子門是出現的精度誤差,也就是通過這個或那個量子門我們能多大程度控制量子位疊加態中的精度;

讀出誤差是測量時產生的誤差。

記得初中物理說的嗎:誤差只能盡力減小,但是不能...

量子計算機的品質可以通過弛豫時間\(t_1\)、相干時間\(t_2\)、讀出誤差、門誤差來衡量。

計算容錯已經從工科教學移除很久了,量子計算又把它帶回來了。因為量子機特別害怕即時較小的誤差,所以需要額外的門來進行誤差檢測和糾正。這也是量子機位數上公升的乙個原因。下圖是能接受乙個位異常的電路:

MySQL坑與填坑

錯誤 1064 錯誤 1215 原因 資料型別不同 錯誤 1630 去掉函式名和 間的空格 check 關鍵字無效 使用列舉或觸發器 特定字串約束 使用列舉 課程性質 char 10 constraint c5 check 課程性質in 公共基礎 專業基礎 專業選修 任意選修 課程性質 enum 公...

ubuntu linux 填坑集合

坑1 failed to load ldlinux.c32 剛安裝就遇到乙個大坑。使用u盤安裝的,啟動的時候提示 failed to load ldlinux.c32 ubuntu 16.04 lts。解決辦法,以前的ultraiso版本是9.6.2,換成9.6.5就可以了。坑2 unity更換成g...

tcpcopy填坑實踐。

準備搭建tcpcopy引流測試新架構。我現在target測試機上面配置route,route add net 1.1.1.0 netmask 255.255.255.0 gw 輔助測試機ip。本意乃是想把線上的流量重寫 為1.1.1.x,發到測試機做區分。隨後分別啟動丟包機與線上機tcpcopy程式...