QPanda3  0.1.0
Supported by OriginQ
Loading...
Searching...
No Matches
SuperOp

Prev Tutorial: Choi
Next Tutorial: Chi


Introduction

Superoperator representation of a quantum channel.

The Superoperator representation of a quantum channel \(\mathcal{E}\) is a matrix \(\mathcal{S}\) such that the evolution of a DensityMatrix \(\rho\) is given by

\[ |\mathcal{E}(\rho)\rangle\rangle=S|\rho\rangle\rangle \]

Please refer: C.J. Wood, J.D. Biamonte, D.G. Cory, Tensor networks and graphical calculus for open quantum systems, Quant. Inf. Comp. 15, 0579-0811 (2015).arXiv:1111.6950 [quant-ph]

In QPanda3 Quantum Information

Constructing a SuperOp object

Here is API doc

From Choi

Generate another SuperOp object from a Choi object

Please refer to Choi

Output

sop: {
{
{(1,0)},{(0,0)},{(0,0)},{(2,0)},
}
{
{(0,0)},{(-1,0)},{(0,0)},{(0,0)},
}
{
{(0,0)},{(0,0)},{(-1,0)},{(0,0)},
}
{
{(2,0)},{(0,0)},{(0,0)},{(1,0)},
}
}

From Chi

Generate another SuperOp object from a Chi object

Please refer to Chi

Output

sop: {
{
{(1,0)},{(0,0)},{(0,0)},{(2,0)},
}
{
{(0,0)},{(-1,0)},{(0,0)},{(0,0)},
}
{
{(0,0)},{(0,0)},{(-1,0)},{(0,0)},
}
{
{(2,0)},{(0,0)},{(0,0)},{(1,0)},
}
}

From SuperOp

Generate another SuperOp object from a SuperOp object

Output

sop2: {
{
{(1,0)},{(0,0)},{(0,0)},{(2,0)},
}
{
{(0,0)},{(-1,0)},{(0,0)},{(0,0)},
}
{
{(0,0)},{(0,0)},{(-1,0)},{(0,0)},
}
{
{(2,0)},{(0,0)},{(0,0)},{(1,0)},
}
}

From Kraus

Generate another SuperOp object from a Kraus object

Please refer to Kraus

Output

sop: {
{
{(1,0)},{(0,0)},{(0,0)},{(2,0)},
}
{
{(0,0)},{(-1,0)},{(0,0)},{(0,0)},
}
{
{(0,0)},{(0,0)},{(-1,0)},{(0,0)},
}
{
{(2,0)},{(0,0)},{(0,0)},{(1,0)},
}
}

From PTM

Generate another SuperOp object from a PTM object

Please refer to PTM

Output

sop: {
{
{(1,0)},{(0,0)},{(0,0)},{(2,0)},
}
{
{(0,0)},{(-1,0)},{(0,0)},{(0,0)},
}
{
{(0,0)},{(0,0)},{(-1,0)},{(0,0)},
}
{
{(2,0)},{(0,0)},{(0,0)},{(1,0)},
}
}

Obtain internal data

Input and output dim

Obtain the input dimension input_dim and output dimension output_dim of the quantum channel

The shape of the SuperOp matrix is(output_dim * output_dim,input_dim * input_dim)

Here is API doc for SuperOp.get_input_dim

Here is API doc for SuperOp.get_output_dim

Output

input_dim: 2
output_dim: 2

Evolution of quantum states

Here is API doc for SuperOp.evolve

DensityMatrix

Evolution of a DensityMatrix object, and the evolution result is returned as a DensityMatrix object

The dimension of the density matrix is obtained by the member method dim() and should be equal to the input dimension of the SuperOp object

Please refer to DensityMatrix.

Output

res: {
{
{(1.30728,0)},{(-0.383385,0.177724)},
}
{
{(-0.383385,-0.177724)},{(1.69272,0)},
}
}

StateVector

Evolution of the StateVector object is performed, and the result is returned as a DensityMatrix object

The dimension of the StateVector object is obtained by the member method dim() and should be equal to the input dimension of the Choi object

Please refer to DensityMatrix.

Please refer to StateVector.

Output

res: {
{
{(1,0)},{(0,0)},
}
{
{(0,0)},{(2,0)},
}
}

Boolean function

Equal

Determine whether the internal data of two SuperOp objects are equal

Here is API doc

Output

True