PermutationRelationGraph

Takes permutations and a set of relations and builds a graph from them

 

__init__(self, relations): 
  • relations: Any

    sets of rules connecting permutations

 

@classmethod
merge_groups(cls, groups): 

This really needs to be cleaned up…

  • groups: Any
  • :returns: _

 

@classmethod
make_relation_graph(cls, relations): 
  • relations: Iterable[Iterable[Iterable[int]]]
  • :returns: _

 

apply_rels(self, states, max_sum=None): 

For each state checks if it is divisible by one of the group rules and if so applies the relevant transformations to it

  • states: Any
  • :returns: _

 

build_state_graph(self, states, max_sum=None, extra_groups=None, max_iterations=10, raise_iteration_error=True): 
  • states: Any
  • max_iterations: Any
  • raise_iteration_error: Any
  • :returns: Iterable[np.ndarray]

Feedback

Examples

Templates

Documentation