code: def is_orthonormal(self):
          
          if self._is_orthonormal is None:
              _log.debug("Testing and caching if operator basis is orthonormal")
              self._is_orthonormal = np.allclose(self.metric(), np.eye(self.dim))
          return self._is_orthonormal
docs: Compute a matrix of Hilbert-Schmidt inner products for the basis operators, and see if they
          are orthonormal. If they are return True, else, False.
  
          :return: True if the basis vectors represented by this OperatorBasis are orthonormal, False
           otherwise.
          :rtype: bool