uniqc.algorithms.core.circuits.dicke_state module

Dicke state preparation circuit using the SCUC algorithm.

Reference:

Bärtschi & Eidenbenz, “Deterministic Preparation of Dicke States”, FCT 2019, arXiv:1904.07358.

uniqc.algorithms.core.circuits.dicke_state.dicke_state_circuit(first_arg=None, k=1, qubits=None)[source]

Build (or apply) a Dicke-state preparation fragment \(|D(n,k)\rangle\).

Two calling conventions:

# Fragment style (recommended):
c = dicke_state_circuit(4, k=2)                  # returns Circuit

# Legacy in-place style (deprecated):
c = Circuit()
dicke_state_circuit(c, k=2, qubits=[0, 1, 2, 3])
Parameters:
  • first_arg – Either n_qubits: int (fragment) or circuit: Circuit (deprecated).

  • k (int) – Number of excitations.

  • qubits (list[int] | None) – Qubit indices to use.

Returns:

Fresh Circuit in fragment mode; None in legacy mode.

Return type:

Circuit | None

uniqc.algorithms.core.circuits.dicke_state.dicke_state_example()[source]

Return a 4-qubit |D(4,2)> Dicke state circuit for tests/docs.

Return type:

Circuit