Product · Open systems and density operators
Lumen Drift 1.0
Lumen Drift represents a register that is not a single ray in Hilbert space. The object is a density operator: Hermitian, unit trace, positive semidefinite. Gates act by conjugation. Noise acts by a channel. Drift is how Data-T talks about decoherence without pretending the device stayed pure.
The operator
On n qubits the operator has 4ⁿ real degrees of freedom after Hermiticity, and one less after the trace. Drift stores it either densely, as a complex matrix of side 2ⁿ, or as a Pauli transfer vector when the caller stays in that basis from the start. Dense storage is the reference. Pauli-transfer storage is the throughput path for channels that are cheap in that basis.
Purity Tr(ρ²) is reported with every snapshot. Purity 1 means the operator is a projector and Lumen State would have been enough. Purity below 1 means interference across branches has started to wash out, and an expectation can no longer be replaced by a single shot from a pure state.
Channels Data-T names
A channel is a completely positive, trace-preserving map. Drift ships four families in the 1.0 contract: amplitude damping (energy leaving into a cold bath), phase damping (loss of off-diagonal terms with populations held), depolarising (a mixture toward the maximally mixed state), and a Pauli channel given as four probabilities on I, X, Y, Z. Custom maps must be submitted as Kraus operators. Drift checks the Kraus completeness relation Σ_k E_k† E_k = I to a published tolerance and rejects maps that would create probability.
Channels are located. A damping map on wire 3 does not touch wire 4 except through later entangling gates. The specification records the wire, the parameter, and the layer index so a model card can quote the noise story without a prose footnote.
- Amplitude damping parameter γ is the probability of the decay jump, not a rate. Continuous time is the caller’s conversion.
- Depolarising p mixes ρ with I/2 on that wire. p = 1 yields the maximally mixed qubit.
- Reset is a channel, not a gate. It discards the wire and prepares |0⟩⟨0|.
Cost
A dense channel step on one wire reads the full matrix. That is why Drift’s comfortable width sits well below State’s. The product is honest about this: a 16-qubit dense operator is already a serious allocation, and the API returns the byte forecast before execution when the caller sets preview=true.
When the noise is weak and the question is one observable, the router may still choose Lumen Trace with a noisy Pauli rule, and it will say so in the engine field of the response. Drift remains the reference those approximations are checked against on small widths.
Reduced operators
Partial trace is a first-class query. The caller names the kept wires and receives a smaller density, still Hermitian and unit trace. That object is what a risk model should store if the rest of the register was only a probe. Drift will not return the traced-out block ‘for completeness’; the discarded wires are gone.
All documents
- OverviewLumen Lattice
- Lumen StateLumen State 1.0
- Lumen WeaveLumen Weave 1.0
- Lumen TraceLumen Trace 1.0
- AmplitudesAmplitudes and measurement
- ContractionContraction and bond limits
- NoiseNoise, channels, and purity
- ObservablesObservables and expectations
- SamplingSampling and shots
- MemoryMemory model and refusal
- LibrariesLibraries and documents
- ReferenceReference