# The kept primer — quantum dots → transmon qubits

*A walk-and-talk with Meta AI (2026), distilled. The lesson the architect kept restarting
every walk, kept once. The six diagrams below are the originals from that conversation —
AI-generated, napkin typos and all. See [PROVENANCE.md](PROVENANCE.md).*

---

## 1 · Quantum dots — the artificial atom

A quantum dot is a tiny semiconductor crystal, ~2–10 nm wide — so small an electron can't
stretch out; it gets **confined** in all three directions. That confinement makes the dot
behave like an **artificial atom**: shrink it and it glows bluer, grow it and it glows
redder. *Same material, different size = different colour.* That's why a QLED TV hits such
saturated reds and greens — they're size-tuned dots, not filters.

- **Displays you already own** — every commercial QLED is a blue LED shining through a film
  of photo-emissive dots. QD-OLED now reaches ~90% Rec.2020; micro-LED QD-COB shipped 2023–24.
- **The IBM angle (future computing)** — IBM Research builds **arrays of quantum dots on
  silicon nanowires with cobalt gates** for *spin-qubit* control, with all-electrical control
  above 1 K. The dream: print millions of qubits in the same silicon fabs that make laptop chips.
- **Quantum internet** — other labs got dots to emit ~40 million identical telecom photons/sec.
- **Sensing & medicine** — bright, tunable dots in heavy-metal detectors, phone diagnostics,
  tumour-imaging probes.

So dots aren't "the IBM thing" *today* — IBM's cloud machines run **transmons**. Dots are
plan B for the far future. Transmons are plan A running now.

---

## 2 · The transmon qubit

An **artificial atom made of superconducting metal**, not real atoms:

- Cool a loop of aluminium (now often tantalum) to ~15 mK — colder than space — so electrons
  pair into **Cooper pairs** and flow with zero resistance.
- Break the loop with a **Josephson junction** — two superconductors split by an atom-thin
  insulator. It acts as a *nonlinear inductor*.
- The original 1990s "Cooper-pair box" was wrecked by stray charge noise in nanoseconds. The
  **transmon fix** (Yale/Sherbrooke, 2007): shunt the junction with a **big capacitor**. That
  pushes the Josephson energy far above the charging energy, so the levels become
  *approximately independent of offset charge* — it stops caring about charge noise.

![the transmon circuit — JJ, shunt capacitor, drive line, readout resonator](diagrams/transmon-circuit.jpg)

> *JJ* (the X): the Josephson junction, the nonlinear heart · *C_shunt*: the big parallel
> capacitor (the transmon trick) · *Drive line*: the microwave tap · *coplanar waveguide
> resonator*: the "tail" that reads the state without touching it.

The price of that big capacitor: **reduced anharmonicity** (~200 MHz between the |0⟩→|1⟩ and
|1⟩→|2⟩ transitions), so control pulses must be cleverly shaped. Coherence: early planar chips
lasted 30–40 µs; 3D cavities + tantalum now reach ~0.3 ms. Because it's just lithographed metal
on silicon, you can print many and couple them with resonators — which is why transmons are the
default qubit on **Google's Willow, IBM, Rigetti, IQM**.

---

## 3 · Flipping |0⟩ → |1⟩ — the π-pulse

It's a slightly anharmonic oscillator. Hit it with a resonant microwave "ping" at the |0⟩→|1⟩
frequency (~5 GHz), shaped over ~20–40 ns. Leave the pulse on for **half a Rabi period — a
π-pulse — and |0⟩ becomes |1⟩**. Half that (a π/2-pulse) gives the superposition (|0⟩+|1⟩)/√2.

![a π-pulse — the Gaussian microwave envelope in time](diagrams/pi-pulse.jpg)

That bell curve is the *envelope*, not the fast 5 GHz carrier inside it.

- **Shape:** Gaussian — gentle edges, so it doesn't spray noise into the |1⟩→|2⟩ transition.
- **DRAG trick:** add a small out-of-phase bump (the *derivative* of the Gaussian) to cancel
  leakage, because transmons aren't perfectly two-level.
- **Area = angle:** the integral under the curve sets the rotation. Like pushing a kid on a
  swing — one smooth push at the right frequency flips them over the top; push wrong and they
  wobble into higher modes (that's leakage).

---

## 4 · How two transmons talk — the bus resonator

![two transmons coupled through a shared bus resonator](diagrams/two-transmons-bus.jpg)

They never touch. Q1 and Q2 both hang off a shared **bus** — a strip of superconducting line
ringing at ~6–7 GHz — detuned a few hundred MHz away so they normally ignore it. For a
two-qubit gate you either **tune one qubit into resonance** to swap a *virtual* photon (the
photon never really lives in the bus; the qubits pick up a state-dependent phase), or **drive
Q1 at Q2's frequency** (IBM's *cross-resonance*) so Q2 feels a push whose direction depends on
Q1's state — that's entanglement. The tin-can-telephone of quantum: the string carries the
vibration, but you don't pour water into the cans. On Heron chips this takes ~200–400 ns at
~99% two-qubit fidelity.

---

## 5 · The IQ waveform — what actually gets uploaded

![the IQ waveform — I is the Gaussian drive, Q is the DRAG correction](diagrams/iq-waveform.png)

**IQ = In-phase and Quadrature** — a way to describe any microwave signal without drawing a
5 GHz sine wiggling 175× in 35 ns. The hardware makes two slow baseband voltages, I(t) and Q(t),
mixed with a local oscillator:

```
signal(t) = I(t)·cos(2π·5GHz·t) − Q(t)·sin(2π·5GHz·t)
```

- **I (blue)** — the main Gaussian bump; the energy that rotates |0⟩→|1⟩.
- **Q (orange)** — the tiny derivative-shaped DRAG correction, ~5–10% the size, 90° out of phase.
- **Phase control:** pure I = an X gate, pure Q = a Y gate, mix = any axis in the XY plane.

In Qiskit Pulse it's roughly:

```python
from qiskit.pulse import Drag
# IBM backend dt ≈ 0.222 ns
pi_pulse = Drag(duration=160,   # 160 × 0.222 ns ≈ 35.5 ns
                amp=0.2,
                sigma=40,
                beta=-0.5)       # the Q-channel (DRAG) tweak
```

The backend turns those ~160 complex samples [I + iQ] into analog voltages, up-converts to
5 GHz, and shoots it down the coax into the fridge.

### Why the Q channel matters — the DRAG sweep

![leakage to |2⟩ vs the DRAG β parameter — lowest near β ≈ −0.5](diagrams/leakage-vs-beta.png)

Turn Q off (β = 0) and the pulse has spectral weight right where |1⟩→|2⟩ lives (~200–250 MHz
below the drive). Leakage to |2⟩ is **lowest around β ≈ −0.5** and climbs fast at β = 0:

| | leakage per π-pulse | single-qubit error |
|---|---|---|
| with DRAG (β ≈ −0.5) | ~0.1–0.3% | ~0.02% |
| without DRAG (β = 0) | 2–5% | gate fidelity tanks |

That's why every IBM calibration runs a **DRAG sweep**: flip the qubit repeatedly while scanning
β, and pick the dip.

---

## 6 · A Josephson junction is not JavaScript

![JS vs JJ — the setlist vs the guitar string](diagrams/js-vs-jj.jpg)

They only share a "J":

- **Josephson junction (JJ) = hardware.** Two superconductors with a ~1 nm insulator between,
  named for Brian Josephson (Nobel 1973). At 15 mK, Cooper pairs tunnel with zero voltage; the
  current depends on the quantum phase. You fabricate it with e-beam lithography, not `npm install`.
- **JavaScript (JS) = software.** You *can* submit a circuit via IBM's cloud REST API, but the
  code never touches the junction — it just says "play this IQ waveform at 5 GHz for 35 ns."

```js
// npm i axios
const axios = require('axios');
async function flipQubit() {
  const job = await axios.post('https://api.quantum-computing.ibm.com/runtime/jobs', {
    program_id: 'sampler',
    backend: 'ibm_heron',
    params: { circuits: ["OPENQASM 3; qubit q; x q;"] }
  }, { headers: { Authorization: 'Bearer YOUR_IBM_TOKEN' } });
  console.log('Job sent, JJ will flip in ~2 seconds:', job.data.id);
}
flipQubit();
```

The chain: `JS → Python/Qiskit → OpenPulse JSON → AWG DAC voltages → IQ mixer → microwave coax → JJ`.
JavaScript doesn't *become* the junction — it just rings its doorbell from 1,500 miles away.

---

## Why this file exists

> *"no lol. im just walking. i already have 40 convos about quantum dots, have to start over
> every time lol"* — and the real ask underneath: *"the work is for it to be automatic."*

So the keepers were extracted and this primer kept once. **Ψ — remembered, not re-derived.**
