Skip to content

Commit eb7452f

Browse files
committed
remove toposort from pytensor/graph/utils.py it was not referenced anywhere
1 parent 8f0a4f2 commit eb7452f

File tree

1 file changed

+0
-41
lines changed

1 file changed

+0
-41
lines changed

pytensor/graph/utils.py

-41
Original file line numberDiff line numberDiff line change
@@ -379,44 +379,3 @@ def clear(self):
379379

380380
def __repr__(self):
381381
return f"AssocList({self._dict}, {self._list})"
382-
383-
384-
def toposort(prereqs_d):
385-
"""
386-
Sorts prereqs_d.keys() topologically.
387-
388-
prereqs_d[x] contains all the elements that must come before x
389-
in the ordering.
390-
391-
"""
392-
393-
# all1 = set(prereqs_d.keys())
394-
# all2 = set()
395-
# for x, y in prereqs_d.items():
396-
# all2.update(y)
397-
# print all1.difference(all2)
398-
399-
seq = []
400-
done = set()
401-
postreqs_d = {}
402-
for x, prereqs in prereqs_d.items():
403-
for prereq in prereqs:
404-
postreqs_d.setdefault(prereq, set()).add(x)
405-
next = {k for k in prereqs_d if not prereqs_d[k]}
406-
while next:
407-
bases = next
408-
next = set()
409-
for x in bases:
410-
done.add(x)
411-
seq.append(x)
412-
for x in bases:
413-
for postreq in postreqs_d.get(x, []):
414-
if not prereqs_d[postreq].difference(done):
415-
next.add(postreq)
416-
if len(prereqs_d) != len(seq):
417-
raise Exception(
418-
"Cannot sort topologically: there might be cycles, "
419-
"prereqs_d does not have a key for each element or "
420-
"some orderings contain invalid elements."
421-
)
422-
return seq

0 commit comments

Comments
 (0)