qiskit-metapackage
qiskit-metapackage copied to clipboard
Getting started with Qiskit and introduction to Qiskit tutorials are very similar
Informations
- Qiskit version:
- Python version:
- Operating system:
What is the current behavior?
https://qiskit.org/documentation/intro_tutorial1.html and https://qiskit.org/documentation/tutorials/circuits/1_getting_started_with_qiskit.html are both supposed to be "getting started" guide covering similar topics.
Steps to reproduce the problem
What is the expected behavior?
There should be only one "getting started"
Suggested solutions
We should remove one of these two tutorials
Actually https://qiskit.org/documentation/tutorials/circuits/01_circuit_basics.html is also very similar to the two tutorials mentioned above.
This looks like something I can help with. Is there something you would like done to start?
@InfamousPlatypus Thank you. To start with, I think it will help if you can do a detailed comparisons of the three so that we can decide which one to keep.
Is this useful?
Introduction to Qiskit
Four steps: Build, Compile, Run, Analyze Example: Simulate 2 qbit circuit with an H and Cnot. Run, draw and plot.
Workflow Step by Step
Six steps, Import packages, Initialize variables, Add gates, Visualize Circuit, simulate, Visualize results.
Imports Numpy, qiskit QuantumCircuit, aer QasmSimulator, visualization plot_histogram
After that we initialize a 2 qbit circut.
(I do like how this one shows you need 2 registers up front. The others do a better job of showing a separation between the quantum register and classical register though)
Build the circuit (bell state) then measure.
Basic description of the gates. Keywords (superposition state and entangled state) are highlighted. I feel like this doc has quite sparse links, this may be a good place to use them.
Visualize Circuit
Just has QC.draw(), but tells us to change the settings.conf to mpl if we prefer that. Also lists valid backends.
Simulate experiment with Aer or basic Aer.
Qasm simulator
get_counts
Visualize results
plot_histogram
Next Steps: tutorials, Textbook, Coding With Qiskit
This is for sure the Introduction. It is most basic, simple and easy to follow. Some sections of the others feel like a wall of text
Getting Started with Qiskit
Two stages, Build and Execute. Do the imports
Circuit Basics
Building the Circuit
Create a 3 qbit GHZ gate. Shows what the gates do using math.
Visualize Circuit
Uses mpl It has a text box explaining endiness, Probably something good to keep.
Simulating circuits with Aer
Statevector backend
Be careful because it returns 2^n where n is the number of qbits There is a nice tip and note that I did not know. I guess I did not read this tutorial before. I think these are important to know. Outputs: Statevector, plot_state_city
Unitary Backend
This does not look like the statevector. It's unclear why it's different?
OpenQASM backend
It redoes the circuit with the required classical bits. I can see it's backend is slightly different from the other two and requires measurements.
Version info
This is a lot more math-y. Has some notes that I think were useful.
Circuit Basics
Uh, this appears to be the same as "Getting Started with Qiskit" but we also draw with latex, qsphere, and hinton. The drawing for OpenQASM also uses mpl instead of text.
Summary
We appear to have two different tutorials, Introduction to Qiskit seems to be best for getting started tutorials. The other two seem to primarily be quick explanations of backends/visualizations and can be merged.
@InfamousPlatypus Thanks for writing the summary. I agree with you that the introduction to Qiskit is the most concise and best suited as the getting started while the other two are very similar. I would vote for removing https://qiskit.org/documentation/tutorials/circuits/1_getting_started_with_qiskit.html and keep https://qiskit.org/documentation/tutorials/circuits/01_circuit_basics.html at least. (may need to make sure the link to the first will redirect to the second) as the first step.
That sounds good, I will do that.
Nevermind, I can't. I thought I saw a way to send one notebook to another, but that's an exploit.
We can set up specific redirects using the conf.py
file in the documentation build of the metapackage (this repo). That's probably the right way to do that, if it's what you're after.
On hold until https://github.com/Qiskit/qiskit-tutorials/issues/1435 is fixed.
Closing this as it is supersede by https://github.com/Qiskit/qiskit-terra/issues/10315