{ "cells": [ { "cell_type": "markdown", "id": "fe853c49", "metadata": {}, "source": [ "# 4.2 单量子比特运算" ] }, { "cell_type": "markdown", "id": "011ecf95", "metadata": {}, "source": [ "未完成的证明:练习 4.11" ] }, { "cell_type": "code", "execution_count": 54, "id": "9cdd2263", "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import scipy\n", "from qiskit import QuantumCircuit, Aer, assemble\n", "from qiskit.visualization import plot_bloch_multivector" ] }, { "cell_type": "markdown", "id": "1c61d061", "metadata": {}, "source": [ "## 练习 4.1" ] }, { "cell_type": "markdown", "id": "15fa9b30", "metadata": {}, "source": [ ":::{admonition} 练习 4.1\n", "\n", "练习 2.11 计算了 Pauli 矩阵的特征向量 (如果还没有做这个练习,请现在就做),在 Bloch 球面上求出不同 Pauli 矩阵的归一化特征向量对应的点。\n", "\n", ":::" ] }, { "cell_type": "markdown", "id": "afcd33b5", "metadata": {}, "source": [ "首先,这三个 Pauli 矩阵 $X, Y, Z$ 的特征值均为 $\\lambda_1 = -1, \\lambda_2 = 1$。它们的特征向量分别是\n", "\n", "$$\n", "\\begin{alignat*}{4}\n", "|x_1\\rangle &= - \\frac{1}{\\sqrt{2}} |0\\rangle + \\frac{1}{\\sqrt{2}} |1\\rangle,& \\quad |x_2\\rangle &= \\frac{1}{\\sqrt{2}} |0\\rangle + \\frac{1}{\\sqrt{2}} |1\\rangle \\\\\n", "|y_1\\rangle &= - \\frac{1}{\\sqrt{2}} |0\\rangle + \\frac{i}{\\sqrt{2}} |1\\rangle,& \\quad |y_2\\rangle &= \\frac{1}{\\sqrt{2}} |0\\rangle + \\frac{i}{\\sqrt{2}} |1\\rangle \\\\\n", "|z_1\\rangle &= |1\\rangle,& \\quad |z_2\\rangle &= |0\\rangle\n", "\\end{alignat*}\n", "$$" ] }, { "cell_type": "markdown", "id": "f7ce77b4", "metadata": {}, "source": [ "下面使用程序绘制 Bloch 球面。我们先用 NumPy 给出本征向量,随后代入到 Qiskit 中绘制。可以看到,$X, Y, Z$ 的本征值分别对应 Bloch 球面上 $x, y, z$ 三个方向。" ] }, { "cell_type": "code", "execution_count": 2, "id": "6f736ab3", "metadata": {}, "outputs": [], "source": [ "X = np.array([[0, 1], [1, 0]])\n", "Y = np.array([[0, -1j], [1j, 0]])\n", "Z = np.array([[1, 0], [0, -1]])" ] }, { "cell_type": "code", "execution_count": 3, "id": "dfb83b9c", "metadata": {}, "outputs": [], "source": [ "def ex_4_1(matrix, title=None):\n", " \"\"\" Input Pauli matrix X or Y or Z; Draw eigenvectors of matrix on Bloch sphere. \"\"\"\n", " eig = np.linalg.eigh(matrix)[1].T\n", " circ = QuantumCircuit(2)\n", " for n, e in enumerate(eig):\n", " circ.initialize(e, n)\n", " return plot_bloch_multivector(circ, title)" ] }, { "cell_type": "code", "execution_count": 4, "id": "1509cc0a", "metadata": {}, "outputs": [ { "data": { "image/svg+xml": [ "\r\n", "\r\n", "\r\n", "\r\n", " \r\n", " \r\n", " \r\n", " \r\n", " 2021-08-05T14:23:17.246755\r\n", " image/svg+xml\r\n", " \r\n", " \r\n", " Matplotlib v3.3.4, https://matplotlib.org/\r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", "\r\n" ], "text/plain": [ "
" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ex_4_1(X, \"Eigenvectors of Pauli X\")" ] }, { "cell_type": "code", "execution_count": 5, "id": "60c22f50", "metadata": {}, "outputs": [ { "data": { "image/svg+xml": [ "\r\n", "\r\n", "\r\n", "\r\n", " \r\n", " \r\n", " \r\n", " \r\n", " 2021-08-05T14:23:17.790579\r\n", " image/svg+xml\r\n", " \r\n", " \r\n", " Matplotlib v3.3.4, https://matplotlib.org/\r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", "\r\n" ], "text/plain": [ "
" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ex_4_1(Y, \"Eigenvectors of Pauli Y\")" ] }, { "cell_type": "code", "execution_count": 6, "id": "e9571309", "metadata": {}, "outputs": [ { "data": { "image/svg+xml": [ "\r\n", "\r\n", "\r\n", "\r\n", " \r\n", " \r\n", " \r\n", " \r\n", " 2021-08-05T14:23:18.320383\r\n", " image/svg+xml\r\n", " \r\n", " \r\n", " Matplotlib v3.3.4, https://matplotlib.org/\r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", "\r\n" ], "text/plain": [ "
" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "ex_4_1(Z, \"Eigenvectors of Pauli Z\")" ] }, { "cell_type": "markdown", "id": "47864a68", "metadata": {}, "source": [ "## 练习 4.2" ] }, { "cell_type": "markdown", "id": "f5ae25af", "metadata": {}, "source": [ ":::{admonition} 练习 4.2\n", "\n", "令 $x \\in \\mathbb{R}$ 即为实数,$A$ 为一矩阵且满足 $A^2 = I$。证明:\n", "\n", "$$\n", "\\exp (i A x) = \\cos (x) I + i \\sin (x) A\n", "$$\n", "\n", "利用这一结果验证式 (4.4) 到式 (4.6) 即关于 $\\hat x, \\hat y, \\hat z$ 轴向的旋转算符定义:\n", "\n", "$$\n", "\\begin{align*}\n", "R_x (\\theta) &\\equiv e^{i \\theta X / 2} = \\cos \\frac{\\theta}{2} I - i \\sin \\frac{\\theta}{2} X = \\begin{bmatrix} \\cos \\frac{\\theta}{2} & - i \\sin \\frac{\\theta}{2} \\\\ -i \\sin \\frac{\\theta}{2} & \\cos \\frac{\\theta}{2} \\end{bmatrix} \\tag{4.4} \\\\\n", "R_y (\\theta) &\\equiv e^{i \\theta Y / 2} = \\cos \\frac{\\theta}{2} I - i \\sin \\frac{\\theta}{2} Y = \\begin{bmatrix} \\cos \\frac{\\theta}{2} & - \\sin \\frac{\\theta}{2} \\\\ \\sin \\frac{\\theta}{2} & \\cos \\frac{\\theta}{2} \\end{bmatrix} \\tag{4.5} \\\\\n", "R_z (\\theta) &\\equiv e^{i \\theta Z / 2} = \\cos \\frac{\\theta}{2} I - i \\sin \\frac{\\theta}{2} Z = \\begin{bmatrix} e^{- i \\theta / 2} & 0 \\\\ 0 & e^{i \\theta / 2} \\end{bmatrix} \\tag{4.6}\n", "\\end{align*}\n", "$$\n", "\n", ":::" ] }, { "cell_type": "markdown", "id": "964a100a", "metadata": {}, "source": [ "首先,我们回顾一下 $z \\in C$ 下的 Taylor 展开:\n", "\n", "$$\n", "\\begin{align*}\n", "\\exp(z) &= \\sum_{k=0}^n \\frac{z^k}{k!} = 1 + z + \\frac{z^2}{2!} + \\frac{z^3}{3!} + \\frac{z^4}{4!} + \\frac{z^5}{5!} + \\cdots \\\\\n", "\\cos(z) &= \\sum_{\\substack{k=0 \\\\ 2 \\mid k}}^n (-1)^{k/2} \\frac{z^k}{k!} = 1 - \\frac{z^2}{2!} + \\frac{z^4}{4!} + \\cdots \\\\\n", "\\sin(z) &= \\sum_{\\substack{k=1 \\\\ 2 \\nmid k}}^n (-1)^{(k-1)/2} \\frac{z^k}{k!} = z - \\frac{z^3}{3!} + \\frac{z^5}{5!} + \\cdots\n", "\\end{align*}\n", "$$" ] }, { "cell_type": "markdown", "id": "14af3bbf", "metadata": {}, "source": [ "对于矩阵而言,其 Taylor 展开是类似的。我们将 $z = i A x$ 代入,并以尽可能消除虚数符号为目的,得到\n", "\n", "$$\n", "\\exp(i A x) = \\sum_{k=0}^n i^k \\frac{(Ax)^k}{k!} = \\sum_{\\substack{k=0 \\\\ 2 \\mid k}}^n (-1)^{k/2} \\frac{(Ax)^k} {k!} + i \\sum_{\\substack{k=1 \\\\ 2 \\nmid k}}^n (-1)^{(k-1)/2} \\frac{(Ax)^k} {k!} = \\cos (A x) + i \\sin (A x)\n", "$$\n", "\n", "如果不用级数展开,而使用 Euler 公式 $e^{i x} = \\cos(x) + i \\sin (x)$,也可以得到相同的结论。" ] }, { "cell_type": "markdown", "id": "b25f9b73", "metadata": {}, "source": [ "随后,我们注意到另一个条件 $A^2 = I$,那么上式可以进一步化简。我们先讨论 $\\cos$ 的情况:\n", "\n", "$$\n", "\\cos (A x) = \\sum_{\\substack{k=0 \\\\ 2 \\mid k}}^n (-1)^{k/2} \\frac{x^k A^k} {k!} = \\sum_{\\substack{k=0 \\\\ 2 \\mid k}}^n (-1)^{k/2} \\frac{x^k (A^2)^{k/2}} {k!} = \\sum_{\\substack{k=0 \\\\ 2 \\mid k}}^n (-1)^{k/2} \\frac{x^k I} {k!} = I \\sum_{\\substack{k=0 \\\\ 2 \\mid k}}^n (-1)^{k/2} \\frac{x^k} {k!} = \\cos(x) I\n", "$$\n", "\n", "这里利用到求和角标 $k$ 必须是偶数的条件,因此可以将 $A^k$ 的偶数幂次化为单位阵的幂次 $I^{k/2}$,进而所有被求和项只包含矩阵 $I$,可以提到求和之外。最终,将矩阵的函数化为数值函数与矩阵的乘积。" ] }, { "cell_type": "markdown", "id": "7192b6ac", "metadata": {}, "source": [ "对于 $\\sin$ 而言,情况是类似的:\n", "\n", "$$\n", "\\sin(A x) = \\sum_{\\substack{k=1 \\\\ 2 \\nmid k}}^n (-1)^{(k-1)/2} \\frac{x^k A^k} {k!} = \\sum_{\\substack{k=1 \\\\ 2 \\nmid k}}^n (-1)^{(k-1)/2} \\frac{x^k (A^2)^{(k-1)/2} A} {k!} = A \\sum_{\\substack{k=1 \\\\ 2 \\nmid k}}^n (-1)^{(k-1)/2} \\frac{x^k} {k!} = \\sin(x) A\n", "$$\n", "\n", "将 $\\cos(Ax) = \\cos(x) I$ 与 $\\sin(Ax) = \\sin(x) A$ 代入 $\\exp(i A x)$ 的展开式,得证。" ] }, { "cell_type": "markdown", "id": "3df36337", "metadata": {}, "source": [ "我们不再验证式 (4.4-6),只是使用程序简单验证一下当 $\\theta = 0.3$ 时式 4.4 的正确性。下面的第一个代码块是计算 $\\theta = 0.3$ 时 $e^{i \\theta X / 2}$ 的结果;第二个代码块则是式 (4.4) 最右边的矩阵数值结果。" ] }, { "cell_type": "code", "execution_count": 9, "id": "9785d882", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0.98877108+0.j , 0. +0.14943813j],\n", " [0. +0.14943813j, 0.98877108+0.j ]])" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "θ = 0.3\n", "scipy.linalg.expm(1j * θ * X / 2)" ] }, { "cell_type": "code", "execution_count": 10, "id": "c2045b84", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "array([[0.98877108+0.j , 0. -0.14943813j],\n", " [0. -0.14943813j, 0.98877108+0.j ]])" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "np.array([\n", " [np.cos(θ/2), - 1j * np.sin(θ/2)],\n", " [- 1j * np.sin(θ/2), np.cos(θ/2)]\n", "])" ] }, { "cell_type": "markdown", "id": "2909acd4", "metadata": {}, "source": [ "## 练习 4.3" ] }, { "cell_type": "markdown", "id": "e7de3d8b", "metadata": {}, "source": [ ":::{admonition} 练习 4.3\n", "\n", "证明除了一个全局相位,$\\pi/8$ 门满足 $T = R_z (\\pi/4)$。\n", "\n", ":::" ] }, { "cell_type": "markdown", "id": "c422c917", "metadata": {}, "source": [ "这直接可以参考书中式 (4.3):\n", "\n", "\\begin{equation*}\n", "T = \\exp(i \\pi/8) \\begin{bmatrix} \\exp(- i \\pi/8) & 0 \\\\ 0 & \\exp(i \\pi/8) \\end{bmatrix} \\tag{4.3}\n", "\\end{equation*}" ] }, { "cell_type": "markdown", "id": "8d58cb2b", "metadata": {}, "source": [ "## 练习 4.4" ] }, { "cell_type": "markdown", "id": "9c90d677", "metadata": {}, "source": [ ":::{admonition} 练习 4.4\n", "\n", "对某个 $\\varphi$,将 Hadamard 门表示为旋转算符 $R_x, R_z$ 以及 $e^{i \\varphi}$ 的乘积。\n", "\n", ":::" ] }, { "cell_type": "markdown", "id": "40768488", "metadata": {}, "source": [ "这个结果需要稍微凑一下。答案应该是\n", "\n", "$$\n", "H = e^{i \\varphi} R_z (\\varphi) R_x (\\varphi) R_z (\\varphi)\n", "$$\n", "\n", "上式的 $\\varphi$ 不是任意的,而是 $\\varphi = \\pi / 2$。\n", "\n", "这个等式意味着,态向量在 Hadamard 门作用下,相当于其在 Bloch 球面的表示先依 $z$ 轴旋转 90°,再依 $x$ 轴旋转 90°、最后依 $z$ 轴旋转 90°。$z$ 轴的方向是 $|1\\rangle$ 到 $|0\\rangle$;所有旋转都是逆时针旋转。下面的第一块代码是定义 $\\varphi = \\pi/2$ 以及旋转算符的矩阵表示;第二个代码块是分别给出在 $|\\psi\\rangle = 0.8 |0\\rangle + 0.6i |1\\rangle$ 时,$|\\psi\\rangle$、$R_z (\\varphi) |\\psi\\rangle$、$R_x (\\varphi) R_z (\\varphi) |\\psi\\rangle$、$R_z (\\varphi) R_x (\\varphi) R_z (\\varphi) |\\psi\\rangle$ 的 Bloch 球面表示。籍此可以了解向量是如何沿轴旋转的。" ] }, { "cell_type": "code", "execution_count": 94, "id": "861a0135", "metadata": {}, "outputs": [], "source": [ "φ = np.pi / 2\n", "Rx_varphi = scipy.linalg.expm(1j * φ * X / 2)\n", "Rz_varphi = scipy.linalg.expm(1j * φ * Z / 2)" ] }, { "cell_type": "code", "execution_count": 95, "id": "638fa9f7", "metadata": {}, "outputs": [ { "data": { "image/svg+xml": [ "\r\n", "\r\n", "\r\n", "\r\n", " \r\n", " \r\n", " \r\n", " \r\n", " 2021-08-05T15:36:47.240399\r\n", " image/svg+xml\r\n", " \r\n", " \r\n", " Matplotlib v3.3.4, https://matplotlib.org/\r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", " \r\n", "\r\n" ], "text/plain": [ "
" ] }, "execution_count": 95, "metadata": {}, "output_type": "execute_result" } ], "source": [ "circ = QuantumCircuit(4)\n", "vec = np.array([0.8, 0.6j])\n", "circ.initialize(vec, 0)\n", "circ.initialize(Rz_varphi @ vec, 1)\n", "circ.initialize(Rx_varphi @ Rz_varphi @ vec, 2)\n", "circ.initialize(Rz_varphi @ Rx_varphi @ Rz_varphi @ vec, 3)\n", "plot_bloch_multivector(circ)" ] }, { "cell_type": "markdown", "id": "a0e5d85d", "metadata": {}, "source": [ "## 练习 4.5" ] }, { "cell_type": "markdown", "id": "295ed881", "metadata": {}, "source": [ ":::{admonition} 练习 4.5\n", "\n", "证明 $(\\hat n \\cdot \\vec\\sigma)^2 = I$,并以此验证式 (4.8):\n", "\n", "$$\n", "R_{\\hat n} (\\theta) \\equiv \\exp (- i \\theta \\hat n \\cdot \\vec \\sigma / 2) = \\cos \\left( \\frac{\\theta}{2} \\right) I - i \\sin \\left( \\frac{\\theta}{2} \\right) (n_x X + n_y Y + n_z Z)\n", "\\tag{4.8}\n", "$$\n", "\n", "其中,$\\hat n = (n_x, n_y, n_z)$ 为三维空间的实单位向量,$\\vec \\sigma = (X, Y, Z)$ 是 Pauli 矩阵的三元向量。\n", "\n", ":::" ] }, { "cell_type": "markdown", "id": "898b2f7b", "metadata": {}, "source": [ "若 $(\\hat n \\cdot \\vec\\sigma)^2 = I$ 成立,那么式 (4.8) 的验证实际上和练习 4.2 对式 (4.4-6) 的验证过程实际上是相同的。那么证明的难点还是在 $(\\hat n \\cdot \\vec\\sigma)^2 = I$ 的证明上。\n", "\n", "实际上证明很简单。首先,容易给出\n", "\n", "$$\n", "\\hat n \\cdot \\vec\\sigma = n_x X + n_y Y + n_z Z\n", "$$\n", "\n", "随后是要作上式的平方。矩阵的平方与数乘不太相同,特别是在对交叉项的处理上。例如 $(A + B)^2 = A^2 + B^2 + AB + BA$。因此,上式平方是\n", "\n", "$$\n", "(\\hat n \\cdot \\vec\\sigma)^2 = n_x^2 X^2 + n_y^2 Y^2 + n_z^2 Z^2 + n_x n_y (XY+YX) + n_y n_z (YZ+ZY) + n_z n_x (ZX+XZ)\n", "$$\n", "\n", "容易验证 $XY+YX = YZ+ZY = ZX+XZ = 0$,因此上式后三项为零矩阵。同时由于 $X^2 = Y^2 = Z^2 = I$,因此前三项恰为\n", "\n", "$$\n", "(\\hat n \\cdot \\vec\\sigma)^2 = n_x^2 + n_y^2 + n_z^2 = \\Vert \\hat n \\Vert^2 = 1\n", "$$\n", "\n", "注意最后我们利用了 $\\hat n$ 是单位向量的条件。" ] }, { "cell_type": "markdown", "id": "c445f355", "metadata": {}, "source": [ "## 练习 4.6 (旋转 Bloch 球面的解释)" ] }, { "cell_type": "markdown", "id": "f5839310", "metadata": {}, "source": [ ":::{admonition} 练习 4.6\n", "\n", "$R_{\\hat n} (\\theta)$ 算符称为旋转算符的一个原因是如下要证明的事实。假设一个单量子比特的状态由 Bloch 向量 $\\vec \\lambda$ 表示,则旋转算符 $R_{\\hat n} (\\theta)$ 在该态向量上的作用,是绕 Bloch 球面的向量 $\\hat n$ 轴旋转 $\\theta$ 角度。这个事实解释了旋转矩阵中出现的看起来特别神秘的因子 2。\n", "\n", ":::" ] }, { "cell_type": "markdown", "id": "7567a9fc", "metadata": {}, "source": [ "这里需要先引入一个结论;该结论似乎并未在书中出现。这里请参考下述文档的第 20 页。\n", "\n", "> http://www.vcpc.univie.ac.at/~ian/hotlist/qc/talks/bloch-sphere-rotations.pdf\n", "\n", "若 $\\hat n$ 在 Bloch 球面上的坐标可以用 $(\\theta_{\\hat n}, \\varphi_{\\hat n})$ 表示,那么绕 $\\hat n$ (逆时针) 旋转 $\\theta$ 角度的算符可以表示为\n", "\n", "$$\n", "R_{\\hat n} (\\theta) = R_z (\\varphi_{\\hat n}) R_y (\\theta_{\\hat n}) R_z (\\theta) R_y (- \\theta_{\\hat n}) R_z (- \\varphi_{\\hat n})\n", "$$\n", "\n", "其大致思路是将绕 $\\hat n$ 轴旋转的问题化为绕 $\\hat z$ 轴旋转。具体来说,\n", "\n", "1. 执行 $R_z (- \\varphi_{\\hat n})$,它可以将 $\\hat n$ 轴转到 $\\varphi = 0$ 处,即转到 $xOz$ 平面上;$\\vec \\lambda$ 也作了响应的转动;\n", "2. 执行 $R_y (- \\theta_{\\hat n})$,它可以将方才转到 $xOz$ 平面上的 $\\hat n$ 轴再转到 $\\theta = 0$ 处,即转到 $z$ 轴上;$\\vec \\lambda$ 也作了响应的转动;\n", "3. 执行 $R_z (\\theta)$,它执行的是经过上述两个步骤转动后,$\\vec \\lambda$ 相对于处在 $\\hat z$ 轴的 $\\hat n$ 的旋转 $\\theta$ 角度操作;\n", "4. 执行 $R_z (\\varphi_{\\hat n}) R_y (- \\theta_{\\hat n})$,复原 $\\hat n$ 的位置;$\\vec \\lambda$ 也作了响应的转动。\n", "\n", "从物理的直觉上,如果我们接受 $R_y(\\theta), R_z(\\theta)$ 算符的物理意义,那么这五步操作确实可以表示绕 Bloch 球面的向量 $\\hat n$ 轴旋转 $\\theta$ 角度。" ] }, { "cell_type": "markdown", "id": "8177de60", "metadata": {}, "source": [ "但我们并未证明数学上等式左右是成立的。证明的过程会是非常繁琐的;我们用 Mathematica 对计算过程简化,可以验证\n", "\n", "$$\n", "\\begin{align*}\n", "&\\quad R_z (\\varphi_{\\hat n}) R_y (\\theta_{\\hat n}) R_z (\\theta) R_y (- \\theta_{\\hat n}) R_z (- \\varphi_{\\hat n}) \\\\\n", "&= \\begin{bmatrix}\n", "\\displaystyle\n", "\\cos \\frac{\\theta}{2} - i \\cos \\theta_{\\hat n} \\sin \\frac{\\theta}{2} &\n", "\\displaystyle\n", "\\sin \\frac{\\theta}{2} \\sin \\theta_{\\hat n} \\big( - i \\cos \\varphi_{\\hat n} - \\sin \\varphi_{\\hat n} \\big)\n", "\\\\\n", "\\displaystyle\n", "\\sin \\frac{\\theta}{2} \\sin \\theta_{\\hat n} \\big( - i \\cos \\varphi_{\\hat n} + \\sin \\varphi_{\\hat n} \\big)\n", "&\n", "\\displaystyle\n", "\\cos \\frac{\\theta}{2} + i \\cos \\theta_{\\hat n} \\sin \\frac{\\theta}{2}\n", "\\end{bmatrix} \\\\\n", "&= \\cos \\frac{\\theta}{2} I - i \\sin \\frac{\\theta}{2} \\left( \\cos \\varphi_{\\hat n} \\sin \\theta_{\\hat n} \\cdot X + \\sin \\varphi_{\\hat n} \\sin \\theta_{\\hat n} \\cdot Y + \\cos \\theta_{\\hat n} \\cdot Z \\right) \\\\\n", "&= \\cos \\frac{\\theta}{2} I - i \\sin \\frac{\\theta}{2} \\hat n \\cdot \\vec \\sigma = R_{\\hat n} (\\theta)\n", "\\end{align*}\n", "$$\n", "\n", "就此完成对 $R_{\\hat n} (\\theta)$ 表达式正确性与物理图景的说明了。" ] }, { "cell_type": "markdown", "id": "33809b08", "metadata": {}, "source": [ "## 练习 4.7" ] }, { "cell_type": "markdown", "id": "17fdede0", "metadata": {}, "source": [ ":::{admonition} 练习 4.7\n", "\n", "证明 $X Y X = -Y$,并以此证明 $X R_y (\\theta) X = R_y (-\\theta)$。\n", "\n", ":::" ] }, { "cell_type": "markdown", "id": "ad50007b", "metadata": {}, "source": [ "$XYX = -Y$ 的证明只需要验证矩阵乘法即可。$X R_y (\\theta) X = R_y (-\\theta)$ 的证明可以利用式 (4.5) 的结论以及 $X^2 = I$ 的性质:\n", "\n", "$$\n", "\\begin{align*}\n", "X R_y (\\theta) X &= X \\left( \\cos \\frac{\\theta}{2} I - i \\sin \\frac{\\theta}{2} Y \\right) X \\\\\n", "&= \\cos \\frac{\\theta}{2} I - i \\sin \\frac{\\theta}{2} XYX = \\cos \\frac{\\theta}{2} I + i \\sin \\frac{\\theta}{2} Y \\\\\n", "&= \\cos \\frac{-\\theta}{2} I - i \\sin \\frac{-\\theta}{2} Y = R_y (-\\theta)\n", "\\end{align*}\n", "$$" ] }, { "cell_type": "markdown", "id": "7b2635a7", "metadata": {}, "source": [ "## 练习 4.8" ] }, { "cell_type": "markdown", "id": "09254791", "metadata": {}, "source": [ ":::{admonition} 练习 4.8\n", "\n", "任意一个单量子比特酉算符可以以下述形式表示:\n", "\n", "$$\n", "U = \\exp(i \\alpha) R_{\\hat n} (\\theta)\n", "$$\n", "\n", "其中 $\\alpha, \\theta \\in \\mathbb{R}$、$\\hat n$ 为三维实向量。\n", "\n", "1. 证明这个事实;\n", "2. 求 $\\alpha, \\theta, \\hat n$ 以得到 Hadamard 门 $H$;\n", "3. 求 $\\alpha, \\theta, \\hat n$ 以得到相位门 $S$。\n", "\n", " $$\n", " H = \\frac{1}{\\sqrt{2}} \\begin{bmatrix} 1 & 1 \\\\ 1 & -1 \\end{bmatrix}, \\quad S = \\begin{bmatrix} 1 & 0 \\\\ 0 & i \\end{bmatrix}\n", " $$\n", "\n", ":::" ] }, { "cell_type": "markdown", "id": "23c2b8af", "metadata": {}, "source": [ "**第一问**" ] }, { "cell_type": "markdown", "id": "21347310", "metadata": {}, "source": [ "首先我们需要表明 $R_{\\hat n} (\\theta)$ 确实是酉的。实际上之前的练习或书中的文本都没有对这个事实作说明 (练习 4.6 或许需要)。我们首先回顾式 (4.8):" ] }, { "cell_type": "markdown", "id": "d43733bf", "metadata": {}, "source": [ "$$\n", "R_{\\hat n} (\\theta) = \\cos \\left( \\frac{\\theta}{2} \\right) I - i \\sin \\left( \\frac{\\theta}{2} \\right) (\\hat n \\cdot \\vec \\sigma)\n", "$$" ] }, { "cell_type": "markdown", "id": "dfd04a3a", "metadata": {}, "source": [ "这里我们用了练习 4.5 的记号。对 $R_{\\hat n} (\\theta)$ 取共轭转置,可知\n", "\n", "$$\n", "R_{\\hat n}^\\dagger (\\theta) = \\cos \\left( \\frac{\\theta}{2} \\right) I + i \\sin \\left( \\frac{\\theta}{2} \\right) (\\hat n \\cdot \\vec \\sigma)\n", "$$" ] }, { "cell_type": "markdown", "id": "59d2004f", "metadata": {}, "source": [ "这里利用了 Pauli 矩阵的共轭转置仍然是自身的性质;因此,只有一个虚数单位的 $i$ 的正负号被颠倒了而已。两者相乘,可以得到\n", "\n", "$$\n", "\\begin{align*}\n", "R_{\\hat n} (\\theta) R_{\\hat n}^\\dagger (\\theta) &= \\cos^2 \\left( \\frac{\\theta}{2} \\right) I + \\sin^2 \\left( \\frac{\\theta}{2} \\right) (\\hat n \\cdot \\vec \\sigma)^2 \\\\\n", "&= \\cos^2 \\left( \\frac{\\theta}{2} \\right) I + \\sin^2 \\left( \\frac{\\theta}{2} \\right) I = I\n", "\\end{align*}\n", "$$" ] }, { "cell_type": "markdown", "id": "e6a5b26e", "metadata": {}, "source": [ "------" ] }, { "cell_type": "markdown", "id": "7fa62178", "metadata": {}, "source": [ "既然 $R_{\\hat n} (\\theta)$ 是酉的,那么构成该矩阵表示的两个列向量必然是相互正交且归一的。我们假设一个酉矩阵可以写为\n", "\n", "$$\n", "U = \\begin{bmatrix} a & b \\\\ c & d \\end{bmatrix}\n", "$$\n", "\n", "- 若 $a, b, c$ 的值是确定的,那么 $d$ 的值也必然是确定的,因为 $U U^\\dagger = I$ 可以推演出 $a c^* + b d^* = 0$。\n", "- 分别依据 $U U^\\dagger = I$ 与 $U^\\dagger U = I$,我们可以知道 $|a|^2 + |b|^2 = 1$ 与 $|a|^2 + |c|^2 = 1$。这也同时意味着 $|b| = |c|$。因此 $b, c$ 的值不是任意的。\n", "\n", "以上述两个结论出发,可以知道若要使一个 $\\mathbb{C}^2$ 的酉矩阵可以表示为任意酉矩阵,\n", "- $a$ 可以是任意 $0 \\leqslant |a| \\leqslant 1$ 的复数;\n", "- $b, c$ 在给定 $a$ 的值时,尽管模长是固定的,但分别可以取任意相位。" ] }, { "cell_type": "markdown", "id": "dffdb68e", "metadata": {}, "source": [ "现在回到 $R_{\\hat n} (\\theta)$ 的讨论上。我们将其矩阵形式写出:\n", "\n", "$$\n", "R_{\\hat n} (\\theta) = \\begin{bmatrix} a & b \\\\ c & d \\end{bmatrix} = e^{i \\alpha } \\begin{bmatrix}\n", "\\cos \\frac{\\theta}{2} - i n_z \\sin \\frac{\\theta}{2} & (- i n_x - n_y) \\sin \\frac{\\theta}{2} \\\\\n", "(- i n_x + n_y) \\sin \\frac{\\theta}{2} & \\cos \\frac{\\theta}{2} + i n_z \\sin \\frac{\\theta}{2}\n", "\\end{bmatrix}\n", "$$" ] }, { "cell_type": "markdown", "id": "3203e8b3", "metadata": {}, "source": [ "------" ] }, { "cell_type": "markdown", "id": "5971b242", "metadata": {}, "source": [ "首先,我们考察 $b = e^{i \\alpha} (- i n_x - n_y) \\sin (\\theta/2)$ 与 $c = e^{i \\alpha} (- i n_x + n_y) \\sin (\\theta/2)$ 的相位可以是任意的。我们可以计算得到 (下式利用到 $\\theta \\in [0, 2 \\pi)$ 下,$\\sin (\\theta/2) \\geqslant 0$,因此 $n_y \\sin (\\theta/2) < 0$ 在 $\\sin(\\theta/2) \\neq 0$ 时等价于 $n_y < 0$)\n", "\n", "$$\n", "\\begin{align*}\n", "\\arg (b) &= \\alpha + \\arctan \\frac{n_x}{n_y} + \\big( \\pi \\text{ if } n_y < 0 \\text{ else } 0) \\mod 2\\pi \\\\\n", "\\arg (c) &= \\alpha - \\arctan \\frac{n_x}{n_y} + \\big( \\pi \\text{ if } n_y > 0 \\text{ else } 0) \\mod 2\\pi\n", "\\end{align*}\n", "$$\n", "\n", "由于上式中有两个自由度 ($\\alpha, n_x/n_y$),因此可以保证 $b, c$ 分别都可以取到任意的相位。" ] }, { "cell_type": "markdown", "id": "5f504306", "metadata": {}, "source": [ "随后,我们再考虑 $a = \\cos \\frac{\\theta}{2} - i n_z \\sin \\frac{\\theta}{2}$ 的取值。我们在讨论 $b, c$ 时,已经使用了 $\\alpha$ 的自由度,因此这里 $\\alpha$ 应当视作定值。而 $n_x, n_y, n_z$ 三个变量受到归一化条件 $|n_x|^2 + |n_y|^2 + |n_z|^2 = 1$ 限制,因此总自由度为 2;由于 $n_x/n_y$ 的自由度被使用,因此还剩下的自由度可以归到 $n_z$ 的取值上。因此,上面 $a$ 的取值总共受到两个自由度制约,分别是 $\\theta$ 的取值与 $n_z$ 的取值。这两个自由度分别对应到 $a$ 的实部与虚部,因此 $a$ 也是可以任意取到的。" ] }, { "cell_type": "markdown", "id": "ec48c584", "metadata": {}, "source": [ "------" ] }, { "cell_type": "markdown", "id": "ab25f574", "metadata": {}, "source": [ "但稍微严格一些的分析方法是考察 $a = \\cos \\frac{\\theta}{2} - i n_z \\sin \\frac{\\theta}{2}$ 的幅角与模长,因为实部与虚部并不是任意的 $[0, 1]$ 实数,而必须要满足模长不大于 1 的条件。若模长能取任意的 $|a| \\in [0, 1]$ 且幅角能取任意的 $\\arg (a) \\in [0, 2\\pi)$,那么 $a$ 便可以取任意 $0 \\leqslant |a| \\leqslant 1$ 复数;但这种分析稍微有些复杂 (我们仍然用到 $\\theta \\in [0, 2 \\pi)$ 下,$\\sin (\\theta/2) \\geqslant 0$):\n", "\n", "$$\n", "\\begin{align*}\n", "|a|^2 &= 1 - (1-n_z^2) \\sin^2 \\frac{\\theta}{2} \\in [0, 1] \\\\\n", "\\arg(a) &= \\alpha - \\arctan \\left( n_z \\tan \\frac{\\theta}{2} \\right) + \\big( \\pi \\text{ if } n_z < 0 \\text{ else } 0 \\big) \\mod 2 \\pi\n", "\\end{align*}\n", "$$\n", "\n", "现在的自由变量仍然是 $n_z$ 与 $\\theta$。但由于幅角需要取模 $2 \\pi$ 取余数,还要判断 $\\cos (\\theta / 2)$ 的正负号,但这不太利于分析。实际上,在确定 $b, c$ 相位时,$\\alpha$ 已经被指定了数值了;$\\cos (\\theta / 2)$ 的正负号可以依靠 $\\theta$ 的取值解决。因此,我们会希望下述的 $\\gamma_\\mathrm{norm}, \\gamma_\\mathrm{arg}$ 可以取到任意定义域内的值:\n", "\n", "$$\n", "\\begin{align*}\n", "\\gamma_\\mathrm{arg} &\\equiv \\tan \\big( \\alpha - \\arg(a) \\big) = n_z \\tan \\frac{\\theta}{2} \\in (-\\infty, +\\infty) \\\\\n", "\\gamma_\\mathrm{norm} &\\equiv 1 - (1-n_z^2) \\sin^2 \\frac{\\theta}{2} \\in (0, 1)\n", "\\end{align*}\n", "$$\n", "\n", "我们暂且不对 $\\gamma_\\mathrm{arg} = \\pm \\infty$ 或 $\\gamma_\\mathrm{norm} = 0 \\text{ or } 1$ 的特殊情况作细致的讨论,只要基本正确就行了。依据上两式,可以推知:\n", "\n", "$$\n", "\\begin{align*}\n", "\\theta = 2 \\arccos \\left( \\pm \\sqrt{\\frac{\\gamma_\\mathrm{norm}}{1 + \\gamma_{\\mathrm{arg}^2}}} \\right), \\quad n_z = \\pm \\sqrt{\\frac{\\gamma_\\mathrm{norm} \\gamma_\\mathrm{arg}^2}{1 - \\gamma_\\mathrm{norm} + \\gamma_\\mathrm{arg}^2}}\n", "\\end{align*}\n", "$$\n", "\n", "这两式在 $\\gamma_\\mathrm{arg} \\in (-\\infty, +\\infty), \\gamma_\\mathrm{norm} \\in (0, 1)$ 的取值域内都是合理的,即一定满足 $\\theta \\in (0, 2\\pi)$ 且 $n_z \\in (0, 1)$。上面的整个过程表明了,$R_{\\hat n} (\\theta)$ 的第一个元素 $a = \\cos \\frac{\\theta}{2} - i n_z \\sin \\frac{\\theta}{2}$ 可以取到任意模不大于 1 的复数。边界情况没有作证明,但大体证明完毕。" ] }, { "cell_type": "markdown", "id": "28a71291", "metadata": {}, "source": [ "------" ] }, { "cell_type": "markdown", "id": "9528b8de", "metadata": {}, "source": [ "在这些分析下,我们应当知道,一般来说参数 $\\alpha, \\theta, \\hat n$ 总共对应四个自由度,恰好与矩阵元素数量一致。因此,大多数情况下,对于给定的酉矩阵 $U$,其表示 $U = \\exp(i \\alpha) R_{\\hat n} (\\theta)$ 中的参数 $\\alpha, \\theta, \\hat n$ 是唯一确定的。" ] }, { "cell_type": "markdown", "id": "21d10a45", "metadata": {}, "source": [ "**第二问**\n", "\n", "求解这类问题时,一般来说先通过 $b, c$ 的幅角确定 $n_x / n_y$ 和 $\\alpha$ 的值,并尝试给出看起来比较合理的 $\\theta$ 值。最后通过 $a$ 的值确定 $n_z$。" ] }, { "cell_type": "markdown", "id": "2d05a6f8", "metadata": {}, "source": [ "对于 Hadamard 门,我们首先可以依 $b = c = 1/\\sqrt{2}$,可知 $b, c$ 相位相同,确定 $n_y = 0, \\alpha = \\pi/2$。随后依 $a = 1/\\sqrt{2}$ 且没有虚部,确定 $\\theta = \\pi$。最后,依据 $a, b, c$ 的数值,可以确定 $n_x = n_z = 1/\\sqrt{2}$。因此,$n = (0, 1/\\sqrt{2}, 1/\\sqrt{2})$,\n", "\n", "$$\n", "H = e^{i \\pi / 2} R_{\\hat n} (\\pi) \n", "$$" ] }, { "cell_type": "markdown", "id": "fa5ffa93", "metadata": {}, "source": [ "**第三问**" ] }, { "cell_type": "markdown", "id": "625d7d09", "metadata": {}, "source": [ "依 $b = c = 0$,我们确定 $\\theta = 0$ 或 $n_x = n_y = 0$。但当我们代入 $\\theta = 0$ 时,会发现 $a, d$ 的相位一致;这与 $1, i$ 之间相位相差 $\\pi/2$ 矛盾。因此只可能是 $n_x = n_y = 0$ 且 $n_z = 1$,即 $\\hat n = (0, 0, 1)$。随后再对 $a, d$ 的值进行讨论,容易知道\n", "\n", "$$\n", "S = e^{i \\pi / 4} R_{\\hat n} (\\pi/2)\n", "$$" ] }, { "cell_type": "markdown", "id": "73392484", "metadata": {}, "source": [ "## 练习 4.9" ] }, { "cell_type": "markdown", "id": "4cf86157", "metadata": {}, "source": [ ":::{admonition} 练习 4.9\n", "\n", "解释为什么任意单量子比特上的酉算符可以写成式 (4.12) 的形式。\n", "\n", "\\begin{equation*}\n", "U = e^{i \\alpha} R_z (\\beta) R_y (\\gamma) R_z (\\delta) = \\begin{bmatrix}\n", "e^{i (\\alpha - \\beta/2 - \\delta/2)} \\cos (\\gamma/2) & - e^{i (\\alpha - \\beta/2 + \\delta/2)} \\sin (\\gamma/2) \\\\\n", "e^{i (\\alpha + \\beta/2 - \\delta/2)} \\sin (\\gamma/2) & e^{i (\\alpha + \\beta/2 + \\delta/2)} \\cos (\\gamma/2)\n", "\\end{bmatrix}\n", "\\tag{4.12}\n", "\\end{equation*}\n", "\n", ":::" ] }, { "cell_type": "markdown", "id": "75f1db76", "metadata": {}, "source": [ "这里的证明过程应当与练习 4.8 类似,但会相对容易一些。证明的思路是:\n", "\n", "- 表明 $UU^\\dagger = U^\\dagger U = I$;\n", "- 表明使用其中的两个自由度 (譬如说 $\\alpha, \\beta$),可以使得非对角元 $- e^{i (\\alpha - \\beta/2 + \\delta/2)} \\sin (\\gamma/2)$ 与 $e^{i (\\alpha + \\beta/2 - \\delta/2)} \\sin (\\gamma/2)$ 分别可以取到任意相位;\n", "- 表明在剩余的两个自由度 (譬如说 $\\delta, \\gamma$) 下,可以使得 $e^{i (\\alpha - \\beta/2 - \\delta/2)} \\cos (\\gamma/2)$ 取到任意的模长在 1 以内的复数。" ] }, { "cell_type": "markdown", "id": "ac6b1de9", "metadata": {}, "source": [ "这道题还有另一种思路。这里请参考下述文档 (但该文档的证明其实错了,因此不能照搬那边的答案):\n", "\n", "> https://serab.net/docs/qcqi/chapter4/#49\n", "\n", "我们假设已经完成练习 4.8 的证明,那么\n", "\n", "$$\n", "\\begin{align*}\n", "R_{\\hat n} (\\theta) &= e^{i \\alpha } \\begin{bmatrix}\n", "\\cos \\frac{\\theta}{2} - i n_z \\sin \\frac{\\theta}{2} & (- i n_x - n_y) \\sin \\frac{\\theta}{2} \\\\\n", "(- i n_x + n_y) \\sin \\frac{\\theta}{2} & \\cos \\frac{\\theta}{2} + i n_z \\sin \\frac{\\theta}{2}\n", "\\end{bmatrix} \\\\\n", "&= e^{i \\alpha} \\begin{bmatrix}\n", "\\left( 1 - i n_z \\tan \\frac{\\theta}{2} \\right) \\cos \\frac{\\theta}{2} & (- i n_x - n_y) \\sin \\frac{\\theta}{2} \\\\\n", "(- i n_x + n_y) \\sin \\frac{\\theta}{2} & \\left( 1 + i n_z \\tan \\frac{\\theta}{2} \\right) \\cos \\frac{\\theta}{2}\n", "\\end{bmatrix}\n", "\\end{align*}\n", "$$" ] }, { "cell_type": "markdown", "id": "fd8d0d57", "metadata": {}, "source": [ "练习 4.9 与练习 4.8 的 $\\alpha$ 恰好是一致的。对于练习 4.9 中的 $\\beta, \\delta$ 值,他们应当会满足下述关系 (依据 $R_{\\hat n} (\\theta)$ 的非对角元的幅角关系)\n", "\n", "$$\n", "e^{i (\\beta/2 - \\delta/2)} = \\frac{- i n_x + n_y}{\\sqrt{n_x^2 + n_y^2}}\n", "$$\n", "\n", "那么\n", "\n", "$$\n", "\\begin{align*}\n", "\\cos \\left( \\frac{\\beta}{2} - \\frac{\\delta}{2} \\right) = \\frac{n_y}{\\sqrt{n_x^2 + n_y^2}} \\\\\n", "\\sin \\left( \\frac{\\beta}{2} - \\frac{\\delta}{2} \\right) = - \\frac{n_x}{\\sqrt{n_x^2 + n_y^2}}\n", "\\end{align*}\n", "$$\n", "\n", "这两个关系式可以唯一地确定 $\\beta / 2 - \\delta / 2$ 的数值。" ] }, { "cell_type": "markdown", "id": "c50d3bbb", "metadata": {}, "source": [ "同时还要满足 (依据 $R_{\\hat n} (\\theta)$ 的对角元的幅角关系)\n", "\n", "$$\n", "e^{i (\\beta/2 + \\delta/2)} = \\frac{1 + i n_z \\tan(\\theta/2)}{\\sqrt{1 + n_z^2 \\tan^2 (\\theta/2)}}\n", "$$\n", "\n", "那么\n", "\n", "$$\n", "\\begin{align*}\n", "\\cos \\left( \\frac{\\beta}{2} + \\frac{\\delta}{2} \\right) = \\frac{1}{\\sqrt{1 + n_z^2 \\tan^2 (\\theta/2)}} \\\\\n", "\\sin \\left( \\frac{\\beta}{2} + \\frac{\\delta}{2} \\right) = \\frac{n_z \\tan(\\theta/2)}{\\sqrt{1 + n_z^2 \\tan^2 (\\theta/2)}}\n", "\\end{align*}\n", "$$\n", "\n", "这两个关系式可以唯一地确定 $\\beta/2 + \\delta/2$ 的数值。我们已经知道了 $\\beta/2 - \\delta/2$ 的数值了,因此 $\\beta, \\delta$ 可以被唯一地确定。" ] }, { "cell_type": "markdown", "id": "0643ccea", "metadata": {}, "source": [ "最后,可以通过 $R_{\\hat n} (\\theta)$ 的对角元 (也可以是非对角元) 的模长,唯一地确定 $\\gamma$ 的数值。因此,酉矩阵总是可以写为式 (4.12) 的形式,并且参数是唯一确定的。" ] }, { "cell_type": "markdown", "id": "3889549e", "metadata": {}, "source": [ "## 练习 4.10 (旋转的 $x$-$y$ 分解)" ] }, { "cell_type": "markdown", "id": "01f4348b", "metadata": {}, "source": [ ":::{admonition} 练习 4.10\n", "\n", "用 $R_x$ 代替 $R_z$,给出相应于定理 4.1 的分解。\n", "\n", ":::" ] }, { "cell_type": "markdown", "id": "a85b3a34", "metadata": {}, "source": [ "分解是很容易给出的:\n", "\n", "$$\n", "U = e^{i \\alpha} R_x (\\beta) R_y (\\gamma) R_x (\\delta)\n", "$$" ] }, { "cell_type": "markdown", "id": "ee3ed02c", "metadata": {}, "source": [ "但类似于定理 4.1 的简单证明,但过程非常复杂,在这个练习中恐怕就很难给出了。\n", "\n", "但本题的证明也可以投机取巧地给出。我们只要说,我们将 $x$ 与 $z$ 轴转换一下,换个坐标系,那么式 (4.11) 自然就转化为了上述表达式 (可能因为左右手坐标系互换会导致 $\\gamma$ 应该要变为 $\\pi - \\gamma$,但这不重要)。" ] }, { "cell_type": "markdown", "id": "7902008a", "metadata": {}, "source": [ "## 练习 4.11" ] }, { "cell_type": "markdown", "id": "759fbe68", "metadata": {}, "source": [ ":::{admonition} 练习 4.11\n", "\n", "设 $\\hat m$ 和 $\\hat n$ 是三维空间中不平行的实单位向量,证明任意单量子比特上的酉算符对适当的 $\\alpha, \\beta_k, \\gamma_k$,可以写成\n", "\n", "$$\n", "U = e^{i \\alpha} R_{\\hat n} (\\beta_1) R_{\\hat m} (\\gamma_1) R_{\\hat n} (\\beta_2) R_{\\hat m} (\\gamma_2) \\cdots\n", "\\tag{4.13}\n", "$$\n", "\n", ":::" ] }, { "cell_type": "markdown", "id": "674a966c", "metadata": {}, "source": [ ":::{danger}\n", "\n", "未完成的证明!\n", "\n", "我想这道题应该会与练习 4.6 的思路比较像,但我不是很能把握题意。\n", "\n", ":::" ] }, { "cell_type": "markdown", "id": "b534088e", "metadata": {}, "source": [ "## 练习 4.12" ] }, { "cell_type": "markdown", "id": "9398732b", "metadata": {}, "source": [ ":::{admonition} 练习 4.12\n", "\n", "给出 Hadamard 门的 $A, B, C$ 和 $\\alpha$。其中,$A, B, C$ 为酉算符,$A B C = I$ 且 $H = e^{i \\alpha} A X B X C$。\n", "\n", ":::" ] }, { "cell_type": "markdown", "id": "f54261c4", "metadata": {}, "source": [ "首先根据式 (4.12),我们可以比较容易地凑出 $\\alpha = \\pi/2$、$\\beta = 0$、$\\gamma = \\pi/2$、$\\delta = \\pi$。随后我们回顾推论 4.2 的过程,就知道\n", "\n", "$$\n", "\\begin{align*}\n", "A = R_z (0) R_y (\\pi/4) &= \\begin{bmatrix} \\cos(\\pi/8) & -\\sin(\\pi/8) \\\\ \\sin(\\pi/8) & \\cos(\\pi/8) \\end{bmatrix} \\\\\n", "B = R_y (-\\pi/4) R_z (-\\pi/2) &= \\begin{bmatrix} e^{i \\pi / 4} \\cos(\\pi/8) & e^{-i \\pi / 4} \\sin(\\pi/8) \\\\ - e^{i \\pi / 4} \\sin(\\pi/8) & e^{-i \\pi / 4} \\cos(\\pi/8) \\end{bmatrix} \\\\\n", "C = R_z(\\pi/2) &= \\begin{bmatrix} e^{- i \\pi / 4} & 0 \\\\ 0 & e^{i \\pi / 4} \\end{bmatrix}\n", "\\end{align*}\n", "$$" ] }, { "cell_type": "markdown", "id": "feae26cb", "metadata": {}, "source": [ "## 练习 4.13 (线路恒等式)" ] }, { "cell_type": "markdown", "id": "54bcb528", "metadata": {}, "source": [ ":::{admonition} 练习 4.13\n", "\n", "能以熟知的恒等式来简化线路非常有用,证明如下三个恒等式:\n", "\n", "$$\n", "H X H = Z, \\quad H Y H = - Y, \\quad H Z H = X\n", "\\tag{4.18}\n", "$$\n", "\n", ":::" ] }, { "cell_type": "markdown", "id": "5f66482e", "metadata": {}, "source": [ "证明略。直接套算符的矩阵表示定义很容易可以给出证明。" ] }, { "cell_type": "markdown", "id": "8982af77", "metadata": {}, "source": [ "## 练习 4.14" ] }, { "cell_type": "markdown", "id": "c5331c81", "metadata": {}, "source": [ ":::{admonition} 练习 4.14\n", "\n", "利用前面的练习,证明除了一个全局相位,$HTH=R_x(\\pi/4)$。\n", "\n", ":::" ] }, { "cell_type": "markdown", "id": "21cadf1f", "metadata": {}, "source": [ "直接套定义的话,应该能容易地给出\n", "\n", "$$\n", "HTH = \\exp(i \\pi/8) R_x (\\pi/4)\n", "$$\n", "\n", "验证上述等式很容易,代入矩阵定义就行了。" ] }, { "cell_type": "markdown", "id": "0c2325ff", "metadata": {}, "source": [ "当然,题目既然要求说用上面的练习,那就用吧。我们回顾到\n", "\n", "\\begin{equation*}\n", "T = \\exp(i \\pi/8) \\begin{bmatrix} \\exp(-i \\pi/8) & 0 \\\\ 0 & \\exp(i \\pi/8) \\end{bmatrix} = \\exp(i \\pi/8) R_z (\\pi/4)\n", "\\tag{4.3}\n", "\\end{equation*}" ] }, { "cell_type": "markdown", "id": "3378373c", "metadata": {}, "source": [ "我们再考虑到式 (4.6):\n", "\n", "$$\n", "R_z (\\theta) = \\cos \\frac{\\theta}{2} I - i \\sin \\frac{\\theta}{2} Z \\tag{4.6}\n", "$$" ] }, { "cell_type": "markdown", "id": "bca3a9d3", "metadata": {}, "source": [ "因此,\n", "\n", "$$\n", "\\begin{align*}\n", "H T H &= \\exp(i \\pi/8) \\big( \\cos (\\pi/8) HIH - i \\sin (\\pi/8) HZH \\big) \\\\\n", "&= \\exp(i \\pi/8) \\big( \\cos (\\pi/8) I - i \\sin (\\pi/8) HXH \\big) \\\\\n", "&= \\exp(i \\pi/8) R_x (\\pi/4)\n", "\\end{align*}\n", "$$" ] }, { "cell_type": "markdown", "id": "f76b45af", "metadata": {}, "source": [ "## 练习 4.15 (单量子比特运算的组合)" ] }, { "cell_type": "markdown", "id": "26399dfd", "metadata": {}, "source": [ ":::{admonition} 练习 4.15\n", "\n", "Bloch 球面为显示两个旋转组合的效果提供了一条很好的途径。\n", "\n", "1. 证明如果绕轴 $\\hat n_1$ 旋转一个角度 $\\beta_1$,接着绕轴 $\\hat n_2$ 旋转一个角度 $\\beta_2$,则总的旋转为如下给出的绕轴 $\\hat n_{12}$ 转角为 $\\beta_{12}$ 的旋转:\n", "\n", " $$\n", " \\begin{align*}\n", " c_{12} &= c_1 c_2 - s_1 s_2 \\hat n_1 \\cdot \\hat n_2 \\tag{4.19} \\\\\n", " s_{12} \\hat n_{12} &= s_1 c_2 \\hat n_1 + c_1 s_2 \\hat n_2 - s_1 s_2 \\hat n_2 \\times \\hat n_1 \\tag{4.20}\n", " \\end{align*}\n", " $$\n", "\n", " 其中,在角标 $i = 1, 2, 12$ 下\n", "\n", " $$\n", " c_i = \\cos \\frac{\\beta_i}{2}, \\quad s_i = \\sin \\frac{\\beta_i}{2}\n", " $$\n", "\n", "2. 证明 $\\beta_1 = \\beta_2$ 且 $\\hat n_1 = \\hat z$,这些等式可以简化为\n", "\n", " $$\n", " \\begin{align*}\n", " c_{12} &= c^2 - s^2 \\hat z \\cdot \\hat n_2 \\tag{4.21} \\\\\n", " s_{12} \\hat n_{12} &= s c (\\hat z + \\hat n_2) - s^2 \\hat n_2 \\times \\hat z \\tag{4.22}\n", " \\end{align*}\n", " $$\n", "\n", ":::" ] }, { "cell_type": "markdown", "id": "550e58fc", "metadata": {}, "source": [ "本题的第二小题在第一小题基础上非常容易导出。我们只考虑第一小题。" ] }, { "cell_type": "markdown", "id": "d09ad2c1", "metadata": {}, "source": [ "需要先说明,待求的未知量除了 $\\beta_{12}$,还有 $\\hat n_{12}$。第一小题的证明其实只是套用式 4.8 的证明即可给出,只是过程会比较繁琐。依照题目对 $c_i, s_i$ 的定义 ($i = 1, 2, 12$),\n", "\n", "$$\n", "R_{\\hat n_i} (\\beta_i) = \\cos \\frac{\\beta_i}{2} I - i \\sin \\frac{\\beta_i}{2} \\hat n_i \\cdot \\vec \\sigma = c_i I - i s_i \\hat n_i \\cdot \\vec \\sigma\n", "$$" ] }, { "cell_type": "markdown", "id": "8618b5de", "metadata": {}, "source": [ "需要注意算符乘积顺序,旋转算符一般不对易。同时,我们需要知道,先作用的算符在右边,后作用的算符在左边。因此,总的作用算符是\n", "\n", "$$\n", "\\begin{align*}\n", "R_{\\hat n_{12}} (\\beta_{12}) = R_{\\hat n_2} (\\beta_2) R_{\\hat n_1} (\\beta_1)\n", "&= c_1 c_2 I - i (c_2 s_1 \\hat n_1 + c_1 s_2 \\hat n_2) \\cdot \\vec \\sigma - s_1 s_2 (\\hat n_2 \\cdot \\vec \\sigma) (\\hat n_1 \\cdot \\vec \\sigma)\n", "\\end{align*}\n", "$$" ] }, { "cell_type": "markdown", "id": "f3e73f25", "metadata": {}, "source": [ "这里处理起来比较麻烦的项是 $(\\hat n_1 \\cdot \\vec \\sigma) (\\hat n_2 \\cdot \\vec \\sigma)$。若利用下述关系:\n", "\n", "$$\n", "\\begin{gather*}\n", "XY = - YX = iZ, \\quad YZ = -ZY = iX, \\quad XZ = -XZ = iZ \\\\\n", "X^2 = Y^2 = Z^2 = I\n", "\\end{gather*}\n", "$$" ] }, { "cell_type": "markdown", "id": "d3614850", "metadata": {}, "source": [ "可以知道\n", "\n", "$$\n", "\\begin{align*}\n", "&\\quad (\\hat n_2 \\cdot \\vec \\sigma) (\\hat n_1 \\cdot \\vec \\sigma) = (n_{2x} X + n_{2y} Y + n_{2z} Z) (n_{1x} X + n_{1y} Y + n_{1z} Z) \\\\\n", "&= (n_{1x} n_{2x} + n_{1y} n_{2y} + n_{1y} n_{2y}) I + (n_{2x} n_{1y} XY + n_{1x} n_{2y} YX) \\\\\n", "&\\quad + (n_{2y} n_{1z} YZ + n_{1y} n_{2z} ZY) + (n_{2z} n_{1x} ZX + n_{1z} n_{2x} XZ) \\\\\n", "&= \\hat n_1 \\cdot \\hat n_2 I + i Z (n_{2x} n_{1y} - n_{1x} n_{2y}) + i X (n_{2y} n_{1z} - n_{1y} n_{2z}) + i Y (n_{2z} n_{1x} - n_{1z} n_{2x}) \\\\\n", "&= \\hat n_1 \\cdot \\hat n_2 I + (\\hat n_2 \\times \\hat n_1) \\cdot \\vec \\sigma\n", "\\end{align*}\n", "$$" ] }, { "cell_type": "markdown", "id": "69f988ae", "metadata": {}, "source": [ "代入 $R_{\\hat n_{12}} (\\beta_{12})$ 的表达式,可以得到\n", "\n", "$$\n", "R_{\\hat n_{12}} (\\beta_{12})= (c_1 c_2 - s_1 s_2 \\hat n_1 \\cdot \\hat n_2) I - i (c_2 s_1 \\hat n_1 + c_1 s_2 \\hat n_2 - s_1 s_2 \\hat n_2 \\times \\hat n_1) \\cdot \\vec \\sigma\n", "$$" ] }, { "cell_type": "markdown", "id": "23535afe", "metadata": {}, "source": [ "又联系到 $R_{\\hat n_{12}} (\\beta_{12})$ 的另一种表示:\n", "\n", "$$\n", "R_{\\hat n_{12}} (\\beta_{12}) = c_{12} I - i s_{12} \\hat n_{12} \\cdot \\vec \\sigma\n", "$$" ] }, { "cell_type": "markdown", "id": "ad42da48", "metadata": {}, "source": [ "因此联立上两式,就能得到待证等式 (4.19-20)。" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.5" } }, "nbformat": 4, "nbformat_minor": 5 }