{
"metadata": {
"name": "",
"signature": "sha256:a748bd7dcefe267276f21437e2cfb26f558c5ee9a14efbaf1078daacd3ef110f"
},
"nbformat": 3,
"nbformat_minor": 0,
"worksheets": [
{
"cells": [
{
"cell_type": "heading",
"level": 1,
"metadata": {},
"source": [
"Test sympy.physics.quantum.pauli"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"from sympy import *\n",
"init_printing()"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 1
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"from sympy.physics.quantum import *\n",
"from sympy.physics.quantum.spin import *"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 2
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"from sympy.physics.quantum.pauli import *\n",
"from sympy.physics.quantum.boson import *\n",
"from sympy.physics.quantum.density import *\n",
"from sympy.physics.quantum.operatorordering import *"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 9
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"s_ops = sx, sy, sz, sp, sm = SigmaX(), SigmaY(), SigmaZ(), SigmaPlus(), SigmaMinus()\n",
"\n",
"#s_ops = sx, sy, sz, sp, sm = Jx, Jy, Jz, Jplus, Jminus # does not work well, many expressions unevaluated"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 10
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"sx1, sy1, sz1 = SigmaX(1), SigmaY(1), SigmaZ(1)\n",
"sx2, sy2, sz2 = SigmaX(2), SigmaY(2), SigmaZ(2)"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 11
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"qsimplify_pauli(sx * sy)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"latex": [
"$$i {\\sigma_z}$$"
],
"metadata": {},
"output_type": "pyout",
"png": "iVBORw0KGgoAAAANSUhEUgAAABsAAAARBAMAAADeYcoAAAAAMFBMVEX///8AAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAv3aB7AAAAD3RSTlMAq7tmEImZdkTvIlTN\nMt09j7jFAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAAlklEQVQIHWNgYBBiQAHCKDxSOCxhBQwMbvP/\n/08A62LlmMDA+6z70SqIGavZDjB4bmCwh/AYHPgLGHIYGPodoPz9DgyfGRjqoTyGgyxcfxkYDjIw\ncL3xamBg+c3K8oWBdwoDA9vmcAYGjg+LGbQZ1jUAFbNsABLqBQxu5SEgrStABBxwNfA6wDkMDAuj\njZB4DAU3jzAAAEKJIPKRQx1aAAAAAElFTkSuQmCC\n",
"prompt_number": 12,
"text": [
"\u2148\u22c5False"
]
}
],
"prompt_number": 12
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"qsimplify_pauli(sx1 * sy1 * sx2 * sy2)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"latex": [
"$$- {\\sigma_z^{(1)}} {\\sigma_z^{(2)}}$$"
],
"metadata": {},
"output_type": "pyout",
"png": "iVBORw0KGgoAAAANSUhEUgAAAFEAAAAaBAMAAAA9Pq2qAAAAMFBMVEX///8AAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAv3aB7AAAAD3RSTlMAEM3dMpnvRFS7ImZ2\nq4lXHXwmAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAB7ElEQVQ4EWWSQUgUURjH/899ujuzow2JkkG6\nQgcvgRURntqMhPAiHdJDlzx5aw8dEq0WFAmWQKEgPA1ICIG41y42nRMVOnSJMEjw0GEXEqEO4/e9\nee/NvvWD+f7/7/e+933DMIAbfsR1lZOOj6wFU2U6CDwAJjMgDnH0LpT1jGi3hvvfgJ6yPfDCnqi7\nhN8WaJOPgSVArNqDReQi+Q8DFmjjRaoTb+3BOroq/im8siWpyZHQTOxaPkqu0EQQW5KacRLufGO4\nLJHLxSgcGKJ1npQ7WVXk+Y2PAKWaKXlBmTt5too8zSpOAWq2gaz0LVUn31AhaeZLPAPfcKKXqhV6\ndgwVo5Ajr9dQPDREay7Ehzs/gO+WX0dXkjTQXbEEfU+TZCqop6BEIh4lyQm+pqAjFc7y1vMx+hno\ntSgKfOHe9NJ6BE8B1FLh3F/FZ5IFRa5QFnMoNujzqC3iALh4k+MqHgKvQppW5tYv9HSWkG+SLjMI\n6MjEf2DfeKUX6ggaDkkL/y9wzeHbZXTQznMhmpBPHDoUYqJlZ3b2HhsVwL9xmbIKr+rfJrMxvKmB\nkb7dX2Q7a38MEI/3eOTMTmyIq6Lq1sCldqDr9lXwzdu0XfArkle2xCbutlSZ3Tr+lBXs/J+1VZfo\nKp4YdnkgZ/WSM+IcX3cwR2IoAAAAAElFTkSuQmCC\n",
"prompt_number": 13,
"text": [
"-1\u22c52"
]
}
],
"prompt_number": 13
},
{
"cell_type": "code",
"collapsed": false,
"input": [],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 15
},
{
"cell_type": "heading",
"level": 1,
"metadata": {},
"source": [
"HTML table"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"from IPython.display import HTML"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 12
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"def print_table(data):\n",
" t_table = \"
\"\n",
" t_row = \"%s
\"\n",
" t_col = \"%s | \"\n",
" table_code = t_table % \"\".join([t_row % \"\".join([t_col % (\"$%s$\" % latex(col))\n",
" for col in row])\n",
" for row in data])\n",
" return HTML(table_code)"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 13
},
{
"cell_type": "heading",
"level": 2,
"metadata": {},
"source": [
"Matrix representations"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"data = [s_ops, [represent(s) for s in s_ops]]\n",
"\n",
"print_table(data)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"html": [
"\n",
"${\\sigma_x}$ | ${\\sigma_y}$ | ${\\sigma_z}$ | ${\\sigma_+}$ | ${\\sigma_-}$ |
$\\left[\\begin{matrix}0 & 1\\\\1 & 0\\end{matrix}\\right]$ | $\\left[\\begin{matrix}0 & - i\\\\i & 0\\end{matrix}\\right]$ | $\\left[\\begin{matrix}1 & 0\\\\0 & -1\\end{matrix}\\right]$ | $\\left[\\begin{matrix}0 & 1\\\\0 & 0\\end{matrix}\\right]$ | $\\left[\\begin{matrix}0 & 0\\\\1 & 0\\end{matrix}\\right]$ |
\n",
"
"
],
"metadata": {},
"output_type": "pyout",
"prompt_number": 14,
"text": [
""
]
}
],
"prompt_number": 14
},