# quri_parts.core.operator.trotter_suzuki module#

class ExponentialSinglePauli(pauli, coefficient)#

Bases: NamedTuple

A class representing exponential function of a Pauli operator.

This class represents an exponential function of Pauli operators $$\exp(aP)$$ where $$a$$ is a coefficient and $$P$$ is a Pauli operator. Note that this coefficient can also be a complex number.

Parameters:
• pauli (PauliLabel) –

• coefficient (complex) –

pauli: PauliLabel#

Alias for field number 0

coefficient: complex#

Alias for field number 1

trotter_suzuki_decomposition(op, param, order)#

Trotter-Suzuki decomposition [1], a recursive formula of the approximation that decomposes an exponential function of the sum of Pauli operators into a product of the exponential function of Pauli operators. The explicit formula for the sum of Pauli operator $$A=\sum_i A_i$$ is given as follows:

$\begin{split}S_{2k}(x)&=[S_{2k-2}(p_kx)]^2S_{2k-2}((1-4p_k)x)][S_{2k-2}(p_kx)]^2,\\ S_2(x)&=\prod_{j=1}^me^{A_j x /2}\prod_{j'=m}^1 e^{A_{j'} x /2},\\ p_k&=(4-4^{1/(2k-1)})^{-1},\end{split}$

where $$k$$ is an order of this decomposition and $$A_i$$ is the Pauli operator.

Parameters:
• op (Operator) – An operator on the exponential.

• param (complex) – The overall coefficient of the exponential. This can be not only a real but also a complex number.

• order (int) – The order of the Trotter-Suzuki decomposition. An integer that satisfies >= 1.

Returns:

List of ExponentialSinglePauli.

Return type:

list[ExponentialSinglePauli]

Ref:

[1]: M. Suzuki, Fractal decomposition of exponential operators with applications to many-body theories and Monte Carlo simulation, Phys. Lett. 146 319-323, 1990