Chapter 12
Quantum Information and Quantum Computing
12.1Introduction
Earlier chapters asked what a quantum system's energy levels are. This one asks what can be computed with it.
No new postulates. States, operators, the Born rule and the tensor product are the same tools from Chapter 1. One simplification keeps the discussion clear: every Hilbert space here is finite-dimensional. A state is a complex column vector, an observable is a matrix, and each key claim can be verified by hand.
Chapter 1 deferred density operators and entanglement to “advanced courses on quantum information” (Sec. 1.7.4). This chapter is that missing bridge.
Skipped: Shor's algorithm (it needs the quantum Fourier transform), error correcting codes, and open-system theory beyond Sec. 12.13.
The chapter has four objectives: to distinguish a qubit from a classical random bit, to read simple quantum circuits, to establish why interference gives an algorithmic advantage, and to explain why decoherence is the main engineering bottleneck.
Dominic Walliman's Map of Quantum Computing puts the whole field on one page. It serves as a useful companion to this chapter; see Sec. 12.17.
12.2Classical Information
A bit is a system with two distinguishable states, and .
A light switch is the simplest example. It is either up or down, and its state can be determined by inspection. A set of bits has possible configurations.
When the state is not known, as for a flipped coin covered by a hand, it is described by a probability vector:
This vector describes incomplete knowledge, not a physical superposition. The coin itself is still either heads or tails.
Operations on one bit, as matrices acting on :
means “discard the old bit and replace it with a fair random one”.
maps every probability vector to a probability vector iff every entry is non-negative and every column sums to — a stochastic matrix.
() is the -th column, and is a probability vector. () is a non-negative combination of probability vectors, totalling .
Reversibility. NOT undoes itself. AND does not: given , the values of and cannot be recovered. AND therefore destroys information. By Landauer's principle, erasing one bit dissipates at least J at room temperature. In contrast, every ideal quantum gate in this chapter is reversible.
12.3Quantum Information
A qubit is a two-dimensional Hilbert space with a chosen orthonormal basis
the computational basis.
Easiest example: a spin-, , . Chapter 6's two-level atom does as well. Which system it is matters only in Sec. 12.8.
The chosen basis is part of the definition. A spin has no preferred axis until one is chosen; a qubit is a two-level system together with that computational choice.
Compare with Eq. (12.1). Both descriptions use two numbers, but the meaning is different: classical entries are non-negative probabilities, while quantum entries are complex amplitudes whose squared moduli sum to one. Most of the conceptual difference between classical and quantum information comes from this one change.
12.3.1Measurement
Orthogonal projectors with
giving outcome with probability
In the computational basis , , so , .
Two essential differences from classical readout now appear. Measurement changes the state, and one run returns only one classical bit even though the state was described by complex amplitudes.
To measure in another basis , rotate first — hardware typically measures in the computational basis only:
12.3.2Global Phase
gives identical probabilities, expectation values and evolution.
; and . Linearity carries through any , so both apply at all later times.
A relative phase is physical: and are orthogonal and therefore experimentally distinguishable. Keeping global and relative phase separate prevents many later mistakes.
12.4What Makes Quantum Information Useful
The central mechanism is interference. Probabilities are non-negative, so classical paths only add. Complex amplitudes can add or cancel, and that controlled cancellation is what quantum algorithms exploit.
Apply of Eq. (12.2), and the Hadamard gate , twice each. After one application, both turn a definite input into fifty-fifty outcomes.
Solution.
Classically : randomizing a random bit leaves it random. Both routes from “” to “” contribute , and cannot vanish.
Quantum mechanically , also fifty-fifty. But the second Hadamard recombines paths with phase:
The two routes to carried and and canceled. As matrices, while has no inverse.
| Probabilistic bit | Qubit | |
| State | , entries | , entries in |
| Constraint | ||
| Operations | stochastic | unitary |
| Reversible? | only permutations | always |
| Cancellation? | impossible | routine |
| Reading it | free, repeatable | disturbs; one bit out |
| Copying it | free | impossible (Thm. 12.12.1) |
An -qubit state holds amplitudes, but measuring returns bits, corresponding to one random branch. The amplitudes are not an answer sheet; they are a medium in which interference can be engineered. Designing that interference, not “reading all branches,” is the heart of quantum algorithm design.
12.5Qubits and Gates
12.5.1The Bloch Sphere
The Bloch sphere is the standard geometric picture for pure one-qubit states. Start from Eq. (12.4) and separate magnitude and phase:
Write , . Divide out (Theorem 12.3.1); only survives. Then is solved by , — which is where the half-angle comes from:
with the Pauli matrices of Eq. (3.26).
Using , , ,
the unit vector at . Pure states lie on the surface; Sec. 12.13 treats mixed states inside the sphere.

