RenyiDisentangler
full name: tenpy.algorithms.disentangler.RenyiDisentangler
parent module:
tenpy.algorithms.disentangler
type: class
Inheritance Diagram
Methods
|
|
|
Given theta and U, find another U which reduces the 2nd Renyi entropy. |
- class tenpy.algorithms.disentangler.RenyiDisentangler(parent)[source]
Bases:
Disentangler
Iterative find U which minimized the second Renyi entropy.
See [hauschild2018].
Reads of the following options as break criteria for the iteration:
key
type
description
disent_eps
float
Break, if the change in the Renyi entropy
S(n=2)
per iteration is smaller than this value.disent_max_iter
float
Maximum number of iterations to perform.
Arguments and return values are the same as for
disentangle()
.- iter(theta, U)[source]
Given theta and U, find another U which reduces the 2nd Renyi entropy.
Temporarily view the different U as independent and minimized one of them - this corresponds to a linearization of the cost function. Defining Utheta as the application of U to theta, and combining the p legs of theta with
'vL', 'vR'
, this function contracts:| .----theta----. | | | | | | | q0 q1 | | | | | | q1* | | | | | | | .-Utheta*-. | | | | | | .-Utheta--. | | | | | | q0* | | | | | | | | .----Utheta*-.
The trace yields the second Renyi entropy S2. Further, we calculate the unitary U with maximum overlap with this network.
- Parameters:
- Returns:
S2 (float) – Renyi entropy (n=2), \(S2 = \frac{1}{1-2} \log tr(\rho_L^2)\) of U theta.
new_U (
Array
) – Unitary with legs'q0', 'q1', 'q0*', 'q1*'
, which should disentangle theta.