Skip to content

Entanglement Measure

Geometric Measure of Entanglement (GME)

Accessible in both numqi.entangle (recommended) and numqi.entangle.measure

numqi.entangle.DensityMatrixGMEModel

Bases: Module

Solve geometric measure of entanglement (GME) for density matrix using gradient descent.

__init__(dim_list, num_ensemble, rank=None, CPrank=1, dtype='float64')

Initialize the model.

Parameters:

Name Type Description Default
dim_list tuple[int]

dimension of the density matrix.

required
num_ensemble int

number of ensemble to sample.

required
rank int

rank of the density matrix, if None, then rank is set to the maximum.

None
CPrank int

Canonical Polyadic rank rank of the state.

1
dtype str

data type of the state.

'float64'

set_density_matrix(rho)

Set the density matrix.

Parameters:

Name Type Description Default
rho ndarray

density matrix.

required

numqi.entangle.get_gme_2qubit(rho)

Calculate the geometric measure of entanglement (GME) for 2-qubit density matrix.

Geometric measure of entanglement and applications to bipartite and multipartite quantum states doi-link (eq-10)

Parameters:

Name Type Description Default
rho ndarray

2-qubit density matrix.

required

Returns:

Name Type Description
ret float

GME.

numqi.entangle.get_relative_entropy_of_entanglement_pure(psi, dimA, dimB, return_SEP=False, zero_eps=1e-10)

get the relative entropy of entanglement of pure state

reference: Closest separable state when measured by a quasi-relative entropy arxiv-link

Parameters:

Name Type Description Default
psi ndarray

the pure state of shape (dimA*dimB,)

required
dimA int

the dimension of subsystem A

required
dimB int

the dimension of subsystem B

required
return_SEP bool

return the separable state or not

False
zero_eps float

the zero threshold

1e-10

Returns:

Name Type Description
ret float

the relative entropy of entanglement

sigma ndarray

the separable state, if return_SEP=True

numqi.entangle.get_linear_entropy_entanglement_ppt(rho, dim, use_tqdm=False, return_info=False)

Calculate the linear entropy of entanglement for density matrix using PPT approximation.

Evaluating Convex Roof Entanglement Measures doi-link

Parameters:

Name Type Description Default
rho ndarray

density matrix. support batch

required
dim tuple[int]

dimension of the density matrix. must be length 2.

required
use_tqdm bool

use tqdm for progress bar.

False
return_info bool

return additional information.

False

Returns:

Name Type Description
ret (float, ndarray, list)

linear entropy of entanglement.

numqi.entangle.DensityMatrixLinearEntropyModel

Bases: Module

Solve linear entropy of entanglement for density matrix using gradient descent.

__init__(dim, num_ensemble, rank=None, kind='convex', method='polar')

Initialize the model.

Parameters:

Name Type Description Default
dim tuple[int]

dimension of the density matrix. must be length 2.

required
num_ensemble int

number of ensemble to sample.

required
rank int

rank of the density matrix, if None, then rank is set to the maximum.

None
kind str

convex or concave.

'convex'
method str

parameterization method for Stiefel manifold.

'polar'

set_density_matrix(rho)

Set the density matrix.

Parameters:

Name Type Description Default
rho ndarray

density matrix.

required