multiplier_to_scc_root¶
-
inline element_type libsemigroups::Action::multiplier_to_scc_root(index_type pos)¶
Returns an element
x
of the semigroup generated by the generators in the action such that afterTActionType()(res, at(pos), x)
the pointres
is the root of the strongly connected component containingat(pos)
.- Complexity
At most \(O(mn)\) where \(m\) is the complexity of multiplying elements of type
TElementType
and \(n\) is the size of the fully enumerated orbit.
- Parameters
pos – a position in the action.
- Throws
LibsemigroupsException – if there are no generators yet added or the index
pos
is out of range.- Returns
An element of type
TElementType
.