Migration guide

Migrating from no_bunching (deprecated)

Warning

Deprecated since version 0.3: no_bunching is deprecated and is removed since version 0.3.0. Use computation_space instead inside the chosen measurement_strategy. See this migration section for the mapping.

The no_bunching flag is deprecated.

If you are using a QuantumLayer and you need to control how Fock states are truncated or encoded, define the computation_space inside the measurement_strategy instead.

If you are using a Kernel, define the encoding or truncation of the Fock states in the computation_space parameter.

Map the legacy intent as follows:

  • no_bunching=Falsecomputation_space=ComputationSpace.FOCK (full Fock space)

  • no_bunching=Truecomputation_space=ComputationSpace.UNBUNCHED (one photon per mode)

  • Dual-rail encodings → computation_space=ComputationSpace.DUAL_RAIL

This keeps measurement strategy selection orthogonal to simulation space configuration.

Migrating from legacy MeasurementStrategy

Warning

Deprecated since version 0.3: Enum-style and string access is deprecated and will be removed from MeasurementStrategy in v0.4. Use the new factory methods instead: MeasurementStrategy.probs(computation_space=...), MeasurementStrategy.mode_expectations(computation_space=...), MeasurementStrategy.amplitudes(computation_space=...). See this migration section for the mapping.

Old to new mappings

Deprecated

Recommended replacement

MeasurementStrategy.PROBABILITIES

MeasurementStrategy.probs(computation_space=...)

MeasurementStrategy.MODE_EXPECTATIONS

MeasurementStrategy.mode_expectations(computation_space=...)

MeasurementStrategy.AMPLITUDES

MeasurementStrategy.amplitudes(computation_space=...)

MeasurementStrategy.NONE

MeasurementStrategy.amplitudes(computation_space=...)

"PROBABILITIES" (string)

MeasurementStrategy.probs(computation_space=...)

Computation space now lives inside the strategy. If you already use the new factory methods, do not also pass computation_space separately in constructors such as QuantumLayer.

# Deprecated (legacy enum + separate computation_space)
# QuantumLayer(..., measurement_strategy=MeasurementStrategy.PROBABILITIES,
#             computation_space=ComputationSpace.FOCK)

# Recommended
QuantumLayer(..., measurement_strategy=MeasurementStrategy.probs(ComputationSpace.FOCK))