|
20 | 20 | "id": "a3c9a6e8",
|
21 | 21 | "metadata": {},
|
22 | 22 | "outputs": [
|
| 23 | + { |
| 24 | + "name": "stderr", |
| 25 | + "output_type": "stream", |
| 26 | + "text": [ |
| 27 | + "<frozen importlib._bootstrap>:228: RuntimeWarning: scipy._lib.messagestream.MessageStream size changed, may indicate binary incompatibility. Expected 56 from C header, got 64 from PyObject\n" |
| 28 | + ] |
| 29 | + }, |
23 | 30 | {
|
24 | 31 | "name": "stdout",
|
25 | 32 | "output_type": "stream",
|
26 | 33 | "text": [
|
27 | 34 | " ┌───┐ ┌─────────┐ \n",
|
28 | 35 | "q_0: ┤ H ├──■───┤ Ry(2.6) ├─\n",
|
29 |
| - " ├───┤┌─┴─┐┌┴─────────┴┐\n", |
30 |
| - "q_1: ┤ Y ├┤ X ├┤ Ry(-0.87) ├\n", |
31 |
| - " └───┘└───┘└───────────┘\n" |
| 36 | + " └───┘┌─┴─┐┌┴─────────┴┐\n", |
| 37 | + "q_1: ─────┤ X ├┤ Ry(-0.87) ├\n", |
| 38 | + " └───┘└───────────┘\n" |
32 | 39 | ]
|
33 | 40 | }
|
34 | 41 | ],
|
35 | 42 | "source": [
|
36 | 43 | "from mpqp import QCircuit\n",
|
37 | 44 | "from mpqp.gates import *\n",
|
38 |
| - "circuit = QCircuit([H(0), Y(1), CNOT(0,1), Ry(2.6, 0), Ry(-0.87, 1)])\n", |
| 45 | + "circuit = QCircuit([H(0), CNOT(0,1), Ry(2.6, 0), Ry(-0.87, 1)])\n", |
39 | 46 | "print(circuit)"
|
40 | 47 | ]
|
41 | 48 | },
|
|
124 | 131 | "output_type": "stream",
|
125 | 132 | "text": [
|
126 | 133 | "Result: ATOSDevice, MYQLM_PYLINALG\n",
|
127 |
| - " Expectation value: -3.317064001288396\n", |
| 134 | + " Expectation value: -3.5935083233096687\n", |
128 | 135 | " Error/Variance: 0.0\n",
|
129 |
| - "\n", |
130 |
| - "-3.317064001288396\n" |
| 136 | + "-3.5935083233096687\n" |
131 | 137 | ]
|
132 | 138 | }
|
133 | 139 | ],
|
|
160 | 166 | "output_type": "stream",
|
161 | 167 | "text": [
|
162 | 168 | "BatchResult: 2 results\n",
|
163 |
| - "Result: IBMDevice, AER_SIMULATOR\n", |
164 |
| - " Expectation value: -3.2504999999999997\n", |
165 |
| - " Error/Variance: 41.46215925\n", |
166 | 169 | "Result: ATOSDevice, MYQLM_PYLINALG\n",
|
167 |
| - " Expectation value: -3.2715\n", |
168 |
| - " Error/Variance: 0.1439368300002305\n", |
169 |
| - "\n" |
| 170 | + " Expectation value: -3.4769999999999994\n", |
| 171 | + " Error/Variance: 0.10704925979198084\n", |
| 172 | + "Result: IBMDevice, AER_SIMULATOR\n", |
| 173 | + " Expectation value: -3.6155\n", |
| 174 | + " Error/Variance: 22.003217250000002\n" |
170 | 175 | ]
|
171 | 176 | }
|
172 | 177 | ],
|
|
187 | 192 | },
|
188 | 193 | {
|
189 | 194 | "cell_type": "code",
|
190 |
| - "execution_count": 9, |
| 195 | + "execution_count": 11, |
191 | 196 | "id": "4ac9c7e0",
|
192 | 197 | "metadata": {},
|
193 | 198 | "outputs": [],
|
194 | 199 | "source": [
|
195 |
| - "from mpqp.measures import I, X as Pauli_X, Y as Pauli_Y, X as Pauli_Z" |
| 200 | + "from mpqp.measures import I, X, Y, Z" |
196 | 201 | ]
|
197 | 202 | },
|
198 | 203 | {
|
199 | 204 | "cell_type": "markdown",
|
200 | 205 | "id": "aed703a9",
|
201 | 206 | "metadata": {},
|
202 | 207 | "source": [
|
203 |
| - "> ⚠ **pauli_string import**: pauli atoms are named I, X, Y, and Z. If you have conflicts with `mpqp.gates import X, Y, Z,` , you can:\n", |
| 208 | + "> ⚠ **pauli_string import**: pauli atoms are named `I`, `X`, `Y`, and `Z`. If\n", |
| 209 | + "> you have conflicts with the gates of the same name, you can:\n", |
204 | 210 | "> - **Rename Import:**\n",
|
205 | 211 | "> ```python \n",
|
206 |
| - "> from mpqp.measures import X as Pauli_X \n", |
| 212 | + "> from mpqp.measures import X as obs_X \n", |
207 | 213 | "> ```\n",
|
208 |
| - "> - **Import Only Pauli String:**\n", |
| 214 | + "> - **Import the whole module:**\n", |
209 | 215 | "> ```python\n",
|
210 | 216 | "> from mpqp.measures import pauli_string \n",
|
211 | 217 | "> pauli_string.X\n",
|
|
242 | 248 | },
|
243 | 249 | {
|
244 | 250 | "cell_type": "code",
|
245 |
| - "execution_count": 10, |
| 251 | + "execution_count": 15, |
246 | 252 | "id": "bc5ed517",
|
247 | 253 | "metadata": {},
|
248 | 254 | "outputs": [
|
249 | 255 | {
|
250 | 256 | "name": "stdout",
|
251 | 257 | "output_type": "stream",
|
252 | 258 | "text": [
|
253 |
| - "ps_1=1*I@X + -3*X@Y\n" |
| 259 | + "ps_1=1*I@Z + -3*X@Y\n" |
254 | 260 | ]
|
255 | 261 | }
|
256 | 262 | ],
|
257 | 263 | "source": [
|
258 |
| - "ps_1 = I @ Pauli_Z - 3 * Pauli_X @ Pauli_Y\n", |
| 264 | + "ps_1 = I@Z - 3 * X@Y\n", |
259 | 265 | "print(f\"{ps_1=}\")"
|
260 | 266 | ]
|
261 | 267 | },
|
|
276 | 282 | },
|
277 | 283 | {
|
278 | 284 | "cell_type": "code",
|
279 |
| - "execution_count": 11, |
| 285 | + "execution_count": 16, |
280 | 286 | "id": "06784ef3",
|
281 | 287 | "metadata": {},
|
282 | 288 | "outputs": [
|
283 | 289 | {
|
284 | 290 | "name": "stdout",
|
285 | 291 | "output_type": "stream",
|
286 | 292 | "text": [
|
287 |
| - "ps_2 = 1*I@X + 2.555555555*Y@I + 1*X@X + -1*X@X\n", |
288 |
| - " = 1*I@X + 2.555555555*Y@I\n", |
289 |
| - " ~= 1*I@X + 2.6*Y@I + 1*X@X + -1*X@X\n", |
290 |
| - " ~= 1*I@X + 2.5556*Y@I\n" |
| 293 | + "ps_2 = 1*I@Z + 2.555555555*Y@I + 1*X@Z + -1*X@Z\n", |
| 294 | + " = 1*I@Z + 2.555555555*Y@I\n", |
| 295 | + " ~= 1*I@Z + 2.6*Y@I + 1*X@Z + -1*X@Z\n", |
| 296 | + " ~= 1*I@Z + 2.5556*Y@I\n" |
291 | 297 | ]
|
292 | 298 | }
|
293 | 299 | ],
|
294 | 300 | "source": [
|
295 |
| - "ps_2 = I @ Pauli_Z + 2.555555555 * Pauli_Y @ I + Pauli_X @ Pauli_Z - Pauli_X @ Pauli_Z\n", |
| 301 | + "ps_2 = I@Z + 2.555555555*Y@I + X@Z - X@Z\n", |
296 | 302 | "print(\"ps_2 =\",repr(ps_2))\n",
|
297 | 303 | "print(\" =\",repr(ps_2.simplify()))\n",
|
298 | 304 | "print(\" ~=\",repr(ps_2.round(1)))\n",
|
|
311 | 317 | },
|
312 | 318 | {
|
313 | 319 | "cell_type": "code",
|
314 |
| - "execution_count": 12, |
| 320 | + "execution_count": 17, |
315 | 321 | "id": "b9cadb08",
|
316 | 322 | "metadata": {},
|
317 | 323 | "outputs": [
|
|
320 | 326 | "output_type": "stream",
|
321 | 327 | "text": [
|
322 | 328 | "Addition:\n",
|
323 |
| - "(1*I@X + -3*X@Y) + (1*I@X + 2.6*Y@I) = 2*I@X + -3*X@Y + 2.6*Y@I\n", |
| 329 | + "(1*I@Z + -3*X@Y) + (1*I@Z + 2.6*Y@I) = 2*I@Z + -3*X@Y + 2.6*Y@I\n", |
324 | 330 | "\n",
|
325 | 331 | "Subtraction:\n",
|
326 |
| - "(1*I@X + -3*X@Y) - (1*I@X + 2.6*Y@I) = -3*X@Y + -2.6*Y@I\n", |
| 332 | + "(1*I@Z + -3*X@Y) - (1*I@Z + 2.6*Y@I) = -3*X@Y + -2.6*Y@I\n", |
327 | 333 | "\n",
|
328 | 334 | "Scalar product:\n",
|
329 |
| - "2 * (1*I@X + -3*X@Y) = 2*I@X + -6*X@Y\n", |
| 335 | + "2 * (1*I@Z + -3*X@Y) = 2*I@Z + -6*X@Y\n", |
330 | 336 | "\n",
|
331 | 337 | "Scalar division:\n",
|
332 |
| - "(1*I@X + 2.6*Y@I) / 3 ~= 0.3333*I@X + 0.8667*Y@I\n", |
| 338 | + "(1*I@Z + 2.6*Y@I) / 3 ~= 0.3333*I@Z + 0.8667*Y@I\n", |
333 | 339 | "\n",
|
334 | 340 | "Tensor product:\n",
|
335 |
| - "(1*I@X + -3*X@Y) @ Z = 1*I@X@X + -3*X@Y@X\n", |
| 341 | + "(1*I@Z + -3*X@Y) @ Z = 1*I@Z@Z + -3*X@Y@Z\n", |
336 | 342 | "\n",
|
337 |
| - "(1*I@X + -3*X@Y) @ (1*I@X + 2.6*Y@I) = 1*I@X@I@X + -3*I@X@X@Y + 2.6*Y@I@I@X + -7.8*Y@I@X@Y\n" |
| 343 | + "(1*I@Z + -3*X@Y) @ (1*I@Z + 2.6*Y@I) = 1*I@Z@I@Z + -3*I@Z@X@Y + 2.6*Y@I@I@Z + -7.8*Y@I@X@Y\n" |
338 | 344 | ]
|
339 | 345 | }
|
340 | 346 | ],
|
|
353 | 359 | "({ps_2}) / 3 ~= {ps_2 / 3}\n",
|
354 | 360 | "\n",
|
355 | 361 | "Tensor product:\n",
|
356 |
| - "({ps_1}) @ Z = {ps_1 @ Pauli_Z}\n", |
| 362 | + "({ps_1}) @ Z = {ps_1@Z}\n", |
357 | 363 | "\n",
|
358 |
| - "({ps_1}) @ ({ps_2}) = {ps_1 @ ps_2}\"\"\")" |
| 364 | + "({ps_1}) @ ({ps_2}) = {ps_1@ps_2}\"\"\")" |
359 | 365 | ]
|
360 | 366 | },
|
361 | 367 | {
|
|
368 | 374 | },
|
369 | 375 | {
|
370 | 376 | "cell_type": "code",
|
371 |
| - "execution_count": 13, |
| 377 | + "execution_count": null, |
372 | 378 | "id": "5b0537a1",
|
373 | 379 | "metadata": {},
|
374 | 380 | "outputs": [],
|
|
388 | 394 | },
|
389 | 395 | {
|
390 | 396 | "cell_type": "code",
|
391 |
| - "execution_count": 31, |
| 397 | + "execution_count": null, |
392 | 398 | "id": "1732e099",
|
393 | 399 | "metadata": {},
|
394 | 400 | "outputs": [
|
|
444 | 450 | },
|
445 | 451 | {
|
446 | 452 | "cell_type": "code",
|
447 |
| - "execution_count": 24, |
| 453 | + "execution_count": null, |
448 | 454 | "id": "892f0b6e",
|
449 | 455 | "metadata": {},
|
450 | 456 | "outputs": [],
|
|
455 | 461 | },
|
456 | 462 | {
|
457 | 463 | "cell_type": "code",
|
458 |
| - "execution_count": 25, |
| 464 | + "execution_count": null, |
459 | 465 | "id": "745aa999",
|
460 | 466 | "metadata": {},
|
461 | 467 | "outputs": [
|
|
506 | 512 | "name": "python",
|
507 | 513 | "nbconvert_exporter": "python",
|
508 | 514 | "pygments_lexer": "ipython3",
|
509 |
| - "version": "3.9.5" |
| 515 | + "version": "3.9.12" |
510 | 516 | }
|
511 | 517 | },
|
512 | 518 | "nbformat": 4,
|
|
0 commit comments