Notasi Dirac

Notasi Dirac adalah bahasa yang dirancang agar sesuai dengan kebutuhan yang tepat untuk mengekspresikan status dalam mekanika kuantum. Contoh dalam artikel ini adalah saran yang dapat digunakan untuk mengekspresikan ide-ide kuantum secara ringkas.

Batasan notasi vektor kolom

Meskipun notasi vektor kolom umum dalam aljabar linier, ini sering rumit dalam komputasi kuantum, terutama ketika berhadapan dengan beberapa qubit. Misalnya, ketika Anda menentukan $\psi$ untuk menjadi vektor, itu tidak secara eksplisit menghapus apakah $\psi$ itu vektor baris atau kolom. Dengan demikian, jika $\phi$ dan $\psi$ merupakan vektor, maka sama-sama tidak jelas jika\psi$$\phibahkan didefinisikan, karena bentuk $\phi$ dan $\psi$ mungkin tidak jelas dalam konteks. Di luar ambiguitas tentang bentuk vektor, mengekspresikan bahkan vektor sederhana menggunakan notasi aljabar linier bisa rumit. Misalnya, jika Anda ingin menjelaskan status $n-qubit$ di mana setiap qubit mengambil nilai $0$, maka Anda akan secara resmi mengekspresikan status sebagai

$$\begin{bmatrix}1 \\ 0 \end{bmatrix}\otimes\cdots\otimes\begin{bmatrix}1 \\ 0 \end{bmatrix}. $$

Mengevaluasi produk tensor ini tidak praktis karena vektor terletak di ruang yang luas secara eksponensial. Dengan demikian, notasi ini, pada kenyataannya, deskripsi terbaik dari status yang dapat diberikan menggunakan notasi sebelumnya.

Jenis vektor dalam notasi Dirac

Ada dua jenis vektor dalam notasi Dirac: vektor bra dan vektor ket, dinamakan demikian karena ketika disatukan mereka membentuk braket atau produk dalam. Jika $\psi$ adalah vektor kolom, maka Anda dapat menulisnya dalam notasi Dirac sebagai $\ket{\psi}$, di mana $\ket{\cdot}$ menunjukkan bahwa itu adalah vektor kolom unit, misalnya, vektor ket . Demikian pula, vektor baris $\psi^\dagger$ dinyatakan sebagai $\bra{\psi}$. Dengan kata lain, $\psi^\dagger$ diperoleh dengan menerapkan konjugasi kompleks entry-wise ke elemen transpose $\psi$. Notasi bra-ket secara langsung menyiratkan bahwa $\braket{\psi|\psi}$ adalah produk dalam vektor $\psi$ dengan dirinya sendiri, yang menurut definisi $1$.

Lebih umum, jika $\psi$ dan $\phi$ merupakan vektor status kuantum, maka produk dalamnya adalah $\braket{\phi|\psi}$. Produk dalam ini menyiratkan bahwa probabilitas mengukur status $\ket{\psi}$$\ket{\phi}$ menjadi $|\braket{\phi|\psi}|^2$.

Konvensi berikut digunakan untuk menggambarkan kondisi kuantum yang menyandikan nilai nol dan satu (kondisi dasar komputasi qubit tunggal):

$$\begin{bmatrix} 1 \\ 0 \end{bmatrix}=\ket{{0},\qquad\begin{bmatrix} 0 \\ 1 \end{bmatrix}=\ket{{1}. $$

Contoh: Mewakili operasi Hadamard dengan notasi Dirac

Notasi berikut sering digunakan untuk menggambarkan status yang dihasilkan dari penerapan gerbang Hadamard ke $\ket{0}$ dan $\ket{1}$. Status ini sesuai dengan vektor unit dalam $arah +x$ dan $-x$ pada bola Bloch:

$$\frac{1}{\sqrt{{2}}\begin{bmatrix} 1 \\ 1 \end{bmatrix}=H\ket{0}=\ket{+},\qquad\frac{1}{\sqrt{{2}}\begin{bmatrix} 1 \\ -1 \end{bmatrix}=H\ket{{1}=\ket{{-} . $$

Status-status ini juga dapat diperluas menggunakan notasi Dirac sebagai jumlah $\ket{0}$ dan $\ket{1}$:

$$\ket{+}=\frac{{1}{\sqrt{2}}(\ket{0} + \ket{1}),\qquad\ket{{-}=\frac{{1}{\sqrt{{2}}(\ket{{0} - \ket{1}). $$

Vektor dasar komputasi

Ini menunjukkan mengapa kondisi ini sering disebut dasar komputasi: setiap kondisi kuantum selalu dapat dinyatakan sebagai jumlah vektor dasar komputasi dan jumlah tersebut mudah dinyatakan menggunakan notasi Dirac. Kebalikannya juga benar dalam kondisi $\ket{+}$ dan $\ket{-}$ juga membentuk dasar untuk kondisi kuantum. Anda dapat melihat ini dari fakta bahwa

$$\ket{{0}=\frac{1}{\sqrt{2}}(\ket{+} + \ket{-}),\qquad\ket{{1}=\frac{{1}{\sqrt{{2}}(\ket{+} - \ket{-}). $$

Sebagai contoh notasi Dirac, pertimbangkan braket $\braket{0 | 1}$ yang merupakan produk dalam antara $0$ dan $1$. Hal ini dapat ditulis sebagai

$$\braket{0 | 1}=\begin{bmatrix} 1 & 0 \end{bmatrix}\begin{bmatrix}0\\ 1\end{bmatrix}=0. $$

Contoh ini mengatakan bahwa $\ket{{0}$ dan $\ket{{1}$ merupakan vektor ortogonal, yang berarti bahwa $\braket{0 | 1}=\braket{1 | 0 0.}=$ Juga, dengan definisi $\braket{0 | 0\braket{=}1 | 1}=1$, yang berarti bahwa kedua vektor dasar komputasi juga dapat disebut orthonormal.

Properti orthonormal ini digunakan dalam contoh berikut. Jika Anda memiliki status $\ket{\psi}{\frac{3}{5}}={1}\ket{+\ket{0}${\frac{{4}{5}} , maka karena $\braket{1 | 0}=0$ probabilitas mengukur $1 adalah$

$$\big|\braket{1 |\psi}\big|^2=\left|\frac{{3}{5}\braket{1 | 1} +\frac{{4}{5}\braket{1 | 0}\right|^2=\frac{{9}{{25}. $$

Notasi produk tensor

Notasi Dirac juga mencakup struktur produk tensor implisit . Struktur ini penting karena dalam komputasi kuantum, vektor negara yang dijelaskan oleh dua register kuantum yang tidak terkait adalah produk tensor dari dua vektor negara. Secara ringkas menggambarkan struktur produk tensor, atau kekurangannya, sangat penting jika Anda ingin menjelaskan perhitungan kuantum. Struktur produk tensor menyiratkan bahwa Anda dapat menulis $\psi\otimes\phi$ untuk dua vektor $\phi$ status kuantum dan $\psi$ sebagai .$\ket{\psi}\otimes\ket{\phi}$ Namun, dengan konvensi menulis $\otimes$ di antara vektor tidak perlu, dan Anda dapat menulis\phi}=$$\ket{\psi}\ket{\phi}\ket{\psi . Untuk informasi selengkapnya tentang vektor dan produk tensor, lihat Vektor dan Matriks dalam Komputasi Kuantum. Misalnya, status dengan dua qubit yang diinisialisasi ke status nol adalah:

$$\ket{0}\otimes\ket{0}=\ket{{0}\ket{{0}=\ket{{00}=\begin{bmatrix} 1 \\ 0 \end{bmatrix}\otimes\begin{bmatrix} 1 \\ 0 \end{bmatrix}=\begin{bmatrix} 1 \\ 0 \\ 0 \\ 0 \end{bmatrix}. $$

Demikian pula, status $\ket{p}$ untuk bilangan bulat $p$ mewakili status kuantum yang mengodekan bilangan bulat $p$ dalam representasi biner. Misalnya, jika Anda ingin mengekspresikan angka $5$ menggunakan pengodean biner yang tidak ditandatangani, Anda juga dapat mengekspresikannya sebagai

$$\ket{1}\ket{0}\ket{1}=\ket{101}=\ket{5}. $$

Dalam notasi ini, $\ket{0}$ tidak perlu merujuk ke status qubit tunggal tetapi lebih ke register qubit yang menyimpan pengodean $biner 0$. Perbedaan antara kedua notasi ini jelas dari konteks. Konvensi ini berguna untuk menyederhanakan contoh pertama, yang dapat ditulis dengan salah satu cara berikut:

$$\begin{bmatrix}1 \\ 0 \end{bmatrix}\otimes\cdots\otimes\begin{bmatrix}1 \\ 0 \end{bmatrix}=\ket{{0}\otimes\cdots\otimes\ket{0}=|0\cdots 0\rangle=\ket{{0}^{\otimes n}$$

di mana $\ket{0}^{\otimes n}$ mewakili produk tensor dari kondisi kuantum $n$$\ket{0}$.

Contoh: Jelaskan superposisi dengan notasi Dirac

Sebagai contoh lain tentang bagaimana Anda dapat menggunakan notasi Dirac untuk menggambarkan status kuantum, pertimbangkan cara yang setara berikut untuk menulis status kuantum yang merupakan superposisi yang sama atas setiap string bit yang mungkin panjang $n$

$$ H^{\otimes n}\ket{0}=\frac{1}{2^{n/2}}\sum_{j=0}^{2^n-1}\ket{j}=\ket{+}^{\otimes n}. $$

Di sini Anda mungkin bertanya-tanya mengapa jumlahnya berkisar dari $0$ hingga $2^{n}-1$ untuk $n$ bit. Pertama, perhatikan bahwa ada $2^{n}$ konfigurasi berbeda yang $dapat diambil oleh n$ bit. Anda dapat melihat ini dengan mencatat bahwa satu bit dapat mengambil nilai $2$ tetapi dua bit dapat mengambil nilai $4$ dan seterusnya. Secara umum, ini berarti bahwa ada $2^n$ string bit yang mungkin berbeda tetapi nilai terbesar yang dikodekan di salah satu dari mereka $1\cdots 1=2^n-1$ dan karenanya itu adalah batas atas untuk jumlah tersebut. Sebagai catatan, dalam contoh ini Anda tidak menggunakan +^ n+ dalam analogi ke $\ket{{0}^{\otimes n{0}$}\ket{=.}$}=\ket{{\otimes}$\ket{ Konvensi notasi ini disediakan untuk status dasar komputasi dengan setiap kubit diinisialisasi ke nol. Meskipun konvensi seperti itu masuk akal dalam kasus ini, itu tidak digunakan dalam literatur komputasi kuantum.

Ekspresikan linearitas dengan notasi Dirac

Fitur lain dari notasi Dirac adalah fakta bahwa itu linier. Misalnya, untuk dua bilangan $\alpha$ kompleks dan $\beta$, Anda dapat menulis

$$\ket{\psi}\otimes ( \alpha\ket{\phi} + \beta\ket{\chi})=\alpha\ket{\psi}\ket{\phi} + \beta\ket{\psi}\ket{\chi}.$$

Artinya, Anda dapat mendistribusikan notasi produk tensor dalam notasi Dirac sehingga mengambil produk tensor antara vektor status akhirnya terlihat seperti perkalian biasa.

Vektor bra mengikuti konvensi yang mirip dengan vektor ket. Misalnya, vektor $\bra{\psi}\bra{\phi}$ setara dengan $\psi^\dagger\otimes\phi^\dagger=(\psi\otimes\phi)^\dagger$ vektor status. Jika vektor $\ket{\psi}$ ket adalah $\alpha\ket{0} + \beta\ket{1}$, maka versi vektor bra vektor adalah $\bra{\psi}=\ket{\psi}^\dagger= ({0}\alpha\bra{^* +\bra{1}\beta^*).$

Sebagai contoh, bayangkan Anda ingin menghitung probabilitas pengukuran status $\ket{\psi}\frac{3}{5}\ket{{1}=+ \frac{4}{5}\ket{0}$ menggunakan program kuantum untuk mengukur status menjadi $\ket{+}$ atau .$\ket{{-}$ Kemudian probabilitas bahwa perangkat akan mengeluarkan bahwa status adalah $\ket{-}$

$$|\braket{- |\psi}|^2=\left|\frac{{1}{\sqrt{{2}}(\bra{0} - \bra{{1})(\frac{3}{5}\ket{{1} + \frac{{4}{5}\ket{0}) \right|^2=\left|-\frac{3}{5\sqrt{{2}} + \frac{{4}{5\sqrt{2}}\right|^2=\frac{{1}{{50}.$$

Fakta bahwa tanda negatif muncul dalam perhitungan probabilitas adalah manifestasi dari interferensi kuantum, yang merupakan salah satu mekanisme di mana komputasi kuantum memperoleh keuntungan dibandingkan komputasi klasik.

ketbra atau produk luar

Item terakhir yang layak dibahas dalam notasi Dirac adalah ketbra atau produk luar. Produk luar diwakili dalam notasi Dirac sebagai $\ket{\psi}\bra{\phi}$, dan kadang-kadang disebut ketbra karena bra dan kets terjadi dalam urutan yang berlawanan sebagai rem. Produk luar didefinisikan melalui perkalian matriks sebagai $\ket{\psi}\bra{\phi}=\psi\phi^\dagger$ untuk vektor kondisi kuantum $\psi$ dan $\phi$. Contoh paling sederhana, dan bisa dibilang paling umum dari notasi ini, adalah

$$\ket{0}\bra{{0}=\begin{bmatrix}1\\ 0 \end{bmatrix}\begin{bmatrix}1& 0 \end{bmatrix}=\begin{bmatrix}1 & 0\\ 0 & 0\end{bmatrix}\bra{1}=\qquad\ket{1}\begin{bmatrix}0\\ 1 \end{bmatrix}\begin{bmatrix}0& 1 \end{bmatrix}=\begin{bmatrix}0 & 0\\ 0 & 1\end{bmatrix}. $$

Ketbras sering disebut proyektor karena mereka memproyeksikan kondisi kuantum ke nilai tetap. Karena operasi ini bukan uniter (dan bahkan tidak mempertahankan norma vektor), komputer kuantum tidak dapat menerapkan proyektor secara deterministik. Namun proyektor melakukan pekerjaan yang indah untuk menggambarkan tindakan pengukuran pada kondisi kuantum. Misalnya, jika Anda mengukur status $\ket{\psi}$ menjadi $0$, maka transformasi yang dihasilkan yang dialami status sebagai akibat dari pengukuran adalah

$$\ket{\psi}\rightarrow \frac{(\ket{{0}\bra{{0})\ket{\psi}}{|\braket{0 |\psi}|}=\ket{{0},$$

seperti yang Anda harapkan jika Anda mengukur status dan menemukannya .$\ket{0}$ Untuk mengulangi, proyektor tersebut tidak dapat diterapkan pada kondisi dalam komputer kuantum deterministik. Sebaliknya, mereka dapat diterapkan paling baik secara acak dengan hasil $\ket{0}$ muncul dengan beberapa probabilitas tetap. Probabilitas keberhasilan pengukuran semacam itu dapat ditulis sebagai nilai harapan proyektor kuantum dalam kondisi

$$\bra{\psi} (\ket{0}\bra{0})\ket{\psi}=|\braket{\psi| 0}|^2, $$

yang menggambarkan bahwa proyektor memberikan cara baru untuk mengekspresikan proses pengukuran.

Jika sebaliknya Anda mempertimbangkan untuk mengukur kubit pertama dari status multi-kubit menjadi $1$, maka Anda juga dapat menggambarkan proses ini dengan mudah menggunakan proyektor dan notasi Dirac:

$$P(\text{first qubit = 1})=\bra{\psi}\left(\ket{{1}\bra{{1}\otimes \mathbf{\mathbf{1}^{\otimes n-1}\right) . \ket{\psi} $$

Di sini matriks identitas dapat dengan mudah ditulis dalam notasi Dirac sebagai

$$\mathbf{1}=\ket{0}\bra{0}+\ket{1}\begin{bmatrix}\bra{{1}=1& 0\\ 0& 1 \end{bmatrix}. $$

Untuk kasus di mana ada dua qubit proyektor dapat diperluas sebagai

$$\ket{1}\bra{1}\otimes\id=\ket{{1}\bra{1}\otimes (\ket{{0}\bra{{0}+\ket{1}\bra{{1})=\ket{10}\bra{{10} + \ket{{11}\bra{{11}. $$

Anda kemudian dapat melihat bahwa ini konsisten dengan diskusi tentang kemungkinan pengukuran untuk status multiqubit menggunakan notasi vektor kolom:

$$ P(\text{qubit pertama = 1})=\psi^\dagger (e_{10}e_{10}^\dagger + e_{{11}e_{{11}^\dagger)\psi=|e_{{10}^\dagger\psi|^2 + |e_{11}^\dagger\psi|^2, $$

yang cocok dengan diskusi pengukuran multi-qubit. Generalisasi hasil ini untuk kasus multi-qubit, bagaimanapun, sedikit lebih mudah untuk mengekspresikan menggunakan notasi Dirac daripada notasi kolom-vektor, dan sepenuhnya setara dengan pengobatan sebelumnya.

Operator kepadatan

Operator lain yang berguna untuk mengekspresikan menggunakan notasi Dirac adalah operator kepadatan, kadang-kadang juga dikenal sebagai status operator. Sebagai vektor kondisi kuantum, operator kepadatan menggambarkan kondisi kuantum suatu sistem. Namun, sementara vektor kondisi kuantum hanya dapat mewakili kondisi murni, operator kepadatan juga dapat mewakili kondisi campuran.

Secara umum, matriks $\rho$ yang diberikan adalah operator kepadatan yang valid jika kondisi berikut terpenuhi:

  • $\rho$ adalah matriks bilangan kompleks
  • $\rho = \rho^{\dagger}$ (yaitu, $\rho$ merupakan Hermitian)
  • Setiap eigenvalue $p$ dari $\rho$ adalah $0 <= p <= 1$
  • Semua nilai eigen \ $rho$ dijumlahkan ke 1

Bersama-sama, kondisi ini menjamin bahwa $\rho$ dapat dianggap sebagai ansambel. Operator kepadatan untuk vektor kondisi kuantum $\ket{\psi}$ mengambil bentuk $\rho =\sum_i p_i \ket{\psi_i}\bra{\psi_i}$ adalah dekomposisi eigenvalue dari $\rho$, kemudian $\rho$ menggambarkan ansambel $\rho ={\ket{\psi_i}\text{ dengan probabilitas} p_i }$.

Kondisi kuantum murni adalah yang dicirikan oleh vektor ket tunggal atau wavefunction, dan tidak dapat ditulis sebagai campuran statistik (atau kombinasi cembung) dari kondisi kuantum lainnya. Kondisi kuantum campuran adalah ansambel statistik dari kondisi-kondisi murni.

Pada bola Bloch, status murni diwakili oleh titik pada permukaan bola, sedangkan keadaan campuran diwakili oleh titik interior. Keadaan campuran dari satu qubit diwakili oleh pusat bola, oleh simetri. Kemurnian suatu keadaan dapat divisualisasikan sebagai derajat di mana ia dekat dengan permukaan bola.

Konsep ini mewakili status sebagai matriks, daripada vektor, seringkali nyaman karena memberikan cara yang nyaman untuk mewakili perhitungan probabilitas, dan juga memungkinkan Anda untuk menggambarkan ketidakpastian statistik dan ketidakpastian kuantum dalam formalisme yang sama.

Operator kepadatan $\rho$ mewakili kondisi murni jika dan hanya jika:

  • $\rho$ dapat ditulis sebagai produk luar dari vektor kondisi, $\rho=\ket{\psi}\bra{\psi}$
  • $\rho =\rho^2$
  • $tr(\rho^2)=1$

Untuk mengetahui seberapa dekat operator kepadatan tertentu $\rho$ menjadi murni, Anda dapat melihat jejak (yaitu, jumlah elemen diagonal) dari $\rho^2$. Operator kepadatan mewakili kondisi murni jika dan hanya jika $tr (\rho ^{2})=1$.

Q# urutan gerbang setara dengan kondisi kuantum

Poin akhir yang layak diangkat tentang notasi kuantum dan Q# bahasa pemrograman: awal dokumen ini menyebutkan bahwa status kuantum adalah objek dasar informasi dalam komputasi kuantum. Kemudian mungkin mengejutkan bahwa di dalam Q# tidak ada gagasan tentang kondisi kuantum. Sebaliknya, semua status hanya dijelaskan oleh operasi yang digunakan untuk mempersiapkannya. Contoh sebelumnya adalah ilustrasi yang sangat baik tentang ini. Daripada mengekspresikan superposisi seragam atas setiap string bit kuantum dalam register, Anda dapat mewakili hasilnya sebagai $H^{\otimes n}\ket{0}$. Deskripsi status yang secara eksponensial lebih pendek ini tidak hanya memiliki keuntungan bahwa Anda dapat secara rahasia beralasan tentang hal itu, tetapi juga secara ringkas mendefinisikan operasi yang perlu disebarluaskan melalui tumpukan perangkat lunak untuk mengimplementasikan algoritma. Untuk alasan ini, Q# dirancang untuk memancarkan urutan gerbang daripada kondisi kuantum; namun, pada tingkat teoritis kedua perspektif setara.

Langkah berikutnya