class_docstr: Immutable dictionary used to represent a Fermi word, a product of fermionic creation and
  annihilation operators, that can be constructed from a standard dictionary.
  
  The keys of the dictionary are tuples of two integers. The first integer represents the
  position of the creation/annihilation operator in the Fermi word and the second integer
  represents the orbital it acts on. The values of the dictionary are one of ``'+'`` or ``'-'``
  symbols that denote creation and annihilation operators, respectively. The operator
  :math:`a^{\dagger}_0 a_1` can then be constructed as
  
  >>> w = FermiWord({(0, 0) : '+', (1, 1) : '-'})
  >>> w
  a⁺(0) a(1)
class_docstr_tok: ["Immutable","dictionary","used","to","represent","a","Fermi","word",",","a","product","of","fermionic","creation","and","annihilation","operators",",","that","can","be","constructed","from","a","standard","dictionary",".","The","keys","of","the","dictionary","are","tuples","of","two","integers",".","The","first","integer","represents","the","position","of","the","creation\/annihilation","operator","in","the","Fermi","word","and","the","second","integer","represents","the","orbital","it","acts","on",".","The","values","of","the","dictionary","are","one","of","``","'+","'","``","or","``","'-","'","``","symbols","that","denote","creation","and","annihilation","operators",",","respectively",".","The","operator",":","math",":","`","a^","{","\\dagger","}","_0","a_1","`","can","then","be","constructed","as",">",">",">","w","=","FermiWord","(","{","(","0",",","0",")",":","'+","'",",","(","1",",","1",")",":","'-","'","}",")",">",">",">","w","a\u207a","(","0",")","a","(","1",")"]
docstr: Reverse multiply a FermiWord
  
  Multiplies a FermiWord "from the left" with an object that can't be modified
  to support __mul__ for FermiWord. Will be defaulted in for example
  ``2 * FermiWord({(0, 0): "+"})``, where the ``__mul__`` operator on an integer
  will fail to multiply with a FermiWord
docstr_tok: ["Reverse","multiply","a","FermiWord","Multiplies","a","FermiWord","``","from","the","left","''","with","an","object","that","ca","n't","be","modified","to","support","__mul__","for","FermiWord",".","Will","be","defaulted","in","for","example","``","2","*","FermiWord","(","{","(","0",",","0",")",":","``","+","''","}",")","``",",","where","the","``","__mul__","``","operator","on","an","integer","will","fail","to","multiply","with","a","FermiWord"]
code: def __rmul__(self, other):
      r"""Reverse multiply a FermiWord
  
      Multiplies a FermiWord "from the left" with an object that can't be modified
      to support __mul__ for FermiWord. Will be defaulted in for example
      ``2 * FermiWord({(0, 0): "+"})``, where the ``__mul__`` operator on an integer
      will fail to multiply with a FermiWord"""
  
      if isinstance(other, (Number, ndarray)):
          if isinstance(other, ndarray) and qml.math.size(other) > 1:
              raise ValueError(
                  f"Arithmetic Fermi operations can only accept an array of length 1, "
                  f"but received {other} of length {len(other)}"
              )
          return FermiSentence({self: other})
  
      raise TypeError(f"Cannot multiply FermiWord by {type(other)}.")
  
imports: import re
  from copy import copy
  from numbers import Number
  from numpy import ndarray
  import pennylane
label_desc: Use image node_id 18 for calling the FermiWord obj's underlying member method code with example usage: obj.__rmul__(other) and returns: FermiSentence