code: def damping_kraus_map(p=0.10):
      
      damping_op = np.sqrt(p) * np.array([[0, 1],
                                          [0, 0]])
  
      residual_kraus = np.diag([1, np.sqrt(1 - p)])
      return [residual_kraus, damping_op]
docs: Generate the Kraus operators corresponding to an amplitude damping
      noise channel.
  
      :param float p: The one-step damping probability.
      :return: A list [k1, k2] of the Kraus operators that parametrize the map.
      :rtype: list