
{
"cell_type": "heading",
"level": 2,
"metadata": {},
"source": [
"Commutators"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"data = [[r\"{\\rm Expression}\", r\"{\\rm Evaluated\\;value}\", r\"{\\rm Numerical\\;test}\"]] + \\\n",
" [[Commutator(s1, s2),\n",
" Commutator(s1, s2).doit(),\n",
" represent(Commutator(s1, s2)) == represent(Commutator(s1, s2).doit())]\n",
" for s1 in s_ops for s2 in s_ops if s1 != s2]\n",
"\n",
"print_table(data)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"html": [
"\n",
"${\\rm Expression}$ | ${\\rm Evaluated\\;value}$ | ${\\rm Numerical\\;test}$ |
$\\left[{\\sigma_x},{\\sigma_y}\\right]$ | $2 i {\\sigma_z}$ | $\\mathrm{True}$ |
$\\left[{\\sigma_x},{\\sigma_z}\\right]$ | $- 2 i {\\sigma_y}$ | $\\mathrm{True}$ |
$- \\left[{\\sigma_+},{\\sigma_x}\\right]$ | $- {\\sigma_z}$ | $\\mathrm{True}$ |
$- \\left[{\\sigma_-},{\\sigma_x}\\right]$ | ${\\sigma_z}$ | $\\mathrm{True}$ |
$- \\left[{\\sigma_x},{\\sigma_y}\\right]$ | $- 2 i {\\sigma_z}$ | $\\mathrm{True}$ |
$\\left[{\\sigma_y},{\\sigma_z}\\right]$ | $2 i {\\sigma_x}$ | $\\mathrm{True}$ |
$- \\left[{\\sigma_+},{\\sigma_y}\\right]$ | $- i {\\sigma_z}$ | $\\mathrm{True}$ |
$- \\left[{\\sigma_-},{\\sigma_y}\\right]$ | $- i {\\sigma_z}$ | $\\mathrm{True}$ |
$- \\left[{\\sigma_x},{\\sigma_z}\\right]$ | $2 i {\\sigma_y}$ | $\\mathrm{True}$ |
$- \\left[{\\sigma_y},{\\sigma_z}\\right]$ | $- 2 i {\\sigma_x}$ | $\\mathrm{True}$ |
$- \\left[{\\sigma_+},{\\sigma_z}\\right]$ | $2 {\\sigma_+}$ | $\\mathrm{True}$ |
$- \\left[{\\sigma_-},{\\sigma_z}\\right]$ | $- 2 {\\sigma_-}$ | $\\mathrm{True}$ |
$\\left[{\\sigma_+},{\\sigma_x}\\right]$ | ${\\sigma_z}$ | $\\mathrm{True}$ |
$\\left[{\\sigma_+},{\\sigma_y}\\right]$ | $i {\\sigma_z}$ | $\\mathrm{True}$ |
$\\left[{\\sigma_+},{\\sigma_z}\\right]$ | $- 2 {\\sigma_+}$ | $\\mathrm{True}$ |
$- \\left[{\\sigma_-},{\\sigma_+}\\right]$ | ${\\sigma_z}$ | $\\mathrm{True}$ |
$\\left[{\\sigma_-},{\\sigma_x}\\right]$ | $- {\\sigma_z}$ | $\\mathrm{True}$ |
$\\left[{\\sigma_-},{\\sigma_y}\\right]$ | $i {\\sigma_z}$ | $\\mathrm{True}$ |
$\\left[{\\sigma_-},{\\sigma_z}\\right]$ | $2 {\\sigma_-}$ | $\\mathrm{True}$ |
$\\left[{\\sigma_-},{\\sigma_+}\\right]$ | $- {\\sigma_z}$ | $\\mathrm{True}$ |
\n",
"
"
],
"metadata": {},
"output_type": "pyout",
"prompt_number": 15,
"text": [
""
]
}
],
"prompt_number": 15
},
{
"cell_type": "heading",
"level": 2,
"metadata": {},
"source": [
"Anticommutators"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"def elim_zero_matrix(e):\n",
" return 0 if e == Matrix([[0, 0], [0, 0]]) else e"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 16
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"I_op = IdentityOperator(2)\n",
"\n",
"data = [[r\"{\\rm Expression}\", r\"{\\rm Evaluated\\;value}\", r\"{\\rm Numerical\\;test}\"]] + \\\n",
" [[AntiCommutator(s1, s2),\n",
" AntiCommutator(s1, s2).doit(),\n",
" elim_zero_matrix(represent(AntiCommutator(s1, s2))) == represent(I_op * AntiCommutator(s1, s2).doit())]\n",
" for s1 in s_ops for s2 in s_ops if s1 != s2]\n",
"\n",
"print_table(data)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"html": [
"\n",
"${\\rm Expression}$ | ${\\rm Evaluated\\;value}$ | ${\\rm Numerical\\;test}$ |
$\\left\\{{\\sigma_x},{\\sigma_y}\\right\\}$ | $0$ | $\\mathrm{True}$ |
$\\left\\{{\\sigma_x},{\\sigma_z}\\right\\}$ | $0$ | $\\mathrm{True}$ |
$\\left\\{{\\sigma_+},{\\sigma_x}\\right\\}$ | $1$ | $\\mathrm{True}$ |
$\\left\\{{\\sigma_-},{\\sigma_x}\\right\\}$ | $1$ | $\\mathrm{True}$ |
$\\left\\{{\\sigma_x},{\\sigma_y}\\right\\}$ | $0$ | $\\mathrm{True}$ |
$\\left\\{{\\sigma_y},{\\sigma_z}\\right\\}$ | $0$ | $\\mathrm{True}$ |
$\\left\\{{\\sigma_+},{\\sigma_y}\\right\\}$ | $i$ | $\\mathrm{True}$ |
$\\left\\{{\\sigma_-},{\\sigma_y}\\right\\}$ | $- i$ | $\\mathrm{True}$ |
$\\left\\{{\\sigma_x},{\\sigma_z}\\right\\}$ | $0$ | $\\mathrm{True}$ |
$\\left\\{{\\sigma_y},{\\sigma_z}\\right\\}$ | $0$ | $\\mathrm{True}$ |
$\\left\\{{\\sigma_+},{\\sigma_z}\\right\\}$ | $0$ | $\\mathrm{True}$ |
$\\left\\{{\\sigma_-},{\\sigma_z}\\right\\}$ | $0$ | $\\mathrm{True}$ |
$\\left\\{{\\sigma_+},{\\sigma_x}\\right\\}$ | $1$ | $\\mathrm{True}$ |
$\\left\\{{\\sigma_+},{\\sigma_y}\\right\\}$ | $i$ | $\\mathrm{True}$ |
$\\left\\{{\\sigma_+},{\\sigma_z}\\right\\}$ | $0$ | $\\mathrm{True}$ |
$\\left\\{{\\sigma_-},{\\sigma_+}\\right\\}$ | $1$ | $\\mathrm{True}$ |
$\\left\\{{\\sigma_-},{\\sigma_x}\\right\\}$ | $1$ | $\\mathrm{True}$ |
$\\left\\{{\\sigma_-},{\\sigma_y}\\right\\}$ | $- i$ | $\\mathrm{True}$ |
$\\left\\{{\\sigma_-},{\\sigma_z}\\right\\}$ | $0$ | $\\mathrm{True}$ |
$\\left\\{{\\sigma_-},{\\sigma_+}\\right\\}$ | $1$ | $\\mathrm{True}$ |
\n",
"
"
],
"metadata": {},
"output_type": "pyout",
"prompt_number": 17,
"text": [
""
]
}
],
"prompt_number": 17
},
{
"cell_type": "heading",
"level": 2,
"metadata": {},
"source": [
"Adjoint"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"Dagger(sx), Dagger(sy), Dagger(sz)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"latex": [
"$$\\begin{pmatrix}{\\sigma_x}, & {\\sigma_y}, & {\\sigma_z}\\end{pmatrix}$$"
],
"metadata": {},
"output_type": "pyout",
"png": "iVBORw0KGgoAAAANSUhEUgAAAIQAAAAaBAMAAACEBumnAAAAMFBMVEX///8AAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAv3aB7AAAAD3RSTlMAMkS7zRCZdiKJ71Rm\nq90icBAQAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAB0klEQVQ4EaVUPUjDQBh9V3+S1BqL4OKgHRUR\nAzoIOnRxUygiIopYRRF0KYKKgih1cWq7SHHroJOD3S3SVUEUFERc/EFnK1QKCvG7pMOFXFsh33CX\ne997X959uQuAVniIGNcyw0MF9HJxfcRLCS1P6mUvFYB3QC16K7EBaFFvJZKAP+uthJ5Hp6duAo0G\nrshEw4ppfsvMTJ6ZZlSSEARKBovE6Fi4GNyTMNlHz9uBBBcFviL6ycQpAp8y5nQWNzJcFLACxmg7\nYVAtSZDDPlmrRIH6hQ+gJQ9F6uIX2JVUdgjUH+4iGUT9rYSqFsDT7hAF5II4cxG0k9/0/E7QQW8o\ngp0A3bf8FItRFiRG4nRLS7gD6rLqK6BE7vUQ5sICdwiJEJAqsowTtwVYvYyBd3GbvsjyFplgGCW1\nLvZ1cvOQLtH4s2I4cVsAzJAgkBFbXuIGuvjgiOZUM73NjUMNEY9Op5/PVrBPRnPeXgijHvJTj9w4\n4mij300MjakyO6k9a7QpN1UP9klx9TFnWN+CWmXH7Fp6nbZWXgmT72FAiivsOAJcE/NJYEsfpzAs\nxW3whaaJKnkr9egLV6YEeB+aopUJViZ3VIWwb+XOqzBqppZqMv5D+APLvWyMOVWCFQAAAABJRU5E\nrkJggg==\n",
"prompt_number": 18,
"text": [
"(False, False, False)"
]
}
],
"prompt_number": 18
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"Dagger(sm), Dagger(sp)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"latex": [
"$$\\begin{pmatrix}{\\sigma_+}, & {\\sigma_-}\\end{pmatrix}$$"
],
"metadata": {},
"output_type": "pyout",
"png": "iVBORw0KGgoAAAANSUhEUgAAAFwAAAAaBAMAAADIwCYaAAAAMFBMVEX///8AAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAv3aB7AAAAD3RSTlMAMkS7zRCZdiKJ71Rm\nq90icBAQAAAACXBIWXMAAA7EAAAOxAGVKw4bAAABTklEQVQ4EY2RsUvDQBTGv4ttmtbg4D9gdxEL\nHV0zCUIH6SCCGSyunRRcFFyc1MU9i7MFR5fMgjjo5iTSrtJiQFCo7915vTQ55G4I3/t9v740CYBl\nOJ4+e6LlaGONxUrHVa+nZB642sAQCDJ3/RCox+76JdAYuOtLKVacnxTwW3jg5d3b6TS23mWuqSXY\nJ0uMVt/PrfZ842Vok7YzwJPVLjRijC3y6A7r/Ahe6Te6UUUwwYjSD3DCYEHR3FU3CgXfvD0YQ96k\nrM+aP33CXjWDuGFQ2j5rlC6+8ExpAxdNBqxXPznpoxs105s5ptQ9upaz3P6R/266UXqYqFcip5do\nM4pSeKeqy13v2nRoC33VRtNwuT00czFV+vCvDJT6rpmLaa8DkRgo9dTMxfRI4NVAqZuxlN6IbBvq\nm2hLIf/vxdhW2diZhPe2ysZ6Nvgv+wX+5EROK2TqhAAAAABJRU5ErkJggg==\n",
"prompt_number": 19,
"text": [
"(False, False)"
]
}
],
"prompt_number": 19
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"sm, sp"
],
"language": "python",
"metadata": {},
"outputs": [
{
"latex": [
"$$\\begin{pmatrix}{\\sigma_-}, & {\\sigma_+}\\end{pmatrix}$$"
],
"metadata": {},
"output_type": "pyout",
"png": "iVBORw0KGgoAAAANSUhEUgAAAFwAAAAaBAMAAADIwCYaAAAAMFBMVEX///8AAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAv3aB7AAAAD3RSTlMAMkS7zRCZdiKJ71Rm\nq90icBAQAAAACXBIWXMAAA7EAAAOxAGVKw4bAAABQ0lEQVQ4EY3SsUvDQBQG8O9qG9MaOvgP2FEQ\nsdDRxSGTIHSQDi7NoLh2UnBxcHFSF/cszhYcXTIL4qCbk0i7txAQFOp7d03SXm54N7173y/vkmsB\nrEO4BuxUW6ixzbDalfJ6QvJUqoER4KdyfgbUIzm/BRpDOW8m2BB/KeC18cLDe4+zWeQ8ZSlZjXFM\nSo23vq+dejmppOgQOxrizamtRE1wQI5O2HF/QpZU9DR/ijEVf8Cle3qWrBj+y9P9CfQh5SfyZM6n\n7Gop1EPZUidPDFc/eKfuLm5aOe/v5WWRGE43c0Fh7/y+IM3FP1GWGB7EC1fy1KFFF7RZPDqvPsL9\nMEz0r9po2Sn1S8tMrw7g3VlZLbEavDW834WKrTSw9npr+CvVn67Y7hn+Re1DO3LtPW4G/N5rEZeS\ndaXRs4SyOZHC3P0D/N5Dx1OeUEEAAAAASUVORK5CYII=\n",
"prompt_number": 20,
"text": [
"(False, False)"
]
}
],
"prompt_number": 20
},
{
"cell_type": "heading",
"level": 1,
"metadata": {},
"source": [
"Operator products"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"s = [sx, sy, sz, sm, sp]\n",
"\n",
"data = [[s2] + [(qsimplify_pauli(s1 * s2), represent((qsimplify_pauli(s1 * s2) * I_op).expand()) == represent(s1) * represent(s2))\n",
" for s1 in s] for s2 in s]\n",
"\n",
"print_table(data)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"html": [
"\n",
"${\\sigma_x}$ | $\\begin{pmatrix}1, & \\mathrm{True}\\end{pmatrix}$ | $\\begin{pmatrix}- i {\\sigma_z}, & \\mathrm{True}\\end{pmatrix}$ | $\\begin{pmatrix}i {\\sigma_y}, & \\mathrm{True}\\end{pmatrix}$ | $\\begin{pmatrix}\\frac{1}{2} \\left(1 - {\\sigma_z}\\right), & \\mathrm{True}\\end{pmatrix}$ | $\\begin{pmatrix}\\frac{1}{2} \\left(1 + {\\sigma_z}\\right), & \\mathrm{True}\\end{pmatrix}$ |
${\\sigma_y}$ | $\\begin{pmatrix}i {\\sigma_z}, & \\mathrm{True}\\end{pmatrix}$ | $\\begin{pmatrix}1, & \\mathrm{True}\\end{pmatrix}$ | $\\begin{pmatrix}- i {\\sigma_x}, & \\mathrm{True}\\end{pmatrix}$ | $\\begin{pmatrix}- \\frac{i}{2} \\left(1 - {\\sigma_z}\\right), & \\mathrm{True}\\end{pmatrix}$ | $\\begin{pmatrix}\\frac{i}{2} \\left(1 + {\\sigma_z}\\right), & \\mathrm{True}\\end{pmatrix}$ |
${\\sigma_z}$ | $\\begin{pmatrix}- i {\\sigma_y}, & \\mathrm{True}\\end{pmatrix}$ | $\\begin{pmatrix}i {\\sigma_x}, & \\mathrm{True}\\end{pmatrix}$ | $\\begin{pmatrix}1, & \\mathrm{True}\\end{pmatrix}$ | $\\begin{pmatrix}{\\sigma_-}, & \\mathrm{True}\\end{pmatrix}$ | $\\begin{pmatrix}- {\\sigma_+}, & \\mathrm{True}\\end{pmatrix}$ |
${\\sigma_-}$ | $\\begin{pmatrix}\\frac{1}{2} + \\frac{{\\sigma_z}}{2}, & \\mathrm{True}\\end{pmatrix}$ | $\\begin{pmatrix}- \\frac{i}{2} \\left(1 + {\\sigma_z}\\right), & \\mathrm{True}\\end{pmatrix}$ | $\\begin{pmatrix}- {\\sigma_-}, & \\mathrm{True}\\end{pmatrix}$ | $\\begin{pmatrix}0, & \\mathrm{False}\\end{pmatrix}$ | $\\begin{pmatrix}\\frac{1}{2} \\left(1 + {\\sigma_z}\\right), & \\mathrm{True}\\end{pmatrix}$ |
${\\sigma_+}$ | $\\begin{pmatrix}\\frac{1}{2} - \\frac{{\\sigma_z}}{2}, & \\mathrm{True}\\end{pmatrix}$ | $\\begin{pmatrix}\\frac{i}{2} \\left(1 - {\\sigma_z}\\right), & \\mathrm{True}\\end{pmatrix}$ | $\\begin{pmatrix}{\\sigma_+}, & \\mathrm{True}\\end{pmatrix}$ | $\\begin{pmatrix}\\frac{1}{2} - \\frac{{\\sigma_z}}{2}, & \\mathrm{True}\\end{pmatrix}$ | $\\begin{pmatrix}0, & \\mathrm{False}\\end{pmatrix}$ |
\n",
"
"
],
"metadata": {},
"output_type": "pyout",
"prompt_number": 26,
"text": [
""
]
}
],
"prompt_number": 26
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"represent(sm) * represent(sm)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"latex": [
"$$\\left[\\begin{matrix}0 & 0\\\\0 & 0\\end{matrix}\\right]$$"
],
"metadata": {},
"output_type": "pyout",
"png": "iVBORw0KGgoAAAANSUhEUgAAADUAAAAyBAMAAAAOzY77AAAAMFBMVEX///8AAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAv3aB7AAAAD3RSTlMA74lUMhCZds3dIma7\nq0Ru0ZIZAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAA7klEQVQ4EWOQ//+JAQtg+v9fgEHYxRWLFAOr\ni7MAgwg2GZAYC0QuTD0FWQVrUpkDXK6ZIXIBkiSHAessmBy3AANTA5LcRgYGDZgczwUG5q9IcmcZ\nGOwDoPbxX2Dg+4wk95eB4b0BVC4+gYHvO0KO9RtQrgAqt16BgQUpALiAbH+gENgP+OTiFVDNBOqD\nm8mfwMCM7BagffYwt3AeYOBG9sMcBob9MD+wCzCwNSDcyVDIwJAB8zvDZIZAByQ5TgNWYAxAwzqo\n/AqSFAOrei1QKVQOWQLOHpWDBwUKAxouo2kXHiqjaZdAXsFXRuIpWwFSMF/XzV5A5gAAAABJRU5E\nrkJggg==\n",
"prompt_number": 27,
"text": [
"\u23a10 0\u23a4\n",
"\u23a2 \u23a5\n",
"\u23a30 0\u23a6"
]
}
],
"prompt_number": 27
},