Dynamic Circuits | Coding with Qiskit 1.x | Programming on Quantum Computers
Ғылым және технология
In episode 5 of "Coding with Qiskit 1.x," Derek Wang explores dynamic quantum circuits. By incorporating classical processing within the coherence time of qubits, dynamic quantum circuits can reduce circuit depth and enable quantum error correction. As an example, Derek implements the long-range CNOT gate teleportation circuit--demonstrated in a recent paper by IBM Quantum--with new classical processing features of Qiskit 1.x. A challenge for you: see if you can beat the long-range CNOT gate fidelity presented in the paper!
Qiskit Resources:
Link to notebook: github.com/derek-wang-ibm/cod...
IBM Quantum blog post: ibm.com/quantum/blog/quantum-...
IBM Quantum Nature paper on error correction: ibm.com/quantum/blog/nature-q...
The notebook example is based on our paper here: arxiv.org/abs/2308.13065
Classical feedforward and conditional logic in dynamic circuits documentation: docs.quantum.ibm.com/build/cl...
#ibmquantum #qiskit #learnquantum
Пікірлер: 20
Incredible workflow. Thank you Derek. Currently well above my skill set but Im making progress every day. These tutorials are invaluable.
Very nice! I watched Elisa Bäumer’s talk on this subject a few weeks ago in the Qiskit channel and was planning to implement gate teleportation for something I’ve been working on. It is nice to see the circuit and results! Thanks!!
@DerekWangIBM
26 күн бұрын
Glad this is helpful. There are, in fact, several different ways to implement the classical logic that could impact the performance. You could try using the `switch` statement instead of the `if_else`.
I think being able to script these circuits in python is the most elite aspect of this. One thing that I struggle with is abstracting qubit entanglement and measurement operations onto models of systems I’d like to simulate. I don’t think I understand the time space of the operations and the levels/states of qubit modulation I can map to a meaningful value in an experiment. I will watch more though, great episode 😊
Well if gates were assigned to pre hadamard or post hadamard will by far part of highented sensory as direction of eigenvalue and eigenvectors by 4^schrödinder
Is there a way of applying gates only on a subspace of qubit states? For eg: if I have a state as a superposition of 00,01,10,11 basis states, but I only wish to apply a gate to the subspace spanned by 00 and 01 space, while the other subspace is invariant (G acting on a|00> +b|01> +c|10> + d|11> is just G(a|00> +b|01> ) + c|10> + d|11> )?
@DerekWangIBM
5 күн бұрын
This should be possible as long as G is unitary. For instance, the CNOT gate only acts on states |10> and |11> where the left qubit is control and right qubit is target.
Thanks for amazing video. I have 1 doubt: In our Quantum Circuit, we have not included measurement step for control qubit, target qubit and storing result to cr3 register. But at the end, during post processing, we had used cr3 register. How compiler is sure the results are stored in cr3? When I included these steps, I also had to put i in place of i+1, i.e. in post processing step I put data=result[i].data in place of result[i+1].data. Then program worked. Can you explain it?
@DerekWangIBM
20 күн бұрын
Thanks for pointing this out. We should have stored to the cr3 register, and then you should put i instead of i+1. I have updated the notebook in the GitHub to correct this.
@shikharsrivastava5057
19 күн бұрын
@@DerekWangIBM In the video, circuit was for odd number of qubits. Is it possible to get corresponding dynamic circuit for long Range CNOT in even number of qubits?
@DerekWangIBM
19 күн бұрын
@@shikharsrivastava5057 It seems you can remove the first ancilla qubit (qubit index 1 in the whole circuit), making sure to connect the control qubit (qubit 0) to the second ancilla qubit (qubit 2 before, now qubit 1) with a CNOT. On the ancilla qubit, I think you will keep the measurement followed by controlled-X gate on the target. Try that?
@shikharsrivastava5057
19 күн бұрын
@@DerekWangIBM Thanks. That worked.