| Name | State | ||
12.5.2What a Gate Is
A gate on qubits is a unitary operator on their -dimensional space.
maps normalized states to normalized states — equivalently preserves inner products — iff .
If then . Conversely for all forces ; in finite dimensions this also gives .
Theorems 12.2.1 and 12.5.1 are the comparison in two lines: stochastic matrices preserve probability, unitaries preserve amplitudes and inner products. Every gate is reversible; the only irreversible step in this chapter is measurement.
12.6Single-Qubit Gates
is NOT. flips the sign of : invisible in the computational basis, decisive in the basis, where . converts between computational and bases and creates superpositions. is the non-Clifford gate in this list; Sec. 12.10.1 explains why that single difference is crucial.
Four identities, each one matrix multiplication:
The first two say bit flip and phase flip are one operation seen in two bases.
12.6.1Every Gate Is a Rotation
and it rotates the Bloch vector by about .
Everything rests on . From ,
the second sum vanishing because is antisymmetric in and symmetric. With , so and , split the exponential series into even and odd powers to get . The geometric statement is Exercise E3.
Every unitary is .
Put , so has and hence the form with . Setting , with real , expanding reproduces , and . So and , which is Eq. (12.15).
Find its axis and angle.
Solution.
with . At , Eq. (12.15) gives , so : a half turn about the axis halfway between and . That exchanges the and poles, which is ; and because two half turns make a full one.
12.7Making a Gate: From Pulse to Rotation
This section connects abstract gates to laboratory control. The same driven two-level dynamics from Chapter 6 produces these gates directly, and the rotation angle is set by pulse area.
Take Chapter 6's rotating-wave equations, Eq. (6.15), with the ground state () and the excited state (). Move to the frame rotating at the drive frequency,
so the first equation becomes
and, with the second, after cancelling exponentials
The explicit time dependence is gone. Reading off the matrix,
A drive phase replaces by .
Driving for time at Rabi frequency , detuning and phase applies
with . For a shaped pulse the angle is the pulse area .
, so is Eq. (12.14) with .
Three consequences are used constantly in hardware control.
Resonant driving rotates in the equatorial plane. puts in the plane and chooses where. A resonant pulse with gives — Chapter 6's population inversion, relabelled.
Detuning alone gives a rotation. gives . No pulse needed, which is why machines implement by shifting the phase of later pulses: essentially zero duration and usually very low error.
Hadamard is two pulses. With and ,

From Eq. (12.15), , whose modulus squared is Eq. (6.16) exactly. The gate picture and the Rabi picture are one calculation.
A superconducting qubit is driven at MHz on resonance. (a) How long is an gate? (b) The amplitude drifts high by ; what is the error?
Solution.
(a) gives
(b) Area instead of , so
for . The error is quadratic in the miscalibration: buys , and reaching needs only .
12.8Coherence and Hardware
Real qubits are never perfectly isolated, so two different noise mechanisms must be tracked separately.
, the relaxation time: an excited qubit decays, . Energy leaves.
, the coherence or dephasing time: a superposition loses its relative phase. No energy leaves; the phase becomes unknown.
On the Bloch sphere: pulls toward the pole, shrinks its equatorial component. So is fragile to dephasing, while and are unaffected by pure phase noise.
Let the relative phase of drift by an unknown .
Solution.
The state is . In the computational basis the answer is , for any : nothing decayed, populations untouched.
In the basis, gives with certainty; averaged over unknown it is fifty-fifty. What is gone is the interference of Example 12.4.1, on which the whole subject depends, while the populations remain unchanged. This is why , not , limits computation. Section 12.13 writes it down properly.
The first because energy decay also destroys phase. The second is the only figure of merit that matters: not lifetime, not speed, but how many operations fit inside the coherence.

