States

A quantum state is a density operator

\[\rho \in \text{D}(\mathcal{X})\]

where \(\mathcal{X}\) is a complex Euclidean space and where \(\text{D}(\cdot)\) represents the set of density matrices.

Distance Metrics for Quantum States

toqito.state_metrics.fidelity(rho, sigma)

Compute the fidelity of two density matrices [WikFid].

toqito.state_metrics.helstrom_holevo(rho, sigma)

Compute the Helstrom-Holevo distance between density matrices [WikHeHo].

toqito.state_metrics.hilbert_schmidt(rho, sigma)

Compute the Hilbert-Schmidt distance between two states [WikHS].

toqito.state_metrics.hilbert_schmidt_inner_product(...)

Compute the Hilbert-Schmidt inner product between two matrices [WikHSO].

toqito.state_metrics.sub_fidelity(rho, sigma)

Compute the sub fidelity of two density matrices [MPHUZSub08].

toqito.state_metrics.trace_distance(rho, sigma)

Compute the trace distance between density operators rho and sigma.

toqito.state_metrics.trace_norm(rho)

Compute the trace norm of the state [WikTn].

toqito.state_metrics.bures_distance(rho_1, rho_2)

Compute the Bures distance of two density matrices [WikBures].

toqito.state_metrics.matsumoto_fidelity(rho, ...)

Compute the Matsumoto fidelity of two density matrices [Mat10].

Optimizations over Quantum States

toqito.state_opt.optimal_clone(states, probs)

Compute probability of counterfeiting quantum money [MVW12].

toqito.state_opt.ppt_distinguishability(states)

Compute probability of optimally distinguishing a state via PPT measurements [COS13].

toqito.state_opt.state_distinguishability(states)

Compute probability of state distinguishability [ELD03].

toqito.state_opt.state_exclusion(states[, ...])

Compute probability of single state exclusion.

toqito.state_opt.state_helper

Helper functions for checking validity of states and probability vectors.

toqito.state_opt.symmetric_extension_hierarchy(states)

Compute optimal value of the symmetric extension hierarchy SDP [Nav08].

Operations on Quantum States

toqito.state_ops.pure_to_mixed(phi)

Convert a state vector or density matrix to a density matrix.

toqito.state_ops.schmidt_decomposition(rho)

Compute the Schmidt decomposition of a bipartite vector [WikSD].

Properties of Quantum States

toqito.state_props.concurrence(rho)

Calculate the concurrence of a bipartite state [WikCon].

toqito.state_props.entanglement_of_formation(rho)

Compute entanglement-of-formation of a bipartite quantum state [WikEOF].

toqito.state_props.has_symmetric_extension(rho)

Determine whether there exists a symmetric extension for a given quantum state.

toqito.state_props.in_separable_ball(mat)

Check whether an operator is contained in ball of separability [GB02].

toqito.state_props.is_ensemble(states)

Determine if a set of states constitute an ensemble [WatEns18].

toqito.state_props.is_mixed(state)

Determine if a given quantum state is mixed [WikMix].

toqito.state_props.is_mutually_orthogonal(...)

Check if list of vectors are mutually orthogonal [WikOrthog].

toqito.state_props.is_mutually_unbiased_basis(...)

Check if list of vectors constitute a mutually unbiased basis [WikMUB].

toqito.state_props.is_ppt(mat[, sys, dim, tol])

Determine whether or not a matrix has positive partial transpose [WikPPT].

toqito.state_props.is_product(rho[, dim])

Determine if a given vector is a product state [WikProdState].

toqito.state_props.is_pure(state)

Determine if a given state is pure or list of states are pure [WikIsPure].

toqito.state_props.l1_norm_coherence(rho)

Compute the l1-norm of coherence of a quantum state [RPWL17].

toqito.state_props.log_negativity(rho[, dim])

Compute the log-negativity of a bipartite quantum state [WikLogNeg].

toqito.state_props.negativity(rho[, dim])

Compute the negativity of a bipartite quantum state [WikNeg].

toqito.state_props.purity(rho)

Compute the purity of a quantum state [WikPurity].

toqito.state_props.schmidt_rank(rho[, dim])

Compute the Schmidt rank [WikSR].

toqito.state_props.is_separable

Check if state is separable.

toqito.state_props.von_neumann_entropy(rho)

Compute the von Neumann entropy of a density matrix [WikVent].

toqito.state_props.sk_vector_norm(rho[, k, dim])

Compute the S(k)-norm of a vector [NJDK09].

Quantum States

toqito.states.basis(dim, pos)

Obtain the ket of dimension dim [WikKet].

toqito.states.bell(idx)

Produce a Bell state [WikBell].

toqito.states.brauer(dim, p_val)

Produce all Brauer states [WikBrauer].

toqito.states.breuer(dim, lam)

Produce a Breuer state [HPBreuer].

toqito.states.chessboard(mat_params[, ...])

Produce a chessboard state [BP00].

toqito.states.domino(idx)

Produce a domino state [CBDOM99], [UPB99].

toqito.states.gen_bell(k_1, k_2, dim)

Produce a generalized Bell state [DL09].

toqito.states.ghz(dim, num_qubits[, coeff])

Generate a (generalized) GHZ state [GHZ07].

toqito.states.gisin(lambda_var, theta)

Produce a Gisin state [GIS96].

toqito.states.horodecki(a_param[, dim])

Produce a Horodecki state [HOR], [CHR].

toqito.states.isotropic(dim, alpha)

Produce a isotropic state [HH99].

toqito.states.max_entangled(dim[, ...])

Produce a maximally entangled bipartite pure state [WikEnt].

toqito.states.max_mixed(dim[, is_sparse])

Produce the maximally mixed state [AAR6].

toqito.states.tile(idx)

Produce a Tile state [UPBTile99].

toqito.states.w_state(num_qubits[, coeff])

Produce a W-state [DVC00].

toqito.states.werner(dim, alpha)

Produce a Werner state [Wer89].

toqito.states.singlet(dim)

Produce a generalized singlet state acting on two n-dimensional systems [Gsinglet].