@classmethod
@abc.abstractmethod
def _kraus_matrices(cls, *params):
    'Kraus matrices representing a quantum channel, specified in\n        the computational basis.\n\n        This is a class method that should be defined for all\n        new channels. It returns the Kraus matrices representing\n        the channel in the computational basis.\n\n        This private method allows matrices to be computed\n        directly without instantiating the channel first.\n\n        **Example**\n\n        >>> qml.AmplitudeDamping._kraus_matrices(0.1)\n        >>> [array([[1.       , 0.       ],\n        [0.       , 0.9486833]]), array([[0.        , 0.31622777],\n        [0.        , 0.        ]])]\n\n        To return the Kraus matrices of an *instantiated* channel,\n        please use the :attr:`~.Operator.kraus_matrices` property instead.\n\n        Returns:\n            list(array): list of Kraus matrices\n        '
    raise NotImplementedError
Kraus matrices representing a quantum channel, specified in
the computational basis.

This is a class method that should be defined for all
new channels. It returns the Kraus matrices representing
the channel in the computational basis.

This private method allows matrices to be computed
directly without instantiating the channel first.

**Example**

>>> qml.AmplitudeDamping._kraus_matrices(0.1)
>>> [array([[1.       , 0.       ],
[0.       , 0.9486833]]), array([[0.        , 0.31622777],
[0.        , 0.        ]])]

To return the Kraus matrices of an *instantiated* channel,
please use the :attr:`~.Operator.kraus_matrices` property instead.

Returns:
    list(array): list of Kraus matrices
@classmethod
@abc.abstractmethod
def _kraus_matrices(cls, *params):
    'Kraus matrices representing a quantum channel, specified in\n        the computational basis.\n\n        This is a class method that should be defined for all\n        new channels. It returns the Kraus matrices representing\n        the channel in the computational basis.\n\n        This private method allows matrices to be computed\n        directly without instantiating the channel first.\n\n        **Example**\n\n        >>> qml.AmplitudeDamping._kraus_matrices(0.1)\n        >>> [array([[1.       , 0.       ],\n        [0.       , 0.9486833]]), array([[0.        , 0.31622777],\n        [0.        , 0.        ]])]\n\n        To return the Kraus matrices of an *instantiated* channel,\n        please use the :attr:`~.Operator.kraus_matrices` property instead.\n\n        Returns:\n            list(array): list of Kraus matrices\n        '
    raise NotImplementedError