
{
"cell_type": "heading",
"level": 2,
"metadata": {},
"source": [
"Powers"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"[sx ** n for n in range(10)]"
],
"language": "python",
"metadata": {},
"outputs": [
{
"latex": [
"$$\\begin{bmatrix}1, & {\\sigma_x}, & 1, & {\\sigma_x}, & 1, & {\\sigma_x}, & 1, & {\\sigma_x}, & 1, & {\\sigma_x}\\end{bmatrix}$$"
],
"metadata": {},
"output_type": "pyout",
"png": "iVBORw0KGgoAAAANSUhEUgAAAZwAAAAZBAMAAAD3ZYXVAAAAMFBMVEX///8AAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAv3aB7AAAAD3RSTlMAu90izRCZq3bvZkQy\nVImBjBi7AAAACXBIWXMAAA7EAAAOxAGVKw4bAAACEklEQVRYCeWYsS8DURzHv7RH017ahMQm6MAg\noRiMuojEVEuFpQYJwmAwIBJTkUiYjOL+A03MaExMGn+BSCTGBjWI5LzeE967956+Rs7JecO197vP\nvff93Hv3mhQtyRQC0mLJPnQGxMXRGA6kzqj2FIUzfxmlszNQ0c0Y6tDW8QN1dCbmdHWMtk1dHV9Q\nOjsRXR1gX1fHF/Sf6BgLtv0ie6HE2cke2faMjygbVTU7F4s3rSmtjGb3adeQjBTXpTcoG1WhYxwi\nWtbLOFXCsZQUdTxBuagKnaY0YvLtQVhss8C5fHv4HZSLqtBJWIhozs4r2cI0Z8cTlIuq0BkpIrws\nDel+5KE3YExKCovNG5SLqtDJZXBFVtDD0nbRFdWtY1RgHgDxrcsNFynoeINyUb90cmkmTkMp1AtE\nMiuNBeOZqTu/jXylHYMFIN+c7gV/oarDVxiUG+37XmugTFTA0Wlae1xHI/vqG/N7ZHJMjBOVfvLt\ns80d9Vh8JbtzT64WwxY56qPcaPi21xooG5Xq0LAn9IM7PpGzWIorSStAokrVgYqjiTd/9KqHVqOy\nOlb1nG9m2QSifI2ciRXgGkXZBSVq6feqhTpRGR1DvGsk3hkHpoWBxUqofIfbelDJaKpetVAaldGR\nPMfJ3Yc8YMHdxIqxerZDXjHxglihqGS0H6E0KqODIDS6UQfBxHEInE4ySP+z9bwDEx7jaiYhHSkA\nAAAASUVORK5CYII=\n",
"prompt_number": 28,
"text": [
"[1, False, 1, False, 1, False, 1, False, 1, False]"
]
}
],
"prompt_number": 28
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"[sy ** n for n in range(10)]"
],
"language": "python",
"metadata": {},
"outputs": [
{
"latex": [
"$$\\begin{bmatrix}1, & {\\sigma_y}, & 1, & {\\sigma_y}, & 1, & {\\sigma_y}, & 1, & {\\sigma_y}, & 1, & {\\sigma_y}\\end{bmatrix}$$"
],
"metadata": {},
"output_type": "pyout",
"png": "iVBORw0KGgoAAAANSUhEUgAAAZoAAAAZBAMAAAD6e/WSAAAAMFBMVEX///8AAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAv3aB7AAAAD3RSTlMAu90izRCZq3bvZkQy\nVImBjBi7AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAChUlEQVRYCeWYsWsTYRjGf016TexFKyoOglgD\n2qGiUZGOZhHXiFBQhzoIVVw6VofWbk7q4qb0/gItKjhpg1u34uiURdykiHEQITbfDbnv3vc9vwxd\n4g0H99yT3/s+3/vdHYRD9QajccT1s0yPRhSXYm4U01wJHtB4K9gaDiXcWlg/nc35bmiL5RPBacKh\nhFuL67s01xZD00RHV0PThEMJt/6jfjqbamgaeBqahiGgQ1gL6/8faaJ7vd4v7WGSazO/3uvdVqxy\nwU2otFpQZW9krNZsPt3/fLihtChptdMfTl7UnLJFEyqsJrS4vpEmesnkjtaipN3Y5rXqFC3aUGE1\nocX1jTQTTWL9zSB22h3YVN8MokUbKqwmVKbJWo00UwnVwNn83n3Phc3Ghoo0JlSmyVqNNJfbjC+p\nPeZnU/4DV1WnaNGG5q02VKTxrEaahRZbLeJvlPKbKJ8m6lJ7Dh+XOJXLlG8RG5q32lCRxrMO0iw0\nM92MbZdn4cBUa4voZ0Z3X09fOc6FDeh0a8/wEO7r6Sk2tJ/Gs5rQfhqzPi7NxIMfDylln/ro7pPd\noVx6wxqcy45ncX0m8ZX5x1+hfGu6etBHDAGVVgtKYf00Tbr4b70ZuIsVliFu5G9IhUqn8ggkQioY\nUOXHFtSsn+40127izt5plhcw6Un9C6lQ2tjXhqR/1zsS78pdGFDlxxbUrD9IEymFz8Q7cFM0JBVK\n7U2QCKmAAVWsBlTpKK2f2WlKYN6vNQMXPF4+os1sCKhiNaDKFHHWTBrkETXGEqmqynWOqboU9wRK\nWn+w02RdKp13iqpKK3FT1aW4J1DS+oVp9r/qyG505ct3XZfqnkBJ689RH6H/02b+AuPT9Ww+CDPm\nAAAAAElFTkSuQmCC\n",
"prompt_number": 29,
"text": [
"[1, False, 1, False, 1, False, 1, False, 1, False]"
]
}
],
"prompt_number": 29
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"[sz ** n for n in range(10)]"
],
"language": "python",
"metadata": {},
"outputs": [
{
"latex": [
"$$\\begin{bmatrix}1, & {\\sigma_z}, & 1, & {\\sigma_z}, & 1, & {\\sigma_z}, & 1, & {\\sigma_z}, & 1, & {\\sigma_z}\\end{bmatrix}$$"
],
"metadata": {},
"output_type": "pyout",
"png": "iVBORw0KGgoAAAANSUhEUgAAAZgAAAAZBAMAAAD+jiWvAAAAMFBMVEX///8AAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAv3aB7AAAAD3RSTlMAu90izRCZq3bvZkQy\nVImBjBi7AAAACXBIWXMAAA7EAAAOxAGVKw4bAAACQklEQVRYCeWYwSsEURzHv4zZNrtFlJuwiYNi\ncXBw4LK5rpSixEEhKVcOODpx4SjrH0A5i5SD2+borlyUhIPUevtmynvv95v1a27GXmb2u9/5fX+f\n93szU4uWXB6J+GRy/ehMBImGGEkgTEE8noai2CovKnfWjA8mM/gu7dDrEMPIi8qdteM1zOSSFMZv\n25bCyIvKnb/EB5NJS2GAfSkM5EXlztrx/wLGX6lUPrgbiU5m+rhSWWCsdL3lznjxUZO5Wb1vzTMd\n0jlney67hjkngZE7ES8+AsY/QuML1yGFmSnjjHUSGLkzZnwETGocGf6hQLbZInDFPhQIjNwZMz4C\npqmEtHAyn+oJJ5uM3BkzPgJm7BoN62yL7mS8L2CCdbqTkTsRMz4CZr6IO7V3hgqjbp8ujP+O7CHg\ndU+dO1YXRu5EzPgfmPlxo5m6stenvq6d7sDS9UvTfzOcaMeQwkg9PMHW9UvTuvjH6RStYltOI94p\nqtbSVoyi0DCpjddN1Js3vL+8pwYDzMHWsXTcW8KA/i0kmt59rJ75Zdg6LWo4rTDqNOLtojXjA5ig\nrYuwO+PgqTUH1TN5wxOeVvcjo9OLoXcu1akCHU+LUgVB0WCb6YZKYVvGYRS3ANUbDUt46p1ni2B0\nerF2MkWpU3Wo4mlRqihsFW9MxqfVvK2HZjD6LMhn5PkEoDpzsXZSnSrQ8UxRGgNd1IBheNPZA+Fy\nY+euIJyhdtIwqkDHy2aoixowZLH/nmDcM3+vebfjhMHkkvO/We83Q6neeXwPLRwAAAAASUVORK5C\nYII=\n",
"prompt_number": 30,
"text": [
"[1, False, 1, False, 1, False, 1, False, 1, False]"
]
}
],
"prompt_number": 30
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"[sm ** n for n in range(10)]"
],
"language": "python",
"metadata": {},
"outputs": [
{
"latex": [
"$$\\begin{bmatrix}1, & {\\sigma_-}, & 0, & 0, & 0, & 0, & 0, & 0, & 0, & 0\\end{bmatrix}$$"
],
"metadata": {},
"output_type": "pyout",
"png": "iVBORw0KGgoAAAANSUhEUgAAAXAAAAAZBAMAAADau2gqAAAAMFBMVEX///8AAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAv3aB7AAAAD3RSTlMAu90izRCZq3bvZkQy\nVImBjBi7AAAACXBIWXMAAA7EAAAOxAGVKw4bAAAB+klEQVRYCdWYO08CQRSFD48hhBXxEWOrWFgY\nFStLaCxN0MJEC6EwUaMxtBoLKx+N8QdoQmtl4Q+A2FlJ/ANQWFAa46tR3OyD3Tu710AyW+wUzMw9\nZw9fLjNbgJFsDqEbWnYOE6GjNoAXQw6+1Hvb19r7klkcnNalkjITm212fOFD+uJ/tstYlS5FvCGm\npAeUmdhsA3xlu3fw1BUGCxTzFnihFXUmNtvseLJ38EgFack9DjSLhFydic3uGzxTgfZDKPEF1Bqk\npM7EZnPgYrfT+SQw1qZUhvZNBKH7aiekpMzEZ3PgD3vPo9IdNNHyLQz8EsqYvn1qkZIyE5/NgIsb\npF4Ji71RxoRekvoGTxSgSVfQIi+1PEdF77h8VFSZBJvNdDxTRdK/45ky0tLl1M94U7qcykxsNgOe\nryNesU8HmaNDSEm/xSRwVwzIxGYz4KUiHimLDZa8gn6OyLgAtkgB6kxstgNecuNEGrGZLgtRMIv1\nunjvivoi2hDXCMjEZAMGeOLw7QhR9wEQO5dOw4mCzfNjYN5RAdE+q9PH1Zm4bBPcbN+9u4vGOj2s\njzHAq2g5jzlIkzfbDV71sNgFr5KyJWcO0uTNdoELHxXG8FE2TMX1GaTJJ9sF7tNEi8tHqVqSMwVp\n8sl2gTsMoViZr8NQoFLIEINnw/m/yvQfJg0CKp1B4W0AAAAASUVORK5CYII=\n",
"prompt_number": 31,
"text": [
"[1, False, 0, 0, 0, 0, 0, 0, 0, 0]"
]
}
],
"prompt_number": 31
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"[sp ** n for n in range(10)]"
],
"language": "python",
"metadata": {},
"outputs": [
{
"latex": [
"$$\\begin{bmatrix}1, & {\\sigma_+}, & 0, & 0, & 0, & 0, & 0, & 0, & 0, & 0\\end{bmatrix}$$"
],
"metadata": {},
"output_type": "pyout",
"png": "iVBORw0KGgoAAAANSUhEUgAAAXAAAAAZBAMAAADau2gqAAAAMFBMVEX///8AAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAv3aB7AAAAD3RSTlMAu90izRCZq3bvZkQy\nVImBjBi7AAAACXBIWXMAAA7EAAAOxAGVKw4bAAACT0lEQVRYCdWYP29TMRTFT9O6RHmUVHToCmHo\ngIAydWyHdEFCShmQ6NBkQIIKhLJSdWDiz4I6dATprUxU4gM0YuvEE1+gGRg6IkQpCxQ/21F87bpc\n7lLiwfG995zrnxw7Q3CxMY+RG1njOi6NHLUBXhhx8GX+sd89eByI1ZPnvSDFEQltsL3tid88DDY+\nJbyNO8GjmCjUlcDAEQltsL0N+MoDPnhtCxeWKOY74AvNsERCm+ttT7zKBx/rYipQzwL7LULOEglt\nrvc/g9e7yH4RShwBuwVJsURCm+udAlfrx8c/CIwL2h1kP0lBad3uM5LiiIQ2uN4p8I+PPs8Eb9Ci\nLfZx/jehHNfhpz5JcURCG1zvBLh6i9pXwjIIOEyD5gOP/owx4wzLNhAlwCeXkJknuONtbpbtfnRV\n9ImHV4UhUjIbHEACvJ6jak58OgSvdzAVPE59x/cLomOJhDbXOwG+2MNEt2SJwCvTqAU/h5eB9y0C\nzhIJba53Arzdwp5hicCrW9D3iIxXwH2SAEsktLneQ/C2jzNWjF81LCU4qeAa7vXUdx+0Uqg3ApHQ\nZgAAAz759NsGKv4FUA9f2y+/BCcVrL3cBG7YqsVXBy96ApHQZgEsuN3/g3+KZn2u2dxu3gLiSjYf\niYUioc0HzyMWnShPHHk5kVEjkQnyKMUSCW0euIpbaJQSXOV6omOVhjpSuZ7o4IhUTj064tjcHTfe\nE85H50vwEyq5sfiTUCS0+eA+xXBtrsow/H9W9ucwzdNJl8628jfws6U7ZfcFNEbzf5W5PxYYBRXG\nIpAHAAAAAElFTkSuQmCC\n",
"prompt_number": 32,
"text": [
"[1, False, 0, 0, 0, 0, 0, 0, 0, 0]"
]
}
],
"prompt_number": 32
},
{
"cell_type": "heading",
"level": 1,
"metadata": {},
"source": [
"States"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"up = SigmaZKet(0)\n",
"down = SigmaZKet(1)\n",
"\n",
"ket = (up + down)/sqrt(2)"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 33
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"ket, qapply(sx * ket), qapply(sy * ket), qapply(sz * ket)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"latex": [
"$$\\begin{pmatrix}\\frac{\\sqrt{2}}{2} \\left({\\left|0\\right\\rangle } + {\\left|1\\right\\rangle }\\right), & \\frac{\\sqrt{2}}{2} {\\left|0\\right\\rangle } + \\frac{\\sqrt{2}}{2} {\\left|1\\right\\rangle }, & - \\frac{\\sqrt{2} i}{2} {\\left|0\\right\\rangle } + \\frac{\\sqrt{2} i}{2} {\\left|1\\right\\rangle }, & \\frac{\\sqrt{2}}{2} {\\left|0\\right\\rangle } - \\frac{\\sqrt{2}}{2} {\\left|1\\right\\rangle }\\end{pmatrix}$$"
],
"metadata": {},
"output_type": "pyout",
"png": "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\ngg==\n",
"prompt_number": 34,
"text": [
"\u239b ___ ___ ___ ___ ___ ___ \n",
"\u239c\u2572\u2571 2 \u22c5(\u27580\u27e9 + \u27581\u27e9) \u2572\u2571 2 \u22c5\u27580\u27e9 \u2572\u2571 2 \u22c5\u27581\u27e9 \u2572\u2571 2 \u22c5\u2148\u22c5\u27580\u27e9 \u2572\u2571 2 \u22c5\u2148\u22c5\u27581\u27e9 \u2572\u2571 2 \u22c5\n",
"\u239c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500, \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 + \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500, - \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 + \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500, \u2500\u2500\u2500\u2500\u2500\u2500\n",
"\u239d 2 2 2 2 2 2 \n",
"\n",
" ___ \u239e\n",
"\u27580\u27e9 \u2572\u2571 2 \u22c5\u27581\u27e9\u239f\n",
"\u2500\u2500\u2500 - \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u239f\n",
" 2 \u23a0"
]
}
],
"prompt_number": 34
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"ket, qapply(sm * ket), qapply(sp * ket)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"latex": [
"$$\\begin{pmatrix}\\frac{\\sqrt{2}}{2} \\left({\\left|0\\right\\rangle } + {\\left|1\\right\\rangle }\\right), & \\frac{\\sqrt{2}}{2} {\\left|1\\right\\rangle }, & \\frac{\\sqrt{2}}{2} {\\left|0\\right\\rangle }\\end{pmatrix}$$"
],
"metadata": {},
"output_type": "pyout",
"png": "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\n/mlm8R/hk6DIVnrVkgAAAABJRU5ErkJggg==\n",
"prompt_number": 35,
"text": [
"\u239b ___ ___ ___ \u239e\n",
"\u239c\u2572\u2571 2 \u22c5(\u27580\u27e9 + \u27581\u27e9) \u2572\u2571 2 \u22c5\u27581\u27e9 \u2572\u2571 2 \u22c5\u27580\u27e9\u239f\n",
"\u239c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500, \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500, \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u239f\n",
"\u239d 2 2 2 \u23a0"
]
}
],
"prompt_number": 35
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"represent(qapply(sx * ket)) == represent(sx) * represent(ket)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 36,
"text": [
"True"
]
}
],
"prompt_number": 36
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"represent(qapply(sy * ket)) == represent(sy) * represent(ket)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 37,
"text": [
"True"
]
}
],
"prompt_number": 37
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"represent(qapply(sz * ket)) == represent(sz) * represent(ket)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 38,
"text": [
"True"
]
}
],
"prompt_number": 38
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"represent(qapply(sm * ket)) == represent(sm) * represent(ket)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 39,
"text": [
"True"
]
}
],
"prompt_number": 39
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"represent(qapply(sp * ket)) == represent(sp) * represent(ket)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 40,
"text": [
"True"
]
}
],
"prompt_number": 40
},
{
"cell_type": "heading",
"level": 1,
"metadata": {},
"source": [
"Applications"
]
},
{
"cell_type": "heading",
"level": 2,
"metadata": {},
"source": [
"Baker\u2013Campbell\u2013Hausdorff formula"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"from sympy_quantum_extra import *"
],
"language": "python",
"metadata": {},
"outputs": [
{
"ename": "ImportError",
"evalue": "No module named 'sympy.physics.quantum.expectation'",
"output_type": "pyerr",
"traceback": [
"\u001b[0;31m---------------------------------------------------------------------------\u001b[0m\n\u001b[0;31mImportError\u001b[0m Traceback (most recent call last)",
"\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0;32mfrom\u001b[0m \u001b[0msympy_quantum_extra\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0;34m*\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
"\u001b[0;32m/Users/rob/Dropbox/projects/sympy-quantum-notebooks/sympy_quantum_extra.py\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[1;32m 8\u001b[0m \u001b[0;32mfrom\u001b[0m \u001b[0msympy\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mphysics\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mquantum\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mfermion\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0;34m*\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 9\u001b[0m \u001b[0;32mfrom\u001b[0m \u001b[0msympy\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mphysics\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mquantum\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0moperatorordering\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0;34m*\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 10\u001b[0;31m \u001b[0;32mfrom\u001b[0m \u001b[0msympy\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mphysics\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mquantum\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mexpectation\u001b[0m \u001b[0;32mimport\u001b[0m \u001b[0mExpectation\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 11\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 12\u001b[0m from sympy.physics.quantum.pauli import (SigmaX, SigmaY, SigmaZ, SigmaMinus,\n",
"\u001b[0;31mImportError\u001b[0m: No module named 'sympy.physics.quantum.expectation'"
]
}
],
"prompt_number": 41
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"rc = recursive_commutator(sy, sz, 5).doit().expand()\n",
"\n",
"rc"
],
"language": "python",
"metadata": {},
"outputs": [
{
"ename": "NameError",
"evalue": "name 'recursive_commutator' is not defined",
"output_type": "pyerr",
"traceback": [
"\u001b[0;31m---------------------------------------------------------------------------\u001b[0m\n\u001b[0;31mNameError\u001b[0m Traceback (most recent call last)",
"\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mrc\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mrecursive_commutator\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0msy\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0msz\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;36m5\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdoit\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mexpand\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 2\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 3\u001b[0m \u001b[0mrc\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n",
"\u001b[0;31mNameError\u001b[0m: name 'recursive_commutator' is not defined"
]
}
],
"prompt_number": 42
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"A, B = Operator(\"A\"), Operator(\"B\")\n",
"\n",
"Commutator(A, B).doit().doit()\n",
"# Add.doit() - > Mul.doit() -> ..."
],
"language": "python",
"metadata": {},
"outputs": [
{
"latex": [
"$$A B - B A$$"
],
"metadata": {},
"output_type": "pyout",
"png": "iVBORw0KGgoAAAANSUhEUgAAAFkAAAAOBAMAAAC2rq3TAAAAMFBMVEX///8AAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAv3aB7AAAAD3RSTlMAMs1m3RAiVJl2RKu7\n74l6DlUiAAAACXBIWXMAAA7EAAAOxAGVKw4bAAABUklEQVQoFV2Sv0rDUBTGv7RWTVupiHt0cJR2\nd3BRHBwM4iQWujnqG5g3aNeCkLyAWAQHiZAMiiCKGdx08BEUxX8R63fuTdLEMxy+79zfvfecmwAS\nM5KWhr5/44kaRTmI/fNr7RUksqn8DzD5oley3AiB7rSyGgLKGza98QVUPzNOC6sHHDuiNUSx2+0w\nm+8scUch3A6wzB0pRNFzPeZ6BLRXKfJxC1Tu5eYE4vX2QYu2MYCxrhZyeAzMnopPIGAb0h2ss/7F\nfg4UacT9wzVVSyDAw57DClusPKiVUZJZ2gPxCQTD94OQni3ClcM3VyTmqdQs5gdFCqEKTM2xwBbh\nPjHlgrPA/GUhhcDjxiLufmUx8HIopdUCat8UCYRxitKzfm6Dn7MQ8txWiAzCFpfrHKYUAUeXBRZY\nZA+PNjJoZ7iAibs3p9bk/3P1Dz6RH413p9Af6+RkvbEYuuwAAAAASUVORK5CYII=\n",
"prompt_number": 31,
"text": [
"A\u22c5B - B\u22c5A"
]
}
],
"prompt_number": 31
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"Commutator(sx, sy).doit()\n",
"# sx * sy - sy * sx"
],
"language": "python",
"metadata": {},
"outputs": [
{
"latex": [
"$$2 i {\\sigma_z}$$"
],
"metadata": {},
"output_type": "pyout",
"png": "iVBORw0KGgoAAAANSUhEUgAAACQAAAARBAMAAABHmRO1AAAAMFBMVEX///8AAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAv3aB7AAAAD3RSTlMAIpm7MhCriUTv3c12\nVGZoascqAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAA0ElEQVQYGWNgVDJ2YGBgM2BAgDAG9h9AoQcI\nEYZUBoaZSFwQcxYDQ74Dqtj+AAwhoIL1AeE6DAysmv//f4Iq5/jOUNDJwOClcctQACrEZcB4QZuB\ndS4D3weYmcoMrAx/GJg2MHB8hQrxJDAw8H5l4H/AwANTdYmBUYA7IUDegYEbKCm1VYKBRYGBRyD+\nQkF8AINnAAOD7vMDDFLlRVkM/YwPmC8wrgAZFcvAsP///18MzGcYWHWOAxUxMDaAxFGABIMrCh+o\nKP2eAZoQD8vsAAAiMC5RztPAgAAAAABJRU5ErkJggg==\n",
"prompt_number": 32,
"text": [
"2\u22c5\u2148\u22c5False"
]
}
],
"prompt_number": 32
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"A = Matrix([[1, 2], [3, 4]])\n",
"B = Matrix([[1, 2], [3, 4]])\n",
"A * B, MatMul(A, B)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"latex": [
"$$\\left ( \\left[\\begin{matrix}7 & 10\\\\15 & 22\\end{matrix}\\right], \\quad \\left[\\begin{matrix}1 & 2\\\\3 & 4\\end{matrix}\\right] \\left[\\begin{matrix}1 & 2\\\\3 & 4\\end{matrix}\\right]\\right )$$"
],
"metadata": {},
"output_type": "pyout",
"png": "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\n57VMTZkAAAAASUVORK5CYII=\n",
"prompt_number": 33,
"text": [
"\u239b\u23a17 10\u23a4, \u23a11 2\u23a4\u22c5\u23a11 2\u23a4\u239e\n",
"\u239c\u23a2 \u23a5 \u23a2 \u23a5 \u23a2 \u23a5\u239f\n",
"\u239d\u23a315 22\u23a6 \u23a33 4\u23a6 \u23a33 4\u23a6\u23a0"
]
}
],
"prompt_number": 33
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"1 * 3"
],
"language": "python",
"metadata": {},
"outputs": [
{
"latex": [
"$$3$$"
],
"metadata": {},
"output_type": "pyout",
"png": "iVBORw0KGgoAAAANSUhEUgAAAAoAAAAOBAMAAADkjZCYAAAALVBMVEX///8AAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADAOrOgAAAADnRSTlMAIom7VJlmdt1E7xDNMpCR\nWcAAAAAJcEhZcwAADsQAAA7EAZUrDhsAAABSSURBVAgdY2AQUjJhYGAMYPBLYGB/wsDXwMC5kmHf\nAQYgAIoAwVEg5tUIADEZtC6ASK7VDIwCDMxAxa8ZmJ8xcBkwcDxkYEtg8CtgYJgaaskAAFKHDvy4\nQzOnAAAAAElFTkSuQmCC\n",
"prompt_number": 34,
"text": [
"3"
]
}
],
"prompt_number": 34
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"IdentityOperator(2).is_commutative"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 35,
"text": [
"False"
]
}
],
"prompt_number": 35
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"qsimplify(qsimplify(rc))"
],
"language": "python",
"metadata": {},
"outputs": [
{
"latex": [
"$$32 i {\\sigma_x}$$"
],
"metadata": {},
"output_type": "pyout",
"png": "iVBORw0KGgoAAAANSUhEUgAAADAAAAARBAMAAABp3DInAAAAMFBMVEX///8AAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAv3aB7AAAAD3RSTlMAIom7VJlmdt1E7xDN\nMqsI8sYEAAAACXBIWXMAAA7EAAAOxAGVKw4bAAABGklEQVQYGW2PP0vDUBTFf0mtNv9bUXEsBaHo\nYIeCOAh+gwTETSTfwDhIB0GDxcGtiM7tKh3M0sXFLq6lizgqCDoJFUKXIPHFSBDbA+9w7jn33vce\nzFfqsLizBbyKk0FysF3thfUWvGWuEHMhlm8GqJ2/rtDKDfd91cf8+heI0nb1aGrwkPQWIm3Fg95t\nHDvprFH9Ee2yrHQwzq+apdQXvDoU1GQh3+dum4PMR+1CvkZgeexBO0gTqUguhBNR2QFjOP2dsCJy\nY2YcSgw0Sbx5APLR0wdqjcInj3CohbIWYYi9x2b/glkX25POKvu+MlqiznILhror9l3vbqLHceyz\n4dFrrCVXWMWEp+CZ5AcTkEZVyhOuMLT3y0bwDT8CRLfEzZNBAAAAAElFTkSuQmCC\n",
"prompt_number": 36,
"text": [
"32\u22c5\u2148\u22c5False"
]
}
],
"prompt_number": 36
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"represent(sx * sx)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"latex": [
"$$1$$"
],
"metadata": {},
"output_type": "pyout",
"png": "iVBORw0KGgoAAAANSUhEUgAAAAgAAAAPBAMAAAArJJMAAAAAJFBMVEX///8AAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAAADHJj5lAAAAC3RSTlMAzRAiu5mrdu/dZmiL4QAAAAAJcEhZcwAA\nDsQAAA7EAZUrDhsAAAAjSURBVAgdY2BgEGJgYDDZxMCgEgYkGNhJJVgzdmYB9TEwAACPpQrvlUCH\ncAAAAABJRU5ErkJggg==\n",
"prompt_number": 37,
"text": [
"1"
]
}
],
"prompt_number": 37
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"represent(sx) ** 2 == Integer(1) * represent(IdentityOperator(2))"
],
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 38,
"text": [
"True"
]
}
],
"prompt_number": 38
},