diff --git a/complex_tokenization/graph.py b/complex_tokenization/graph.py index 4c2b6a8..dba94eb 100644 --- a/complex_tokenization/graph.py +++ b/complex_tokenization/graph.py @@ -263,7 +263,9 @@ def __bytes__(self): raise Exception("Cannot convert UnconnectedGraphs to bytes") def merge(self, token: Node, merge: tuple): - subgraphs = tuple(subgraph.merge(token, merge) for subgraph in self.subgraphs) + subgraphs = tuple(sg.merge(token, merge) for sg in self.subgraphs) + if subgraphs == self.subgraphs: + return self return UnconnectedGraphs(subgraphs=subgraphs) def get_merges(self) -> Iterator[tuple]: