Это просто проблема обхода графа. Это может быть первая глубина или первая ширина или кто знает что еще. Но это действительно так просто.
Для разрешения
T(X, Y)
Первое разрешение X
и Y
. Но если X
равно
X(A, B)
и Y
Y(Z)
Разрешить A
и B
и Z
тоже. Продолжайте, пока не достигнете листового узла.