Dissipative and Open-System Diagnostics¶
Status: scoped auxiliary model with exact finite-dimensional identities and numerical trajectory diagnostics.
This note describes the density-operator tools in
src/tnfr/physics/dissipative_conservation.py. The matrix density operator
rho used by these tools is distinct from the structural density
rho_s = Phi_s + K_phi used by the graph-field conservation diagnostics. No
implemented map identifies the two objects.
The module therefore does not extend the TNFR structural balance to all open systems as a theorem. It supplies a conventional finite-dimensional GKSL model that can be studied alongside TNFR telemetry. Likewise, a collapse operator is an environmental-model input; it is not evidence of a U1--U6 grammar violation.
1. GKSL generator¶
For a density operator rho, Hamiltonian H, and collapse operators L_k,
The dissipator is trace preserving because
For Hermitian H, compatible finite collapse operators and nonnegative time,
the exact GKSL generator has a completely positive trace-preserving semigroup.
build_lindblad_delta_nfr and the numerical exponential implement that model
within their validation and arithmetic tolerances; an approximate output
needs its own residual checks. Spectral non-expansion of an arbitrary matrix is weaker than the GKSL
conditions and does not independently prove complete positivity.
The factory also admits signed real auxiliary scaling factors, and the
matrix-exponential engines admit signed real time increments. Applying the
forward GKSL conclusion to these APIs requires nu_f * scale >= 0 and
dt >= 0, in addition to the generator premises above. Negative factors or
time increments retain an algebraic exponential interpretation without that
forward-channel guarantee. These supplied matrix factors do not redefine
TNFR's nonnegative nodal capacity.
Unitality¶
The dissipative part is unital precisely when
is_unital_dissipator checks this residual numerically. Pure dephasing is
unital. Zero-temperature amplitude damping is not: it drives states toward the
pure ground state.
All functions that accept collapse operators interpret them as the effective
operators of the modeled generator. If a Liouville generator is multiplied by
a positive factor a = nu_f * scale, the equivalent dissipative inputs are
sqrt(a) L_k, together with Hamiltonian a H; passing the unscaled L_k
would under-report instantaneous dissipative rates.
2. Universal norm bounds¶
For the Frobenius norm on states and spectral norm on collapse operators, submultiplicativity gives, term by term,
This is the bound returned by compute_dissipation_bound. It is universal but
usually loose. It does not vanish for every pure state. For example, with
L=sqrt(gamma)|0><1|,
Combining the first bound with Cauchy--Schwarz yields
compute_instantaneous_purity_rate evaluates the exact signed dissipative
contribution. compute_purity_decay_bound retains its historical public name,
but now returns the valid bound on the absolute purity-change rate.
3. Purity and entropy require channel hypotheses¶
The Hamiltonian commutator does not change purity, so
Its sign is not fixed for a general GKSL generator. For a unital semigroup, purity is non-increasing and von Neumann entropy
is non-decreasing. Without unitality, both directions can occur.
Amplitude damping¶
For a qubit with L=sqrt(gamma)|0><1| and
eta=exp(-gamma t), write the initial state as
Then
and
An initially excited pure state first loses purity, reaches P=1/2, and then
regains purity as it approaches the pure ground state. Initial purity alone is
insufficient to predict this curve: two states with equal purity can have
different p and c. predict_amplitude_damping_purity therefore gives an
exact result only when passed the full 2 x 2 density matrix. Scalar input is a
deprecated compatibility interpolation and emits DeprecationWarning.
Pure dephasing¶
When gamma denotes the off-diagonal amplitude decay rate,
while populations remain fixed. Consequently,
This is the convention used by predict_dephasing_purity. It matches both the
qubit operator sqrt(gamma/2) sigma_z and the complete projector family
sqrt(gamma)|k><k|.
4. Contractivity and stationary states¶
A CPTP map contracts trace distance between two states:
If rho_ss is fixed by the same map, its trace distance from a trajectory is
therefore non-increasing. verify_dissipative_balance reports the ratio of
these trace distances when a reference state is supplied through the historical
steady_state parameter. The standalone balance function has no generator and
cannot verify that the reference is actually stationary. Without a reference,
the result is explicitly unevaluated; the function does not silently certify
contractivity. Arbitrary pairs of snapshots also do not prove that an
underlying map is CPTP. The tracker, which does own a generator, rejects a
supplied steady state with a nonzero stationarity residual.
steady_state_from_generator solves the stationary and trace-one constraints
by least squares and verifies positivity and the generator residual. A
generator can have a stationary manifold. Pure dephasing, for example, fixes
all density matrices diagonal in the dephasing basis. The returned state is one
minimum-norm representative, not a uniqueness certificate.
analyze_dissipation_rates reports the stationary-mode count, stable decay
rates, positive-real-part modes, and the trace-preservation residual. A positive
spectral gap reports the slowest resolved strictly decaying mode. It does not
exclude nonzero purely imaginary modes: those can oscillate indefinitely.
Convergence toward the stationary subspace additionally requires absence of
such neutral nonstationary modes and unstable modes. The implementation reports
both explicitly. Convergence to one unique state further requires a
one-dimensional stationary space. These are statements about the admitted
GKSL model; an arbitrary matrix spectrum alone proves neither a quantum
channel nor a TNFR evolution law.
5. What each diagnostic means¶
| Diagnostic | Implemented quantity | Scope |
|---|---|---|
| Purity change rate | (P_after-P_before)/dt |
Signed; either sign is possible |
| Entropy change rate | (S_after-S_before)/dt |
Signed; monotone for unital channels |
| State change rate | norm_F(rho_after-rho_before)/dt |
Includes coherent and dissipative motion |
| Dissipator action norm | norm_F(D[rho_before]) |
Instantaneous environmental term |
| Dissipation bound | 2 sum norm_2(L_k)^2 sqrt(P) |
Universal Frobenius bound |
| Fixed-point contraction ratio | T_after/T_before |
Requires a supplied stationary state |
| Frobenius-norm loss rate | (norm_F(rho_before)-norm_F(rho_after))/dt |
Purity proxy; not a Noether charge |
| Change tier | Maximum absolute purity/entropy rate | Empirical reporting bin |
The compatibility names purity_decay_rate, entropy_production_rate,
actual_dissipation, and charge_leak_rate remain accessible. Their canonical
counterparts state the measured quantity without assuming a sign or a Noether
interpretation.
The four change tiers (weak, moderate, strong, large) use configured
rate thresholds 0.001, 0.05, and 0.2. They are descriptive bins rather
than physical phase boundaries. classify_dissipative_regime retains legacy
keys for compatibility and always reports grammar_status_inferred=False.
6. Validation and reproducibility¶
Public calculations reject density matrices that are non-square, non-Hermitian, non-finite, non-positive, or not trace one. Collapse operators must be finite square matrices of the same dimension. Time steps, rates, and times must be finite and non-negative where their definitions require it. Original scalar and real/imaginary matrix components are admitted before binary64 conversion. Boolean/text coercion and nonzero materialization loss reject, including in numerical tolerances. This represented-input boundary does not replace the density, collapse-operator or generator hypotheses.
Finite inputs alone do not guarantee representable diagnostic arithmetic. Snapshot purity, the public action, norm bounds, purity rates, observed balance secants and unitality comparison reject nonfinite computed values before classification. Generator spectral scales, eigenspectra and residuals obey the same requirement before stationarity, trace-preservation or mode verdicts. Nonzero collapse-norm squares lost to underflow also reject. Range-safe Frobenius evaluation can avoid overflow from squaring finite components, but does not certify an unrepresentable result. Missing collapse/reference data still produce explicit NaNs and unevaluated flags. The separate infinite trace-distance ratio denotes an initial distance at or below the configured floor and a final distance above it; it is a failed contraction observation, not an accepted overflow.
Snapshot capture reuses the spectrum computed during density admission. For ordinary NumPy collapse arrays, built-in balance calculations reuse the admitted densities and operator spectral norms within that invocation. Public calls still re-admit mutable snapshot arrays and recompute consumed diagnostics; cached report fields are not premises. Generic conversions and replaced public diagnostic helpers retain their live dispatch. The action bounds keep their Frobenius and spectral norms, and contraction ratios keep trace distance. The tracker appends a record to its snapshot history and diagnostic series only after all admission and diagnostic calculations succeed.
The executable demonstration compares exact amplitude damping and dephasing channels, including the non-monotone purity of amplitude damping and the monotone mixing of unital dephasing:
Direct regression coverage:
Related implementation:
TNFR scope references: