phylox.rearrangement.movability.check_valid

phylox.rearrangement.movability.check_valid(network, move)

Checks whether a move is valid.

Parameters:

move – a rearrangement move (see phylox.rearrangement.movetype.Move)

Returns:

void

Exception:

InvalidMoveException if the move is not valid

Example:

>>> from phylox import DiNetwork
>>> from phylox.rearrangement.move import Move
>>> from phylox.rearrangement.movability import check_valid
>>> network = DiNetwork(
...     edges=[(0,1),(1,2),(1,3),(2,3),(2,4),(3,5)],
... )
>>> move = Move(
...     move_type=MoveType.HEAD,
...     origin=(2, 5),
...     moving_edge=(1, 3),
...     target=(2, 4),
... )
>>> check_valid(network, move)