code: def isdisjoint(self, other):
          
          if other == FullSpace:
              return False
          else:
              for ls in self.local_factors:
                  if isinstance(ls.label, StrLabel):
                      return False
              for ls in other.local_factors:
                  if isinstance(ls.label, StrLabel):
                      return False
              return set(self.local_factors).isdisjoint(set(other.local_factors))
docs: Check whether two Hilbert spaces are disjoint (do not have any
          common local factors). Note that `FullSpace` is *not* disjoint with any
          other Hilbert space, while `TrivialSpace` *is* disjoint with any other
          HilbertSpace (even itself)