
{
"cell_type": "code",
"collapsed": false,
"input": [],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 38
},
{
"cell_type": "heading",
"level": 2,
"metadata": {},
"source": [
"Test: $e^{i\\theta/2 \\sigma_y}\\sigma_xe^{-i\\theta/2 \\sigma_y} = \\cos(\\theta)\\sigma_x + \\sin(\\theta)\\sigma_z$"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"theta = symbols(\"theta\")"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 39
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"U = exp((I * theta / 2)* sy)"
],
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 40
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"unitary_transformation(U, sx)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"latex": [
"$$\\sin{\\left (\\theta \\right )} {\\sigma_z} + \\cos{\\left (\\theta \\right )} {\\sigma_x}$$"
],
"metadata": {},
"output_type": "pyout",
"png": "iVBORw0KGgoAAAANSUhEUgAAALUAAAAVBAMAAADyYbJ0AAAAMFBMVEX///8AAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAv3aB7AAAAD3RSTlMAMnZUzRC73UTviSKZ\nZqszMyTAAAAACXBIWXMAAA7EAAAOxAGVKw4bAAAC0klEQVQ4Eb2US2gTURSG/2kzTcwkTSxCzcI2\nVAWJ2g5dKIriLKIL8TEroTa2oT5ACpJFEZ840JWCtFgCgpWGtKIoSlY+KNoYXPjYpC5cqNAIurRW\nayXWRzw3MzeTTExaN57FPeeec75/7pzcCfA/bQU97EAak//yzCqMcMkUksKA4/AW1HvN3EJRNUaY\nN2mbCvhUjwrFzC0ULZYJkNBZeGSwwGKdlj3fVmN4D/NXAPcgPGl0FGf1uL08lc9UY6SlBcgRAexJ\nNMuwyYUkDypoV2SElS3K3d9YNtzQ6icNZxIY0NCm5aPQSC5HCW5cO3RzFGI8oKGhfRXVShnxWS73\nUyf2AREcA3b4pR+UqUsDn6anR2gyCoQz/cfHuTB5Q1sagi/RmECPGIbdyqDx6cbehA6dVxFj2keB\nX5Sx0yT6gK9AbQQdMqb0Ln01tG0KtnlPAc3Lo3BaGXEI7hkDsn9bC6Z9CPhCqSUaMA9hFhBm8ITm\noxp9zBna3UmqUocndq6HnbCEcSlwzLFmMnGMJkraRwra4ixcg3ltepE2vYvWsWDwZDC4i6IBP71V\nlrTD+/eyyZK2ydANq+HnHoc7W6RNMxGz8BDtiEifgT2A1NepkQKZ9dwvEpjS8nMsMJjwwpYB4o9b\nvdgMfCzSZr/lZVwnIbcizkGIAq6tcdoyM+cNeZjO3x9DPfUXM+hW6bNGjfrermGTil42EGMmzgyQ\nkuhjgCuJg7inUSTKtDAztKWrcCZ8XuysjaIuQXcwU8TUydIJGih2U/+Fl6+1ptyHpty7Dd+ph30H\noXUqFWwaQi3XKMB9tjAztNGVugXp+R3NcXv9DUqXMGIqwGiwC2210zzxgAeSJuS7TW1e4b6coVsm\n8Krp3/KQDxmPRl8ZuYu8ZvHlzIQzwm6+xdgAmYlK3tHi923nYQVfznStia8ub2b/88x4v76rvi6a\neajrvKkuV1r9O/MHfynMtcAwv4AAAAAASUVORK5CYII=\n",
"prompt_number": 41,
"text": [
"sin(\u03b8)\u22c5False + cos(\u03b8)\u22c5False"
]
}
],
"prompt_number": 41
},
{
"cell_type": "heading",
"level": 2,
"metadata": {},
"source": [
"Test: $e^{i\\theta/2 \\sigma_y}\\sigma_ze^{-i\\theta/2 \\sigma_y} = \\cos(\\theta)\\sigma_z - \\sin(\\theta)\\sigma_x$"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"unitary_transformation(U, sz)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"latex": [
"$$- \\sin{\\left (\\theta \\right )} {\\sigma_x} + \\cos{\\left (\\theta \\right )} {\\sigma_z}$$"
],
"metadata": {},
"output_type": "pyout",
"png": "iVBORw0KGgoAAAANSUhEUgAAAMcAAAAVBAMAAAAA3efRAAAAMFBMVEX///8AAAAAAAAAAAAAAAAA\nAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAv3aB7AAAAD3RSTlMAEM3dMnZUu0TviSKZ\nZquXRLrEAAAACXBIWXMAAA7EAAAOxAGVKw4bAAADBElEQVRIDcWVT2gTQRTGv02mTZpNzNKL1FaN\nQdSDSqgHlSoE/xx6sI2HilRpF4qIovjnoEhBFgRBQYygIlRorFSkeih40FK1QSyoeAhFEVQwSg8e\ntLZS21qr8c1kZnebNlZPvsPMN++9X76d2VkC/N/YRvYLMwjF/+UxJPTiDwy75BT1w4D/yAFg0MnN\nqRQ0L168lU06NY8B1BphAx4nN6eyocicraKhkcaNCJsoSZEqiMqCtVraEBd/EW1AKIlwBlpyZvee\nmSmRsaGKIg2U1rfYNX8M8KZRbwLL7KQtipg4kIe4WYLtaIjc/YVNV7c2JagcSAPnLTRbwG1Ae5rL\nTbkgaaI96zKxoOEmOExlB+Kqqj2Xo8kd84EYTgLLE/oPyvsywJehoXaSA8DmJy2t3a5uadJjsjZW\nA19CwG4oFAHbcHptr4vh8oyBFDc5AfykpdcEqoGvJFugXUZomJQd0iSK0lFvCmxUwG6oNIYKE+8k\nUL6Gx1JqGN8FbnIU+Ea1MguYBBsjWY9gBP4RCYgpb6LxE6w3qVHAbogN4xGdt+GGSGsddIBkctw2\n0cYQTPKf4XesxNlJRzS6PhpdSd8qf5pDFjAuYGEiITKh82im+rToRWjCZeI1oU0gnKCeU+iLw5MF\nOh83xWlNUbCTKQGL45KQP6aPAqvpwlZXWgIRw37gs8uEv/gruM5LA1hs0MePEuOD1xK90gRRoLQs\nDf+EgPMvPg+FItoI2AUgeLAzj4hxn4FWflbyuAJZoF9v46Xn8Jn6OoBhleikIb8T9GRwi12EJyVg\nusJZBQXTOIY7FrVqJg0qzr58bdXl3tflBvd+z9J5x+ii7zZ4dQW0/kah+N0WIU20T43duN/1ERym\nggN5LFQ1XOO99/hQLGpUQU8qxYaZlNJEFezZhnpUSreYeD61nj6/VctAQqq+QCwg5TlVLJhtyH4R\nD2+8KuhxL33dclWusot2dm5XusisIC2iGhK1S5ScZeb/PyJaZykWSylImRXrs/MP8iqkdmQX/iQk\n9GZaz28WJNKVmeffoAAAAABJRU5ErkJggg==\n",
"prompt_number": 42,
"text": [
"-sin(\u03b8)\u22c5False + cos(\u03b8)\u22c5False"
]
}
],
"prompt_number": 42
},
{
"cell_type": "heading",
"level": 2,
"metadata": {},
"source": [
"Calculate $e^{i\\theta/2 \\sigma_y}\\sigma_-e^{-i\\theta/2 \\sigma_y}$"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"unitary_transformation(U, sm)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"latex": [
"$$\\left(\\frac{1}{2} \\cos{\\left (\\theta \\right )} - \\frac{1}{2}\\right) {\\sigma_x} + \\frac{{\\sigma_z}}{2} \\sin{\\left (\\theta \\right )} + {\\sigma_-}$$"
],
"metadata": {},
"output_type": "pyout",
"png": "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\n",
"prompt_number": 43,
"text": [
"\u239bcos(\u03b8) 1\u239e sin(\u03b8)\u22c5False \n",
"\u239c\u2500\u2500\u2500\u2500\u2500\u2500 - \u2500\u239f\u22c5False + \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 + False\n",
"\u239d 2 2\u23a0 2 "
]
}
],
"prompt_number": 43
},
{
"cell_type": "heading",
"level": 2,
"metadata": {},
"source": [
"Calculate $e^{i\\theta/2 \\sigma_y}\\sigma_+e^{-i\\theta/2 \\sigma_y}$"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"unitary_transformation(U, sp)"
],
"language": "python",
"metadata": {},
"outputs": [
{
"latex": [
"$$\\left(\\frac{1}{2} \\cos{\\left (\\theta \\right )} - \\frac{1}{2}\\right) {\\sigma_x} + \\frac{{\\sigma_z}}{2} \\sin{\\left (\\theta \\right )} + {\\sigma_+}$$"
],
"metadata": {},
"output_type": "pyout",
"png": "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\n",
"prompt_number": 44,
"text": [
"\u239bcos(\u03b8) 1\u239e sin(\u03b8)\u22c5False \n",
"\u239c\u2500\u2500\u2500\u2500\u2500\u2500 - \u2500\u239f\u22c5False + \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 + False\n",
"\u239d 2 2\u23a0 2 "
]
}
],
"prompt_number": 44
},
{
"cell_type": "heading",
"level": 2,
"metadata": {},
"source": [
"Versions"
]
},
{
"cell_type": "code",
"collapsed": false,
"input": [
"%reload_ext version_information\n",
"\n",
"%version_information sympy"
],
"language": "python",
"metadata": {},
"outputs": [
{
"html": [
"Software | Version |
---|
Python | 3.4.1 (default, Sep 20 2014, 19:44:17) [GCC 4.2.1 Compatible Apple LLVM 5.1 (clang-503.0.40)] |
IPython | 2.3.0 |
OS | Darwin 13.4.0 x86_64 i386 64bit |
sympy | 0.7.5-git |
Thu Oct 09 13:14:39 2014 JST |
"
],
"json": [
"{\"Software versions\": [{\"module\": \"Python\", \"version\": \"3.4.1 (default, Sep 20 2014, 19:44:17) [GCC 4.2.1 Compatible Apple LLVM 5.1 (clang-503.0.40)]\"}, {\"module\": \"IPython\", \"version\": \"2.3.0\"}, {\"module\": \"OS\", \"version\": \"Darwin 13.4.0 x86_64 i386 64bit\"}, {\"module\": \"sympy\", \"version\": \"0.7.5-git\"}]}"
],
"latex": [
"\\begin{tabular}{|l|l|}\\hline\n",
"{\\bf Software} & {\\bf Version} \\\\ \\hline\\hline\n",
"Python & 3.4.1 (default, Sep 20 2014, 19:44:17) [GCC 4.2.1 Compatible Apple LLVM 5.1 (clang-503.0.40)] \\\\ \\hline\n",
"IPython & 2.3.0 \\\\ \\hline\n",
"OS & Darwin 13.4.0 x86\\letterunderscore{}64 i386 64bit \\\\ \\hline\n",
"sympy & 0.7.5-git \\\\ \\hline\n",
"\\hline \\multicolumn{2}{|l|}{Thu Oct 09 13:14:39 2014 JST} \\\\ \\hline\n",
"\\end{tabular}\n"
],
"metadata": {},
"output_type": "pyout",
"prompt_number": 7,
"text": [
"Software versions\n",
"Python 3.4.1 (default, Sep 20 2014, 19:44:17) [GCC 4.2.1 Compatible Apple LLVM 5.1 (clang-503.0.40)]\n",
"IPython 2.3.0\n",
"OS Darwin 13.4.0 x86_64 i386 64bit\n",
"sympy 0.7.5-git\n",
"Thu Oct 09 13:14:39 2014 JST"
]
}
],
"prompt_number": 7
},
{
"cell_type": "code",
"collapsed": false,
"input": [],
"language": "python",
"metadata": {},
"outputs": []
}
],
"metadata": {}
}
]
}