toqito.state_props.sk_vec_norm

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

Module Contents

toqito.state_props.sk_vec_norm.sk_vector_norm(rho, k=1, dim=None)[source]

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

The (S(k))-norm of of a vector (|v rangle) is defined as:

[
big|big| |v\rangle \big|big|_{s(k)} := text{sup}_{|wrangle} Big{

|\langle w | v \rangle| : text{Schmidt-rank}(|wrangle) leq k

Big}

]

It’s also equal to the Euclidean norm of the vector of (|vrangle)’s k largest Schmidt coefficients.

This function was adapted from QETLAB.

Examples

The smallest possible value of the (S(k))-norm of a pure state is (sqrt{frac{k}{n}}), and is attained exactly by the “maximally entangled states”.

`python exec="1" source="above" from toqito.states import max_entangled from toqito.state_props import sk_vector_norm import numpy as np # Maximally entagled state. v = max_entangled(4) print(sk_vector_norm(v)) `

Parameters:
  • rho (numpy.ndarray) – A vector.

  • k (int) – An int.

  • dim (int | list[int] | None) – The dimension of the two sub-systems. By default it’s assumed to be equal.

Returns:

The S(k)-norm of rho.

Return type:

float | numpy.floating