code: def pauli_basis_strings(num_wires):
      r"""Compute all :math:`n`-qubit Pauli words except ``"I"*num_wires``,
      corresponding to the Pauli basis of the Lie algebra :math:`\mathfrak{su}(N)`.
  
      Args:
          num_wires (int): The number of wires, or number of letters per word.
  
      Returns:
          list[str]: All Pauli words on ``num_wires`` qubits, except from the identity.
  
      There are :math:`d=4^n-1` Pauli words that are not the identity. They are ordered
      (choose the description that suits you most)
  
        - lexicographically.
  
        - such that the term acting on the last qubit changes fastest, the one acting on the first
          qubit changes slowest when iterating through the output.
  
        - such that the basis index, written in base :math:`4`, contains the indices for the list
          ``["I", "X", "Y", "Z"]``, in the order of the qubits
  
        - such that for three qubits, the first Pauli words are
          ``"IIX", ""IIY", "IIZ", "IXI", "IXX", "IXY", "IXZ", "IYI"...``
  
      **Example**
  
      >>> pauli_basis_strings(1)
      ['X', 'Y', 'Z']
      >>> len(pauli_basis_strings(3))
      63
      """
      return [
          "".join(letters)
          for letters in product(_pauli_letters, repeat=num_wires)
      ][1:]
  
imports: from functools import lru_cache, reduce
  from itertools import product
  import numpy
  import pennylane
  from pennylane.operation import AnyWires, Operation
  from pennylane.ops.qubit.parametric_ops_multi_qubit import PauliRot
label_desc: Use image node_id 2 for calling a global function with example usage: pauli_basis_strings(num_wires) and returns: unknown