MCPcopy Create free account
hub / github.com/google-deepmind/alphageometry / merge

Method merge

graph.py:602–617  ·  view source on GitHub ↗

Merge all nodes.

(self, nodes: list[gm.Node], deps: Dependency)

Source from the content-addressed store, hash-verified

600 return node
601
602 def merge(self, nodes: list[gm.Node], deps: Dependency) -> gm.Node:
603 """Merge all nodes."""
604 if len(nodes) < 2:
605 return
606
607 node0, *nodes1 = nodes
608 all_nodes = self.type2nodes[type(node0)]
609
610 # find node0 that exists in all_nodes to be the rep
611 # and merge all other nodes into node0
612 for node in nodes:
613 if node in all_nodes:
614 node0 = node
615 nodes1 = [n for n in nodes if n != node0]
616 break
617 return self.merge_into(node0, nodes1, deps)
618
619 def merge_into(
620 self, node0: gm.Node, nodes1: list[gm.Node], deps: Dependency

Callers 4

make_equalMethod · 0.95
merge_valsMethod · 0.95
merge_intoMethod · 0.45

Calls 1

merge_intoMethod · 0.95

Tested by 1