Book Image

Learn Quantum Computing with Python and IBM Quantum Experience

By : Robert Loredo
Book Image

Learn Quantum Computing with Python and IBM Quantum Experience

By: Robert Loredo

Overview of this book

IBM Quantum Experience is a platform that enables developers to learn the basics of quantum computing by allowing them to run experiments on a quantum computing simulator and a real quantum computer. This book will explain the basic principles of quantum mechanics, the principles involved in quantum computing, and the implementation of quantum algorithms and experiments on IBM's quantum processors. You will start working with simple programs that illustrate quantum computing principles and slowly work your way up to more complex programs and algorithms that leverage quantum computing. As you build on your knowledge, you’ll understand the functionality of IBM Quantum Experience and the various resources it offers. Furthermore, you’ll not only learn the differences between the various quantum computers but also the various simulators available. Later, you’ll explore the basics of quantum computing, quantum volume, and a few basic algorithms, all while optimally using the resources available on IBM Quantum Experience. By the end of this book, you'll learn how to build quantum programs on your own and have gained practical quantum computing skills that you can apply to your business.
Table of Contents (21 chapters)
1
Section 1: Tour of the IBM Quantum Experience (QX)
5
Section 2: Basics of Quantum Computing
9
Section 3: Algorithms, Noise, and Other Strange Things in Quantum World
18
Assessments
Appendix A: Resources

Estimating T1 decoherence times

Fitters are used to estimate the T1 time based on experiment results from t1_circuits executed on noisy devices. The estimate is based on the probability formula of measuring 1 from the following equation, where A, T1, and B are unknown parameters:

Since we set the T1 value earlier when we defined the noise model of the qubit as 20, let's assume for now that we do not know that and initialize the value to some percentage value away from the actual value. The T1Fitter class has a few parameters that it needs in order to characterize the qubit. We will start by initializing the values for a, t1, and b:

# Initialize the parameters for the T1Fitter, A, T1, and B
param_t1 = t1*1.2
param_a = 1.0
param_b = 0.0

This will initialize our t1, a, and b parameters, which we will use to generate T1Fitter.

Next, we will generate T1Fitter by providing the following parameters:

  • backend_result: The results from our test circuits on the backend...