Glossary
Every industry has its jargon, and quantum computing is by far no exception. Here, we lay out terms we commonly use in qbitkit’s documentation in hopes of making our explanations of things more accessible.
0. Quantum Computing Jargon
- Qubit
Short for QUantum BIT
Most basic unit of quantum computers, similar to classical computing bits.
- Bra-Ket notation
- Bra: \(\langle f |\)
- Denotes a linear form \(f: V \rightarrow \mathbb{C}\)
e.g. a linear map mapping all of the vectors in \(V\) to a number on complex plane \(\mathbb{C}\)
- Ket: \(| v \rangle\)
Denotes a vector, \(v\), in a complex vector space \(V\).
Represents the state of a quantum system.
- If you let the linear functional \(\langle f |\) act on vector \(| v \rangle\), you would write this out as:
\(\langle f| v\rangle \in \mathbb{C}\)
Bra-Ket: \(\langle x | y \rangle\)
Also known as Dirac notation
- Lazy Bra-Ket notation
- Bra:
<f|
- Denotes a linear form
f
\(:V \rightarrow \mathbb{C}\) e.g. a linear map mapping all of the vectors in \(V\) to a number on complex plane \(\mathbb{C}\)
- Denotes a linear form
- Bra:
- Ket:
|v>
Denotes a vector,
v
, in a complex vector space \(V\).Represents the state of a quantum system.
- Ket:
Bra-Ket:
<x|y>
Also known as Lazy Dirac notation
- Measurement
The action of reading the state of a quantum entity, thereby ‘collapsing’ the state of the qubit to a binary value (
|0>
or|1>
)
- Coherence
Quantum mechanics only happen in coherent systems, therefore a quantum computer only functions inside the computer’s window of coherence time.
At present, one of the limitations present in NISQ-era hardware is short coherence times.
One analogy that comes to mind is coherence time is like having a maximum uptime on a classical computer after which the system shuts off.
Coherence time is low due to the high amount of environmental noise from external sources of radiation, interfering with the carefully emitted pulses of microwave radiation used to drive superconducting qubits.
- Quantum Annealing
Quantum annealing exploits quantum tunnneling to traverse an energy landscape in order to find the global minimum.
By using precise magnetic forces to tune the strengths of Josephson junctions \(j\) acting as couplers connecting qubits together in order to form what’s called a chain.
Through the process of minor embedding, you can convert various problem spaces to \(j\) coupler strengths and using superpositioned qubits to emit every possible answer (including incorrect answers) so that the couplers guide correct solutions iterated to lower energy states.
This allows you to formulate even the biggest problems you can imagine as long as you can express them as a QUBO, Ising Model, BQM or Graph problem.
- Once the problem has been translated, and encoded by adjusting \(j\) values to their desired strengths, the annealer pauses to wait for the dilution fridge to cool it back down as using ferromagnetism adds small amounts of heat that negatively affect the accuracy of the annealing process by adding noise.
This process of cooling the QPU back down after encoding is referred to as re-thermalization.
You can also re-thermalize after sampling the energy landscape with each read or ‘shot’ you take, reducing heat leading to noise introduced by the readout process.
- Interferometry
One of the most important parts of any quantum computer is the ability to manipulate the qubit’s spin.
Interferometry refers to a mechanism used to control the state of each qubit.
- The implementation of interferometry depends on the architecture of the quantum computer in question.
See Types of Quantum Computers for a quick rundown of different quantum computing architectures.
- QPU
Commonly used acronym for Quantum Processing Unit
Can be used to describe any quantum computing hardware
D-Wave seems to use this acronym in their documentation more than any other vendor
Fits nicely with acronyms used to describe different classical computing architectures (CPU, GPU, TPU)
1. Computer Science Jargon
- Big O Notation
Common way to describe how much work there is to be done relative to the size of the problem space.
- Where \(N\) is the size of the problem space
For example, \(N\) in the context of prime factorization of an 8-bit prime is equal to \(8\).
- Linear Scaling Example: \(O(N)\)
Example: Simple arithmetic such as addition
Logarithmic Scaling Example: \(O(\log(N))\)
- Exponential Scaling Example: \(O(2^{N})\)
Example: Brute force prime factorization is \(2^{b}-1\) where \(b\) is the number of bits
- Quadratic Scaling Example: \(O(\sqrt{N})\)
Example: Grover’s Algorithm
2. qbitkit-Specific Jargon
- DataFrame
Object from the popular Python data science library Pandas
- Circuit DataFrame
DataFrame describing a quantum circuit