Qiskit/qiskit-tutorials

Tutorial moving status

HuangJunye opened this issue · 3 comments

As part of Qiskit/RFCs#41, we are planning to migrate qiskit-tutorials content to qiskit-terra. This issue assess the current status of the tutorials content and recommend actions. This is a draft. This list will be reformatted and linked with existing issues.

Quantum circuits -> moved to Terra

Advanced circuits -> moved to Terra

Classical simulators -> moved to Aer

Algorithms -> moved to qiskit-algorithms

The content in this section is pretty good. I recommend making the introduction notebook a full fledge tutorial with more hand holding and background information and convert all the other tutorials into how-to guides.

  • algorithms_introduction: currently it's written more like a how to guide, can be improved to make it a full tutorial with more background information about quantum algorithms, especially variational algorithms. move as it is
  • vqe_advanced_options: should be converted to a how-to guide move as it is
  • vqe_simulation_with_noise: can be moved to Aer. We can link to it from algorithms_introduction tutorial. move as it is to Aer
  • vqd: the content is good though I am not sure we want to highlight VQD specifically. should be converted to a how-to guide move as it is
  • qaoa: should be converted to a how-to guide move as it is
  • grover: written more like a tutorial. I would make it into a how-to guide and link to qiskit textbook / ibm quantum learning platform for the background information about grover's algorithm (as pre-requisites) move as it is
  • grover_examples move as it is
  • IQPE: written like a tutorial. This is more a textbook / learning platform material because IQPE is not a class in Qiskit. I would move it to textbook / learning platform if similar content doesn't exist yet. move as it is
  • pvqd: should be converted to a how-to guide move as it is
  • VarQTE
  • gradients_framework

Operators -> moved to Terra, will be removed

As stated in Qiskit/qiskit#10666

  • operator_flow: remove since optflow is deprecated.
  • gradients_framework: remove since optflow is deprecated.

Sample algorithms in Qiskit

  • IQPE: duplicate of IQPE in algorithms section, remove: #1479

I wonder with this one

vqe_simulation_with_noise: can be moved to Aer. We can link to it from algorithms_introduction tutorial.

When it was based on QuantumInstance it use to show not only adding a noise model but also QI's noise mitigation. The latter is something only the Runtime does at present. There is an issue around adding some sort of mitigation there so you could experiment a bit further with local simulator before moving to the runtime.

Now in regards of algorithms and running on different backends it comes up all the time as primitives are still new. A tutorial/howto in this regard might involve primitives from different providers - switching backends is again more related to runtime but the connection to switching primitives often needs to be explained. I mention this since sometimes I refer to that Aer tutorial as its using a different primitive (other than qiskit.primitives one) with VQE.

An update on the status of the algorithm tutorials to make sure we are all on the same page, the move to qiskit-algorithms is happening in this PR, and following the list above with 2 main differences:

  1. tutorial 03 vqe_simulation_with_noise is being moved to qiskit-algorithms, and not aer. This is due to the need to completely decouple qiskit-algorithms, we could not (and should not) add it as a dependency to aer.
  2. tutorial 09 IQPE is not being moved to qiskit-algorithms because, as mentioned above, is not using the qiskit_algorithms IQPE class, but rather showing how to build it from scratch. I suggest keeping in mind that this material exists in case we ever want to submit a new qiskit tutorial for IQPE, although I am not sure how much interest there would be to have it as a qiskit tutorial (I am aware that the QPE tutorial was removed from the runtime tutorials Qiskit/qiskit-ibm-runtime#925). The best location for it would probably be the textbook, I can see that there is a QPE entry already, but the link seems to be broken: https://qiskit.org/learn/course/ch-applications/tsp/

Now that the tutorials are almost done being moved, I'm closing this in favor of Qiskit/documentation#874.