mindquantum.algorithm.library.mat_to_op

查看源文件
mindquantum.algorithm.library.mat_to_op(mat, little_endian: bool = True)[源代码]

将一个基于qubit的矩阵表示转换为对应的泡利算符表示。默认以小端头表示输出QubitOperator。

参数:
  • mat - 基于qubit的矩阵表示。

  • little_endian (bool) - 是否使用小端头表示(默认为True,即小端头表示)。如果为True,则表示最高位Qubit为最左边的位(即小端头表示),否则表示最高位Qubit为最右边的位(即大端头表示)

返回:

QubitOperator,对应的泡利算符表示的QubitOperator。

样例:

>>> import numpy as np
>>> from mindquantum.algorithm.library.qudit_mapping import mat_to_op
>>> mat = np.array([[1, 0, 0, 1], [0, 1, 1, 0], [0, 1, 1, 0], [1, 0, 0, 1]])
>>> print(mat_to_op(mat, 2))
1 [] +
1 [X0 X1]