Continuous-Variable Quantum Computing
Every architecture in this chapter so far has taken the qubit — a two-level system living in — as the atom of computation. Continuous-variable quantum computing throws that atom away and rebuilds the machine on the quadratures of a bosonic mode: the position and momentum operators of a quantum harmonic oscillator, with and a state space that is the infinite-dimensional . This is not an exotic choice. A mode of the electromagnetic field, a microwave photon in a superconducting cavity, a vibrational mode of a trapped ion — each is exactly this oscillator, and each comes with a mature toolbox: beamsplitters, phase shifters, squeezers, displacements, and homodyne detection that reads a quadrature directly off a photocurrent. The field is organized by one sharp dichotomy. Gaussian resources — vacuum, coherent, squeezed and thermal states, together with the operations generated by Hamiltonians at most quadratic in — are powerful, deterministic, and experimentally cheap, yet they are also classically simulable: everything reduces to tracking a mean vector and a covariance matrix. Non-Gaussian resources — a cubic phase gate, photon counting, a GKP grid state — are the scarce, expensive ingredient that buys universality and error correction. The entire computational power of a CV machine, and its entire error-correction problem, is squeezed into that single non-Gaussian element and into one stubborn physical fact: ideal CV resources carry infinite energy, so finite squeezing is not a small correction but the master engineering constraint.
- CV quantum computing encodes information in the continuous quadratures of bosonic modes; the Hilbert space is the infinite-dimensional , not a qubit's .
- Gaussian states and Gaussian operations (squeezing, beamsplitters, phase shifts, displacements, homodyne) are efficiently classically simulable — so quantum advantage demands at least one non-Gaussian element: a cubic phase gate , photon counting, or a non-Gaussian state.
- The Gottesman–Kitaev–Preskill (GKP) code hides a qubit in the grid states of a single oscillator, converting small continuous shifts into correctable syndromes and bridging CV hardware to fault-tolerant qubit logic.
- Measurement-based CV computing builds a Gaussian cluster state from squeezed light plus controlled- couplings and drives it with adaptive homodyne measurements; the byproducts are continuous displacements, not discrete Paulis.
- Finite squeezing sets an intrinsic noise floor per gate: infinite squeezing means infinite photons, so fault tolerance becomes a question of squeezing thresholds (roughly 10 dB and beyond).
- Key idea: Replace the qubit by a bosonic mode — information lives in continuous quadratures . Quadratic (Gaussian) operations are powerful but classically simulable; the whole computational power and the whole error-correction problem are governed by the single non-Gaussian element and by the finiteness of squeezing.
Replace the qubit by a bosonic mode: information lives in continuous quadratures . Quadratic (Gaussian) operations are powerful but classically simulable — the entire computational power and the entire error-correction problem are governed by the single non-Gaussian element and by the finiteness of squeezing.
Where this lives today
CV computing is no longer a paper architecture — it is the engine of some of the largest entangled systems and clearest advantage demonstrations built to date. In photonics, the Furusawa and Andersen groups have generated deterministic two-dimensional CV cluster states in the time domain, weaving tens of thousands to over a million entangled modes from a handful of squeezers and delay lines (Asavanant et al. and Larsen et al., both Science 2019) — a scalability no probabilistic photonic-qubit scheme can match, because the entanglement is made by beamsplitters, not by rare photon coincidences. On the near-term-advantage front, Gaussian boson sampling turns a Gaussian state plus photon counting (a non-Gaussian measurement) into a classically hard sampling task whose probabilities are matrix hafnians; USTC's Jiuzhang and Xanadu's programmable Borealis processor (216 squeezed modes, Nature 2022) both claimed quantum computational advantage this way. The record for the raw resource itself stands at of optical squeezing (Vahlbruch et al., 2016). Meanwhile the fault-tolerance program has moved into superconducting cavities and trapped ions: GKP grid states have been stabilized in a single high- microwave mode with real-time syndrome feedback, and in 2023 a Yale team demonstrated GKP quantum error correction that beats break-even — the encoded qubit outlives its best physical component. The open frontier is deterministic non-Gaussian resource injection: manufacturing GKP or cubic-phase states on demand, at high enough squeezing, to seed a scalable, fault-tolerant CV machine.
The physical picture
Picture each mode as a fuzzy point in a two-dimensional phase plane . The vacuum is a symmetric disk of variance in every quadrature — the irreducible Heisenberg blur. A coherent state is that same disk pushed off the origin by a displacement. Squeezing deforms the disk into an ellipse: it presses one quadrature's variance below the vacuum floor, , while the conjugate quadrature swells to , so the product — the area — is conserved. Every Gaussian gate does nothing but rotate, shear, rescale and translate such ellipses. It is linear optics plus squeezing, and it can never bend the ellipse into a crescent or drive the Wigner function negative. That bending is precisely what a cubic gate or a photon-number measurement does, and it is precisely what makes the output hard to simulate.
The continuum is both blessing and curse. A single mode can, in principle, hold an unbounded amount of information, and it lets you carry a full qubit "for free" inside one physical object through the GKP code. The trick is to encode logical states not as two levels but as two interleaved combs of position eigenstates: the logical- comb sits on even multiples of , the logical- comb on odd multiples, spaced by . A small drift in or moves a peak only a little; as long as it stays inside the half-cell radius , measuring and modulo diagnoses the shift and undoes it. The curse is that a comb of true delta peaks has infinite energy; every real GKP state replaces the deltas by finite-width Gaussians, and that residual width is the entire error budget.
Two roads reach universal CV computation, mirroring the qubit world. The circuit model assembles a universal set from displacements, single-mode squeezers, beamsplitters/phase shifters, and one non-Gaussian gate — canonically the cubic phase gate . The measurement-based model of Menicucci and collaborators prepares a Gaussian cluster state from momentum-squeezed modes coupled by , then computes by streaming adaptive homodyne measurements, with a single non-Gaussian (photon-counting) measurement injecting the magic. It is qubit one-way computing "with a dial instead of a switch": the local-oscillator phase is a continuous knob, and the byproduct operators are continuous displacements. In every version the boundary between easy and powerful is the same — the negativity of the Wigner function, promoted by Hudson's theorem and by Mari–Eisert to the CV analogue of magic.
The core equations
A single mode is a quantum harmonic oscillator, and the entire formalism grows from its canonical algebra. We work in natural units , so the vacuum carries variance in each quadrature, and the quadratures package into ladder operators.
where: — position (amplitude) and momentum (phase) quadratures of the mode; — annihilation and creation operators; — imaginary unit. Reading: the mode is one oscillator; every state and gate below is an operator statement about this single commutation relation. The two workhorse Gaussian state-preparations are displacement, which slides a state rigidly across phase space, and squeezing, which deforms it. Together with beamsplitters they generate every Gaussian state from the vacuum.
where: — complex displacement amplitude; — squeezing parameter, setting the degree and the axis; acts as . Reading: moves the ellipse, squashes it — the two moves the phase plane allows besides rotation. A Gaussian state is defined by having a Gaussian Wigner function, so it is completely fixed by first and second moments: a mean vector and a covariance matrix. This is the compression that makes Gaussian physics tractable — and, ultimately, classically simulable.
where: — real symmetric covariance matrix; ; — anticommutator (symmetric ordering); — symplectic form. Reading: the inequality is the multimode Robertson–Schrödinger uncertainty relation; it is the physicality constraint every legal Gaussian state must satisfy. Every Gaussian unitary — squeezers, beamsplitters, phase shifters, displacements — acts on the quadrature vector as an affine symplectic map. The linear part must preserve the symplectic form, which is exactly the group .
where: — real symplectic matrix; — real displacement vector; — symplectic form, preserved by all Gaussian unitaries. Reading: "Gaussian gate" and "affine symplectic map on phase space" are two names for the same object. The entangling gate of CV cluster states is the controlled-, a two-mode Gaussian unitary generated by . In the Heisenberg picture it is a shear: the target's momentum inherits the control's position.
where: — position quadratures of the two coupled modes; — momentum of the target mode. Reading: this shear is the "wire" that links cluster nodes; measuring one node then teleports a gate onto its neighbour. The Gottesman–Kitaev–Preskill code embeds a qubit in one oscillator through a lattice of stabilizers — two commuting translations — with the logical codewords supported on interleaved position combs.
where: — stabilizer translations by in and ; — logical-zero codeword, a comb of position eigenstates. Reading: because the two stabilizers commute (Weyl phase ), so the code space is well defined; shifts by . Universality needs one Hamiltonian of order three or higher. The cubic phase gate is the canonical choice; its Heisenberg action is nonlinear in , which is exactly what lifts it out of the symplectic group.
where: — cubicity strength; — lowest-order non-Gaussian generator; — the state-dependent (quadratic-in-) momentum kick. Reading: the kick depends on , so the map is not of the affine form — the state cannot remain Gaussian, and universality (Lloyd–Braunstein) follows. Finally, the physical cost. Ideal squeezing is infinite squeezing; any real resource has finite , leaving a residual variance and demanding a finite but growing number of photons.
where: — squeezing parameter; — squeezed-quadrature variance, the noise injected per cluster link; — mean photon number, diverging as . Reading: means , i.e. and variance — and already photons; ideal resources sit at .
The goal is to prove that the elementary step of CV one-way computing — homodyne-measuring one node of a two-mode cluster — teleports a tunable single-mode Gaussian gate onto the neighbour, with the measurement outcome contributing only a known displacement byproduct. We take mode 2 carrying the input, mode 1 a momentum-squeezed ancilla approximating , joined by , then measure a rotated quadrature of mode 1 and read off what happens to mode 2. This is the CV analogue of the qubit one-way computer's measure-and-feedforward step.
Step 1. Entangle. Apply ; in the Heisenberg picture it shears both modes, and , leaving positions untouched. Why: the shear is what correlates the two modes so that a measurement of one constrains the other.
Step 2. Choose the basis. Homodyne mode 1 along quadrature angle , i.e. project onto an eigenstate of with real outcome . Why: the local-oscillator phase is the continuous "dial" — it selects which single-mode gate gets teleported.
Step 3. Eliminate the ancilla. In the ideal momentum-squeezed limit and is maximally uncertain; conditioning on the outcome and substituting the shear relations expresses the surviving quadratures of mode 2 as rescaled, rotated copies of the input, and . Why: the ancilla's infinite momentum-uncertainty is what lets it be "measured away" without disturbing the encoded information.
Step 4. Read off the gate and the byproduct. The -family is a one-parameter set of single-mode Gaussian gates (a rotation combined with a squeeze); the outcome enters only as a displacement, corrected by feedforward or commuted to the end. Chaining teleportations along a wire builds any single-mode Gaussian unitary, and transverse links supply two-mode gates. Why: this is exactly how a Gaussian cluster state becomes a programmable Gaussian processor — the graph is the hardware, the measurement angles are the program. *Verified: reduces to the standard Menicucci–van Loock–Furusawa CV one-way relations; in the maximally-squeezed limit it reproduces ideal Gaussian gate teleportation.*
Go deeper · Derivation B · 2 minGKP correction of small shift errors
The goal is to show that an unknown continuous shift error, provided it is smaller than half a lattice cell, is exactly diagnosed and undone by measuring the two stabilizers — that is, by reading and modulo . Generic CV errors are displacements : a position kick and a momentum kick . The ideal GKP codeword is invariant under shifts of and its logical operators are shifts of , so the whole error-correction question becomes: how far can drift before the syndrome points to the wrong cell?
Step 1. Extract the syndrome. Measuring the stabilizer phases returns and ; for an ideal codeword both are , and a shift makes them and . Why: the stabilizers see only the fractional position within a cell, so they reveal the error without revealing — or disturbing — which logical state you hold.
Step 2. Decode. Round each residue to the nearest multiple of and apply the opposite shift. If the rounding recovers the true kick and restores the codeword exactly; if the rounding lands in the neighbouring cell and applies a logical or . Why: the correctable radius is set purely by the geometry — half the distance between logical peaks, .
Step 3. Fix the lattice. Choosing period makes and commute (Weyl phase ), so they form a legal stabilizer group, while the half-period logical shifts by carry phase and hence anticommute as must. Why: the code only exists because these two numbers, and , land on the right side of the Weyl relation.
Step 4. Pay the finite-energy price. Real GKP states replace each delta by a Gaussian of width ; the syndrome then has intrinsic spread and the logical error is the Gaussian tail beyond , falling roughly as . Why: this tail is what turns "how much squeezing?" into "what logical error rate?" — the squeezing threshold for fault tolerance. *Verified: matches Gottesman–Kitaev–Preskill (2001) — correctable radius for the square lattice, with logical error governed by the Gaussian tail.*
Go deeper · Derivation C · 1 minWhy Gaussian-only circuits are classically simulable
The goal is to sketch the extended Gottesman–Knill theorem for CV: if inputs, gates, and measurements are all Gaussian, the entire computation — including its output statistics — can be sampled on a classical computer in polynomial time. The engine is the compression of equation (3): a Gaussian state on modes is not -dimensional data but the pair , only real numbers. We check that every allowed operation keeps us inside that manifold with only polynomial work.
Step 1. Represent. Store any Gaussian input (vacuum, squeezed, thermal) as its mean and covariance — classical memory, not an exponential list of amplitudes. Why: this is the whole ballgame; the exponential wall that defends qubit hardness is simply absent for Gaussian states.
Step 2. Evolve. A Gaussian unitary acts as , — matrix multiplications costing . Why: symplectic evolution never leaves the Gaussian manifold, so no new parameters are ever generated.
Step 3. Measure. Homodyne detection of one mode is a Gaussian measurement; the conditional mean and covariance of the rest follow from Schur-complement formulas, again linear algebra, and the outcome is drawn from a multivariate Gaussian — efficiently sampled. Why: even the randomness of quantum measurement is classically reproducible here, because a Gaussian is easy to sample.
Step 4. Conclude. Inputs, gates, and measurements all stay Gaussian, so the full computation is sampled in classical polynomial time — no amount of squeezing or multimode entanglement can help. Non-Gaussianity is therefore mandatory for any speedup. Why: this is the negative result that defines the field's positive program — find the cheapest non-Gaussian resource that breaks simulability. *Verified: reproduces Bartlett–Sanders–Braunstein–Nemoto, PRL 88, 097904 (2002).*
Limiting cases
CV behaviour is governed by two dials: the highest order of the available Hamiltonians, and the squeezing parameter (squeezed-quadrature variance ).
| Case | Result | Meaning |
|---|---|---|
| Gaussian-only regime | at most quadratic in | Closed under composition; states stay Gaussian; classically efficiently simulable (extended Gottesman–Knill). No universality, no correction of generic errors. |
| Add one non-Gaussian gate | (cubic phase gate) | The Gaussian set plus any single Hamiltonian of order generates the full algebra of polynomial Hamiltonians — Lloyd–Braunstein universality. |
| Infinite-squeezing limit | Recovers ideal position/momentum eigenstates and ideal cluster/GKP states — but needs photons. Unphysical idealization. | |
| Finite squeezing | noise variance per link | Every teleported gate and every GKP codeword carries this residual shift noise; the logical error rate, and hence the squeezing threshold (commonly – dB), is set by . |
| High photon number, weak nonlinearity | with large | Many photons but only Gaussian dynamics — still simulable; photon number alone is not a resource, Wigner negativity is. |
Worked examples
1 · From decibels to photons: what squeezing costs (fully worked)
An experiment reports a squeezed vacuum at . Find the squeezing parameter , the squeezed-quadrature variance, and the mean photon number. Then repeat for the record squeezing achieved in the lab.
Step 1. Decibels measure the variance reduction: means , so and . (Equivalently .)
Step 2. The squeezed variance is , a factor of ten below the vacuum value . The conjugate quadrature swells to , and the product confirms the uncertainty area is untouched.
Step 3. The energy: photons. So even a modest of squeezing already costs about two photons per mode.
Step 4. At : , , variance (a factor below vacuum), and photons. The photon cost climbs steeply — halving the residual noise again would push toward the tens — which is exactly why squeezing, not gate speed, is the scarce resource in CV hardware.
2 · The GKP logical error from the Gaussian tail (fully worked)
A finite-energy GKP qubit has effective shift noise that is Gaussian with standard deviation in each quadrature. Estimate the logical error probability per quadrature and in total.
Step 1. A logical error occurs when the accumulated shift exceeds the correctable radius . Express that radius in units of : .
Step 2. The one-quadrature failure probability is the two-sided Gaussian tail beyond : . Evaluating, , so .
Step 3. With independent and noise, the qubit survives only if both stay in range, so the logical error is .
Step 4. Translate back to squeezing. Using the common GKP convention (so ), corresponds to about of GKP squeezing. A per-qubit error near at dB is why the literature quotes fault-tolerance thresholds in the – dB range: each extra decibel pushes the tail down super-exponentially.
3 · Noise accumulation down a cluster wire
A computation teleports a mode through ten consecutive links, each built from squeezed ancillas. Estimate the total added quadrature variance and say why it caps the usable depth.
Step 1. Each link injects the squeezed-quadrature variance from Example 1, vacuum units, as an additive Gaussian shift on the teleported quadrature.
Step 2. Independent links add in variance: after ten links the accumulated noise is vacuum units — a full unit of vacuum variance, comparable to the signal blur itself.
Step 3. So at a bare cluster wire degrades to the noise floor after only gates. This is the quantitative face of "finite squeezing is the master constraint": without GKP-style error correction embedded in the wire, deeper circuits demand exponentially better squeezing, and it is the reason scalable CV architectures interleave GKP correction between gates rather than relying on raw squeezing alone.
Physics of the portrait
Continuous-variable computing is a young field with several founders, but one theorem gave it its architecture: the proof that a small kit of Gaussian moves plus a single nonlinear gate is enough for anything. That is the Lloyd–Braunstein result, and it belongs to a physicist who has spent a career asking what a quantum computer can physically be.
Origins · 1 minSeth Lloyd and how this was discovered
Seth Lloyd took an unusually broad road into quantum information — an undergraduate degree at Harvard, a stint in the history and philosophy of science at Cambridge, and a physics PhD at Rockefeller University in 1988 under Heinz Pagels, on the thermodynamics of complex systems. In 1993, while much of the community still doubted a quantum computer could ever be built, Lloyd published in Science one of the first designs for a potentially realizable quantum computer, a chain of weakly coupled two-level systems addressed by tuned pulses — a template that anticipated real spin and superconducting hardware. He became a professor of mechanical engineering at MIT and a relentless generator of ideas across quantum computing, quantum machine learning, and quantum biology. His defining contribution to this article came in 1999, when, with Samuel Braunstein, he proved that displacements, squeezers, beamsplitters, and one non-quadratic Hamiltonian suffice to synthesize any polynomial Hamiltonian on a bosonic mode — the universality theorem that told experimentalists precisely what non-Gaussian ingredient they had to build. Lloyd also popularized the provocative thesis, in his 2006 book Programming the Universe, that the cosmos is literally a quantum computer registering and processing its own information.
Going further
Texts and reviews. Braunstein & van Loock, "Quantum information with continuous variables," Rev. Mod. Phys. 77, 513 (2005) · Weedbrook et al., "Gaussian quantum information," Rev. Mod. Phys. 84, 621 (2012) · Serafini, Quantum Continuous Variables (2017) · Nielsen & Chuang, Quantum Computation and Quantum Information (2010), continuous-systems chapter · Preskill, Lecture Notes on Quantum Computation, Caltech Ph219.
Primary sources. Lloyd & Braunstein, Phys. Rev. Lett. 82, 1784 (1999) — CV universality · Gottesman, Kitaev & Preskill, Phys. Rev. A 64, 012310 (2001) — encoding a qubit in an oscillator · Menicucci et al., Phys. Rev. Lett. 97, 110501 (2006) — CV cluster-state computing · Bartlett, Sanders, Braunstein & Nemoto, Phys. Rev. Lett. 88, 097904 (2002) — classical simulability of Gaussian processes · Mari & Eisert, Phys. Rev. Lett. 109, 230503 (2012) — Wigner negativity as a resource.
Provenance. Conventions (, vacuum variance ) follow Weedbrook et al. (2012) and Braunstein & van Loock (2005). A verifier should recompute: (i) giving the shear (5); (ii) from (7); (iii) GKP stabilizer commutation via the Weyl phase and the correctable radius (GKP 2001); (iv) the Gaussian update rules and classical simulability (BSBN 2002); (v) the squeezing numbers , giving at dB and at dB; (vi) the GKP tail estimate , at . Squeezing thresholds are quoted as cited ranges (– dB), not invented point values; universality of {Gaussian + one cubic gate} is Lloyd–Braunstein (1999).
Prerequisites. Quantum Harmonic Oscillator · Symplectic Geometry / Phase Space · Wigner Function and Phase-Space Quasiprobability · Measurement-Based Quantum Computation · Cluster States and Graph States. Leads to. Magic State Distillation · One-Way Quantum Computer · Topological Quantum Computation.
Ask the tutor: Ask me to walk through how a specific target — an arbitrary single-mode Gaussian gate, a GKP magic state, or a Gaussian boson sampling instance — is built from squeezers, beamsplitters, and one non-Gaussian move, and how its finite-squeezing error budget is estimated.
Is a continuous-variable computer more powerful than a qubit computer?
No — they are computationally equivalent in principle. Anything a universal qubit machine can do, a universal CV machine can do (and vice versa, since a GKP-encoded oscillator is a qubit). What differs is the hardware economics. CV shines where the natural degrees of freedom are already bosonic: optical modes, microwave cavities, mechanical oscillators. There you get deterministic, room-temperature-friendly entanglement from beamsplitters and squeezers, and you can pack enormous cluster states into the time or frequency domain. The price is that non-Gaussian operations — the ones that actually buy universality — are hard to engineer, whereas in a qubit machine every gate is already "non-classical." So CV trades cheap entanglement for expensive nonlinearity.
What actually makes Gaussian circuits easy to simulate?
A Gaussian state on modes is fully described by a mean vector and a covariance matrix — only about real numbers, not an exponentially long list of amplitudes. Gaussian gates act on those objects by matrix multiplication, and homodyne measurements update them by Schur-complement formulas, all in polynomial time; the measurement outcomes are just draws from a multivariate Gaussian, which a classical computer samples easily. Because inputs, gates, and measurements never leave this Gaussian manifold, the whole computation can be tracked exactly on a laptop. The exponential wall that protects qubit hardness simply is not there. This is the extended Gottesman–Knill theorem, and it is why non-Gaussianity is non-negotiable for advantage.
Why is squeezing measured in decibels, and how much is "enough"?
Decibels report the variance reduction relative to vacuum: , so dB halves the noise, dB cuts it tenfold, dB a hundredfold. The convenience is that noise budgets add naturally in dB. "Enough" depends on the task. Simply seeing entanglement needs only a fraction of a decibel; running a shallow cluster computation wants several dB; but fault-tolerant GKP-based schemes typically demand squeezing in the – dB range, because the logical error rate is a Gaussian tail that only collapses once the residual width is a small fraction of . The current experimental record is dB, which is why closing the fault-tolerance gap is a hardware race measured in single decibels.
How does the GKP code turn continuous errors into discrete ones?
The GKP codeword is a lattice: logical states are combs of position peaks spaced by , and the code is invariant under shifts of . A physical error is some continuous displacement in position and momentum. Measuring the two stabilizers reveals only and modulo — the fractional position inside a cell — without disturbing which logical state you hold. Rounding that residue to the nearest cell and shifting back corrects any drift smaller than half a cell, . In effect the analog error has been digitized: whatever survives correction is a whole-cell shift, i.e. a discrete logical Pauli, which an ordinary qubit code (a surface code, say) then handles. That is the bridge from CV hardware to standard fault tolerance.
Is Gaussian boson sampling a universal quantum computer?
No, and that is the point of it. Gaussian boson sampling uses only Gaussian states (squeezed light through a linear-optical interferometer) followed by photon-number-resolving detection. The Gaussian part is simulable, but the measurement is non-Gaussian, and the output distribution — whose probabilities are hafnians of a matrix built from the interferometer — is believed to be classically hard to sample. So it is a purpose-built demonstration of quantum computational advantage, not a programmable machine: you cannot run Shor's algorithm on it. Its value is twofold: it is a sharp experimental probe of where CV computational power actually resides (in non-Gaussian measurement), and its outputs connect to real quantities like molecular vibronic spectra and graph properties such as perfect matchings.
Can the phase-space picture ever go negative, and why does that matter?
Yes — the Wigner function of a non-Gaussian state can dip below zero, and that negativity is the whole game. Hudson's theorem says a pure state has a non-negative Wigner function if and only if it is Gaussian, so any negativity is a signature of non-Gaussianity. Mari–Eisert and related work then promote Wigner negativity to a genuine resource: it is necessary for any CV quantum speedup, playing exactly the role that "magic" plays for qubits. A positive Wigner function behaves like a classical probability distribution over phase space and can be sampled efficiently; only once the quasiprobability goes negative do you leave the reach of classical simulation. So "bending the ellipse into something with negative regions" is not a metaphor — it is the precise mathematical boundary between easy and hard.