docs: def is_B_hypergraph(self):
          """Indicates whether the hypergraph is a B-hypergraph.
          In a B-hypergraph, all hyperedges are B-hyperedges -- that is, every
          hyperedge has exactly one node in the head.
  
          :returns: bool -- True iff the hypergraph is a B-hypergraph.
  
          """
          for hyperedge_id in self._hyperedge_attributes:
              head = self.get_hyperedge_head(hyperedge_id)
              if len(head) > 1:
                  return False
          return True