Source code for modelparameters.sympy.strategies.branch.tools

from __future__ import print_function, division

from .core import exhaust, multiplex
from .traverse import top_down

[docs]def canon(*rules): """ Strategy for canonicalization Apply each branching rule in a top-down fashion through the tree. Multiplex through all branching rule traversals Keep doing this until there is no change. """ return exhaust(multiplex(*map(top_down, rules)))