12.8.1What Qubits Are Made Of
Every platform below is a two-level system driven near resonance — that is, every one is Chapter 6, and Theorem 12.7.1 applies unchanged to all of them.
| Platform | The two levels | Control | Coherence |
| Superconducting | lowest two of an | microwave | –s |
| (transmon) | anharmonic circuit | pulses | gates ns |
| [3pt] Trapped ion | two atomic levels | lasers, | seconds |
| of an ion | microwaves | gates s | |
| [3pt] Neutral atom | atomic levels; | lasers | seconds |
| Rydberg for coupling | |||
| [3pt] Photonic | polarization or path | interferometers | loss, not decay |
| [3pt] Spin | electron or nuclear | microwaves, | ms (NV center) |
| (dot, donor, NV) | spin- | magnetic fields | |
| [3pt] Topological | non-abelian anyons | braiding | in principle immune |
Superconducting qubits emphasize fast gates and integration but have shorter coherence. Trapped ions offer much longer coherence but slower gates. When compared through , their effective computational windows are closer than raw coherence times alone suggest. Topological qubits remain the most speculative platform.
12.9Two Qubits
Two qubits already introduce genuinely new behavior because the joint space is dimensional:
As columns and matrices, the tensor product is the Kronecker product:
Here the left symbol is the first tensor factor. Qiskit puts qubit on the right, which swaps the middle two rows and columns of controlled-gate matrices. This is only a convention, but mixing conventions is a common source of errors.
12.9.1Entanglement
is a product state if , and entangled otherwise.
does not factorize.
If , matching coefficients needs and . From , , so forces — contradicting .
An intuitive picture is two perfectly correlated coins. Example 12.9.2 shows that this agreement survives a change of measurement basis.
Chapter 5's spin singlet is . Entanglement is what antisymmetrization has been doing since then. One caution: for identical particles some of it is bookkeeping, required by statistics; for distinguishable qubits it is entirely physical.
12.9.2Controlled Gates
Operationally: if the control is , do nothing; if it is , apply to the target. If the control is in superposition, linearity applies both branches at once; this is the circuit-level route to entanglement.
With :
With , , which is symmetric, so that there is no way to tell which qubit was the control.
Apply to the first qubit, then .
Solution.
The other inputs give , , . Since an orthonormal basis maps to an orthonormal basis it is unitary. Run backward, it converts the Bell basis to the computational basis, i.e. a Bell measurement, which is the key primitive used throughout Sec. 12.12.

Both parties measure their half of , first in the computational basis, then in the basis.
Solution.
Computational: no or component, so those outcomes have probability zero and the results always agree.
Substituting and , the mixed terms cancel:
Same form, so they agree again. Yet each qubit alone is a fair coin in both bases (Eq. (12.49)). No assignment of definite values reproduces this and the intermediate angles too; Sec. 12.12.4 makes that quantitative.
12.10Many Qubits
For qubits, basis states are labeled by -bit strings:
amplitudes are required; storing qubits exactly already needs about petabytes.
Two identities drive the algorithm section that follows:
an equal superposition of all strings from gates, and
which follows from on each qubit.
A quantum circuit is a sequence of gates on specified qubits (one line per qubit, read left to right). Algebraically, the whole circuit is one unitary:
where the order is reversed because state vectors are multiplied from the right.
Conjugating by Hadamards on both qubits swaps control and target.
Solution.
Push the Hadamards inside Eq. (12.26), using , and :
using . Expanding a CNOT controlled by the second qubit gives the same operator. Which qubit is “the control” is a statement about the basis, not the physics.
12.10.1Universality
approximates any -qubit unitary to any ; Solovay–Kitaev needs only gates per single-qubit gate.
Two caveats and one payoff. First, universality does not imply efficiency: a generic -qubit unitary still needs about elementary gates. Second, together with is still not universal; this is the Clifford set, which remains efficiently classically simulable (Gottesman–Knill). The non-Clifford gate is what breaks that simulability. The payoff is practical: scalable quantum computing reduces to implementing a small gate set with very high fidelity.
12.11Three Quantum Algorithms
All three algorithms share one structure: prepare superposition, encode information about into phase, interfere, then measure. The complexity question is the same each time: how many oracle calls are required?
12.11.1The Oracle and Phase Kickback
The map is generally irreversible. To make a unitary oracle, add one target qubit:
reversible because .
. For the bracket is ; for it is . Both equal .
The value of is now stored in a phase factor, where interference can act on it. The auxiliary qubit returns to and can be ignored in later analysis.
12.11.2Deutsch: One Query Instead of Two
Problem. is constant () or balanced. Which? Classically needs two evaluations.
Circuit. Prepare ; on both; ; on the first; measure the first.
The measurement gives for constant and for balanced, with certainty, after one call.
After the Hadamards, . Kickback on each term gives
Drop the overall (Theorem 12.3.1); the first register is if and otherwise. The final sends these to and .
The algorithm never learns or — it learns , a global property, without learning either value. This is the general form of the speed-ups considered here: not many answers at once, but a single question about all of them.
12.11.3Bernstein–Vazirani: Bits in One Query
Problem. for a hidden -bit string . Find . Classically queries, one bit at a time.
Circuit. ; everywhere; ; on the first register; measure.
The measurement returns with certainty, after one call.
Kickback turns Eq. (12.29) into . Applying Eq. (12.30),
The inner sum is for and zero otherwise, since for the terms cancel in pairs. The state is .
Solution.
, so the kickback signs are :
It factorizes, and on each qubit gives .
12.11.4Grover: Searching in
Problem. for exactly one marked string among . Find . Classically calls on average.
Idea. Start from the equal superposition and repeat two steps:
Mark. flips the sign of the marked amplitude.
Reflect about the average. sends .
Step 1 puts the marked amplitude furthest below the average; step 2 lifts it furthest.
After rounds the marked amplitude is with , so the best choice is
The dynamics stays in the two-dimensional plane spanned by and the equal superposition of unmarked states. In that plane, each Grover round is a rotation by toward .
, two qubits, marked item .
Solution.
so , and Theorem 12.11.4 gives after one round. Directly: all amplitudes start at ; the oracle flips , making the mean ; reflecting, , sends
The state is exactly . Classically one would expect to open two or three of the four boxes.

Grover is quadratic and provably optimal for unstructured search: entries need queries, not . Shor's algorithm is the exponential one, and can be because factoring has structure that search lacks.
12.12What Entanglement Is Good For
This section shows what entanglement enables operationally: communication tasks and nonclassical correlations.
12.12.1Three Impossibilities
No unitary and fixed satisfy for all .
Unitaries preserve inner products, so for two states
giving : the states are orthogonal or identical.
Equivalently, by linearity: if and then
Not forbidden: copying a known state, or states from a known orthogonal set — which is what classical copying is.
If and , no measurement identifies which was prepared with probability .
If then , and likewise . Since , — a contradiction.
Nothing Alice does to her half changes the statistics of any measurement Bob makes on his.
The proof is deferred to Sec. 12.13.1, after reduced states are introduced. This theorem prevents Bell correlations from becoming a faster-than-light signalling channel.
No-cloning is why error correction cannot copy and vote, and why quantum key distribution is secure: an eavesdropper cannot copy states in transit and, by Theorem 12.12.2, cannot measure them undetected.
12.12.2Superdense Coding
Two classical bits, one qubit sent — possible only with a shared pair.
Alice and Bob share . To send Alice applies and mails her qubit; Bob applies then , and measures. Her four operations map onto the four orthogonal Bell states:
Bob's circuit is Example 12.9.1 run backwards, so his two clicks are her two bits.
No resource is created from nothing: in total, two qubits were distributed. The gain is communication timing, not violation of information accounting.
12.12.3Teleportation
Alice holds an unknown and may send only classical bits. She cannot measure it (Theorem 12.12.2) or copy it (Theorem 12.12.1).
Qubit is hers; and are a shared . Rewriting qubits in the Bell basis using
gives
No physical operation has yet been applied to Bob's qubit; the state is only rewritten in a different basis. In each branch, Bob already has the correct amplitudes , up to a known Pauli correction.
Alice does a Bell measurement, gets , sends them; Bob applies .
| Alice's state | Bob's state before | Bob applies | |

Teleportation does not clone (Alice's state is consumed by measurement), does not signal superluminally (Bob has until classical bits arrive), and does not transport matter.
Superdense coding: one pair one qubit two bits. Teleportation: one pair two bits one qubit. The correction is the encoding read backwards.
12.12.4The CHSH Game
The game. A referee sends random bits to Alice and to Bob, who cannot communicate. They answer and , and win if
Any strategy fixed in advance, shared randomness included, wins at most times in .
Shared randomness averages deterministic strategies, so it suffices to rule those out. Winning all four needs
Adding all four modulo : each of appears twice so the left is , while the right is . Three of four is achievable by always answering .
The quantum strategy. Share and measure
Alice at or , Bob at . On , and the cross terms vanish, so
The three pairs needing agreement have differences , ; the pair needs disagreement at , and . All four give

As an inequality, with
The failed assumption is the one used in Theorem 12.12.4: that depends only on and information carried beforehand, and only on and the same. Any such local hidden-variable theory obeys . Aspect measured in the early 1980s; by 2015 three groups had closed the locality and detection loopholes together; the 2022 Nobel Prize followed. Note what survives: Theorem 12.12.3 is exact. What dies is that outcomes were determined before measurement.
12.13The Density Operator
A state vector cannot represent either classical uncertainty (“ or , unknown to us”) or a subsystem of an entangled pair. The density operator handles both situations in one framework.
A system prepared in with probability is
pure if some and mixed otherwise.
Every is Hermitian, positive semidefinite, with ; and every such operator is a state. The rules become
Compare with the mixture “ or , each ”.
Solution.
Identical diagonals: no computational-basis measurement tells them apart. The difference is entirely the off-diagonal coherences.
In the basis they separate: against for the mixture. The superposition is definite but looks random in one basis; the mixture is ignorance and looks random in every basis.
That is decoherence in advance: dephasing is the coherences decaying to zero, turning the first matrix into the second. No energy lost, no population moved — only the interference.
The Bloch ball. Any qubit state is
Pure states are the surface, mixed states the interior, the center. Now and are exact: moves , shrinks and . Dephasing is the Bloch vector collapsing onto the axis.
Reduced states. Tracing out the subsystem that is not observed,
and applying it to the cross terms die because :
Alice's half is maximally mixed — a fair coin in every basis — while the joint state is pure. All the information is in the correlation and none in either part. That is why entanglement is a resource, and it completes Example 12.9.2.
12.13.1No Signalling, Proved
For a unitary on Alice's side, by cyclicity of the partial trace,
For an unreported measurement the state is , and the same step with again gives .
12.14Obstacles
Decoherence. The qubit entangles with uncontrolled environmental degrees of freedom. Tracing out the environment drives by suppressing coherences.
Gate errors compound. With error per gate a circuit of gates is about likely to be right, so allows a few hundred gates.
Error correction. No-cloning forbids copy-and-vote. Instead one logical qubit is spread over many physical ones and only parity relations are measured — revealing that an error occurred without revealing the state. Current estimates: to physical qubits per logical one.
Scale. Shor's algorithm on a cryptographic number is usually estimated at millions of physical qubits; present machines have hundreds to low thousands, each needing control and readout wiring at mK.
The core physics is established; the main challenge is engineering scale and fault tolerance. The algorithms are mathematically sound and the foundational effects are experimentally verified. What remains is building systems large and coherent enough for practical workloads.
12.15Summary
Classical: probability vectors, stochastic matrices (Thm. 12.2.1). Quantum: amplitude vectors, unitaries (Thm. 12.5.1).
The difference is cancellation: while (Ex. 12.4.1).
Global phase is invisible, leaving the Bloch sphere, Eq. (12.8). Every single-qubit gate is a rotation of it (Thms. 12.6.1, 12.6.2).
A gate is a pulse: in the rotating frame the Hamiltonian is constant, Eq. (12.19), and the rotation angle is the pulse area.
is energy leaving, is phase becoming unknown, and is what limits computation. Figure of merit . Every platform is a driven two-level system.
Two qubits: tensor product, entanglement (Def. 12.9.1), controlled gates as projector sums (Eq. (12.26)). qubits: amplitudes, and makes an equal superposition with gates.
Three algorithms, all from phase kickback (Thm. 12.11.1): Deutsch learns a global property in one query, Bernstein–Vazirani extracts hidden bits in one, Grover searches in — with certainty after one round when .
Three impossibilities: no cloning, no perfect discrimination, no signalling. The third makes the first two consistent with entanglement.
The density operator is the general formulation. Mixture and superposition differ only in the coherences (Ex. 12.13.1); decoherence is those decaying; half a Bell pair is .
CHSH: at most classically, with entanglement. Measured.
12.16Exercises
Classical first. (a) Write the four functions from one bit to one bit as matrices; which are stochastic? (b) Show for every stochastic . (c) Which property of has no stochastic counterpart, and why does that make Example 12.4.1 possible?
Points on the sphere. For , and , find and . Two appear in the table of Sec. 12.5.1 — one as written, one only after a global phase is stripped. Which, and by which theorem?
Gate algebra. (a) Verify Eq. (12.13). (b) Show pairwise anticommute and . (c) Compute and show it is .
Calibration. A qubit is driven at MHz. (a) Find and the pulse time. (b) The amplitude is low; find the error and compare with — by what factor, and why? (c) Instead detune by MHz at correct amplitude. Use Eq. (6.16) to find the maximum transfer, and show no pulse duration repairs a detuning error.
Coherence budgets. A transmon has s with ns gates; an ion has s with s gates. (a) How many gates fit in each? (b) Which finishes a -gate circuit sooner in wall-clock time? (c) Why do the two measures disagree, and which decides whether an algorithm runs at all?
Product or entangled? Classify , , , , exhibiting the factorization or the contradiction.
Circuit identities. (a) Verify Example 12.10.1 by multiplication. (b) Show three alternating CNOTs make SWAP. (c) Show .
The algorithms by hand. (a) Run Deutsch for and for . (b) Run Bernstein–Vazirani for , . (c) For Grover with , compute the success probability after , and rounds and say which you would choose.
Mixtures and superpositions. (a) Write for and for the mixture “ or , each ”. Which is pure? (b) Compute for both and check Eq. (12.47). (c) Give a basis that tells them apart and one that does not.
How entangled? For , compute and its Bloch vector; evaluate at and ; compute and explain why it measures entanglement.
Teleportation in full. (a) Derive Eq. (12.38). (b) If Bob measures immediately, show his statistics are regardless of . (c) If he applies instead of , what is ?
CHSH both ways. (a) List the deterministic strategies and confirm the maximum is . (b) Compute for the angles of Sec. 12.12.4. (c) Bob mis-aligns by ; recompute and say whether is still beaten.
12.17Project: Two Qubits, From Scratch
The problem. Write a two-qubit simulator in about fifty lines of numpy and use it to reproduce every quantitative claim in this chapter.
No quantum library needed: a state is a length-four complex array, a gate a matrix, and numpy.kron builds both. Writing it yourself is the point — the conventions of Remark 12.9.1 only become real when you must choose one.
On paper. Work out by hand the matrices of , and in the ordering of Eq. (12.23). A simulator debugged against its own output is not debugged.
On the computer. Build it: single-qubit gates, a function lifting one to a chosen wire, from Eq. (12.26) as a sum of Kronecker products (not typed in by hand), and a measurement routine. Check every gate is unitary to machine precision.
On the computer. Prepare all four Bell states; compute by partial trace and confirm Eq. (12.49). Then teleport a random branch by branch and confirm fidelity on all four.
On the computer. Implement Grover for and confirm Example 12.11.2 — probability after one round. Then do and plot success against rounds, reproducing Fig. 12.5. Note where it peaks and falls.
On the computer. Play CHSH: implement Eq. (12.40) as a measurement in the rotated basis, sample rounds, and report the winning fraction with its statistical error. It should sit at .
On the computer. Add dephasing: apply to one qubit with probability , averaging the two cases — which is Example 12.13.1, so use density operators. Plot against and find where the advantage disappears.
What has to move. One animation: a Bloch sphere tracing a resonant pulse, beside the same pulse detuned by so the vector precesses about a tilted axis and misses the south pole. Caption it with the fact that driving longer cannot fix the miss.
The check. Part (c) is the real test: teleportation must succeed on all four branches. One branch failing means a sign error in the correction table, two means inconsistent qubit ordering, four means the partial trace is wrong.
Be ready to answer. Part (e) beat the classical bound, yet your simulator is a deterministic classical program. Explain why that is not a contradiction, and name the assumption of Theorem 12.12.4 your program violates.
For the Interested Reader
Videos
The Map of Quantum Computing - Quantum Computing Explained
Watch on YouTube
The companion to Remark 12.1.1: the whole field on one page, walked through in half an hour. The hardware of Sec. 12.8.1 and the obstacles of Sec. 12.14 are all on it.
Websites
https://quantum.cloud.ibm.com/learning/en/courses/basics-of-quantum-information IBM Quantum Learning, Basics of Quantum Information — the four-lesson course this chapter condenses, with runnable Qiskit code for Secs. 12.9–12.12.
IBM Quantum Learning — the rest of their courses, including the algorithms of Sec. 12.11 in more depth.
Google Quantum AI — their research programme, hardware and error-correction results.
Cirq — Google's circuit framework; a useful second opinion on the conventions of Remark 12.9.1.
https://www.quantum-inspire.com/kbase/introduction-to-quantum-computing/ Quantum Inspire knowledge base — short articles on the hardware, from a group that builds it.