IBM Certified Associate Developer - Quantum Computation using Qiskit v0.2X
Link URL::
https://www.ibm.com/training/certification/C0010300
Title:: IBM Certified Associate Developer - Quantum Computation using Qiskit v0.2X
# Certification Overview
An IBM Qiskit Developer is an individual who demonstrates fundamental knowledge of quantum computing concepts and is able to express them using the Qiskit open source software development kit (SDK). They have experience using the Qiskit SDK from the Python programming language to create and execute quantum computing programs on IBM Quantum computers and simulators.
# Recommended Skills
- Working knowledge of creating, executing, and visualizing the results quantum of circuits using the online IBM Quantum Composer
- Working knowledge of developing examples that highlight features of the Qiskit SDK, such as those found in the online IBM Quantum Lab
- Working knowledge of modeling quantum states and evolution with complex vectors and matrices.
- Working knowledge of Pauli matrices.
- Working knowledge of quantum state measurement probabilities.
- Familiarity with common circuits such as those that result in the Bell states.
# Requirements
Exam C1000-112: Fundamentals of Quantum Computation Using Qiskit v0.2X Developer
# Exam Objectives
An IBM Qiskit Developer is an individual who demonstrates fundamental knowledge of quantum computing concepts and is able to express them using the Qiskit open source software development kit (SDK). They have experience using the Qiskit SDK from the Python programming language to create and execute quantum computing programs on IBM Quantum computers and simulators.
Key areas of competency:
- Defining, executing, and visualizing results of quantum circuits using the Qiskit SDK
- Understanding single-qubit gates and their rotations on the Bloch sphere.
- Understanding various multi-qubit gates and their effects in quantum circuits.
- Leveraging fundamental Qiskit SDK features including commonly-used classes and functions located in
qiskit.circuit
,qiskit.execute
,qiskit.providers
,qiskit.qasm
,qiskit.quantum_info
,qiskit.tools
, andqiskit.visualization
packages.
During exam development, the Subject Matter Experts (SMEs) define all of the tasks, knowledge and experience that an individual would need in order to successfully fulfill their role with the product or solution. These are represented by the objectives below and the questions on the certification exam are based upon these objective.
Number of questions: 60
Number of questions to pass: 44
Time allowed: 90 minutes
Status: Live
# Exam Resources
Courses and publications are offered to help you prepare for the certification exam. The courses are recommended, but not required, before taking a certification exam. Please note that course offerings are continuously being added and updated.
- Online lab
- Qiskit.Org
Open-Source Quantum Development Qiskit is an open source SDK for working with quantum computers at the level of pulses, circuits and application modules.
- Qiskit.Org
- Presentation
- Study Guide
Use this easy to follow web-based slide deck that that will help you prepare for this exam. The guide is free and can be viewed immediately.
- Study Guide
- Learn More About the IBM Quantum Developer Certification — And How to Take it For Free (scribe.rip)
# Notes
# Study Guide
#study-guide C1000-112_STU.pdf
Preparing for the Qiskit developer certification exam
Here are some hopefully helpful tips and resources as you prepare to take the Qiskit developer
certification exam. The exam contains questions on quantum computing with Qiskit that ensure
competency in areas that include the following:
Defining, executing, and visualizing results of quantum circuits using the Qiskit SDK
Understanding single-qubit gates and their rotations on the Bloch sphere.
Understanding various multi-qubit gates and their effects in quantum circuits.
Leveraging fundamental Qiskit SDK features including commonly-used classes and functions
located in qiskit.circuit
, qiskit.execute
, qiskit.providers
, qiskit.qasm
, qiskit.quantum_info
, qiskit.tools
, and qiskit.visualization
packages.
Ideally, you will have the following skills before taking the exam:
- Working knowledge of creating, executing, and visualizing the results quantum of circuits using the online IBM Quantum Composer https://quantum-computing.ibm.com/composer
- Working knowledge of developing examples that highlight features of the Qiskit SDK, such as those found in the online IBM Quantum Lab https://quantum-computing.ibm.com/lab
- Working knowledge of modeling quantum states and evolution with complex vectors and matrices.
- Working knowledge of Pauli matrices.
- Working knowledge of quantum state measurement probabilities.
- Familiarity with common circuits such as those that result in the Bell states.
# Learning Path
#learning-path
Here is a recommended path for preparing to take the exam:
- Study the Learn Quantum Computation using Qiskit textbook up to, and including, the Multiple Qubits and Entanglement section https://qiskit.org/textbook
- Then, it will be helpful to go through some of the tutorials that cover the following areas of the IBM Quantum Lab:
- Then, dive a bit deeper into quantum circuits, which are a combination of quantum gates, measurements and resets. Initially, make sure you cover the below topics. To understand the circuits, please go through these websites,
https://qiskit.org/textbook/ch-algorithms/defining-quantum-circuits.html
https://qiskit.org/textbook/ch-states/representing-qubit-states.html
https://qiskit.org/documentation/stubs/qiskit.circuit.Gate.html
https://qiskit.org/documentation/tutorials/circuits_advanced/03_advanced_circuit_visualization.html
- Using various single-qubit gates : https://qiskit.org/textbook/ch-states/single-qubit-gates.html
- Using various multi-qubit gates : https://qiskit.org/textbook/ch-gates/multiple-qubits-entangled-states.html
- Using barrier operation : https://qiskit.org/documentation/stubs/qiskit.circuit.library.Barrier.html
- Returning the circuit depth : https://arnaldogunzi.medium.com/how-to-calculate-the-depth-of-a-quantum-circuit-in-qiskit-868505abc
- Extending quantum circuits : https://qiskit.org/documentation/stubs/qiskit.extensions.Initialize.html
- Operations around the qiskit version : https://qiskit.org/documentation/install.html
- Operators : https://qiskit.org/documentation/tutorials/circuits_advanced/02_operators_overview.html
- Fidelity: https://qiskit.org/documentation/stubs/qiskit.quantum_info.state_fidelity.html
A topic to study next would be quantum registers. Visiting these resources will shed some additional light in this area:
https://qiskit.org/documentation/getting_started.html
- Constructing Quantum Circuits : https://qiskit.org/textbook/ch-algorithms/defining-quantum-circuits.html
- Constructing multi-qubit quantum registers : https://qiskit.org/textbook/ch-gates/multiple-qubits-entangled-states.html
- Measuring quantum circuits into classical registers: https://qiskit.org/documentation/stubs/qiskit.circuit.Measure.html
- Classical and quantum registers: https://qiskit.org/documentation/stubs/qiskit.circuit.QuantumRegister.html
- Executing a quantum circuit: https://qiskit.org/documentation/apidoc/execute.html
The next topic to consider is simulators. Simulators are used to mimic the actual quantum device. Below are the links to follow through these topics,
https://qiskit.org/documentation/tutorials/simulators/1_aer_provider.html
https://qiskit.org/documentation/apidoc/providers_basicaer.html
- Returning the histogram data of an experiment
- Returning the
statevector
of an experiment - Returning the unitary of an experiment
- Available simulators
- Accessing a
statevector_simulator
backend - Accessing a
qasm_simulator
backend - Accessing a
unitary_simulator
backend
Open QASM is Open Quantum Assembly Language is an intermediate language for quantum instructions. Below are some resources to understand the Open QASM and how to use it in Qiskit.
https://qiskit.org/documentation/stubs/qiskit.qasm.Qasm.html
https://medium.com/qiskit/a-new-openqasm-for-a-new-era-of-dynamic-circuits-87f031cac
https://github.com/Qiskit/openqasm
- Returning the
OpenQASM
string for a circuit - Reading a QASM file
- Returning the
Qiskit Backend refers to the functions used in IBM Quantum Experience device. To understand how the Qiskit Backend works, go through the resources below,
https://qiskit.org/documentation/stubs/qiskit.providers.ibmq.IBMQBackend.html
https://medium.com/qiskit/qiskit-backends-what-they-are-and-how-to-work-with-them-fb66b3bd
- Monitor the status of a job instance
- Qiskit Backend Overview
Visualization deals with the plotting various data in Qiskit. Below are some resources to understand these concepts,
https://qiskit.org/documentation/tutorials/circuits/2_plotting_data_in_qiskit.html
https://qiskit.org/documentation/tutorials/circuits_advanced/03_advanced_circuit_visualization.html
- Drawing a circuit Plotting a histogram of data
- Plotting a Bloch
multivector
- Plotting a Bloch vector
- Plotting a
QSphere
- Plotting a density matrix
- Plotting a gate map with error rates