pub struct BaseStrongGeneratorLevel<Domain, G>{ /* private fields */ }
Expand description
A level in the Schreier-Sims Base Strong generator algorithm.
It basically is a SchreierVector with some extra book-keeping.
Implementations§
Source§impl<Domain, G> BaseStrongGeneratorLevel<Domain, G>
impl<Domain, G> BaseStrongGeneratorLevel<Domain, G>
Sourcepub fn new(base: Domain, generators: Vec<G>) -> (Self, Vec<G>)
pub fn new(base: Domain, generators: Vec<G>) -> (Self, Vec<G>)
Create a BaseStrongGeneratorLevel with a known base and generators.
Sourcepub fn has_transversal_for(&self, g: &G) -> bool
pub fn has_transversal_for(&self, g: &G) -> bool
Determine if this levels base is acted upon by g
in a way compatible for this level.
Sourcepub fn transversal_for(&self, g: &G) -> Option<G>
pub fn transversal_for(&self, g: &G) -> Option<G>
The transversal corresponding with g
.
Trait Implementations§
Source§impl<Domain, G> Display for BaseStrongGeneratorLevel<Domain, G>where
Domain: Eq + Hash + Clone + Display,
G: GroupElement + GroupAction<Domain = Domain> + PartialEq + Display,
impl<Domain, G> Display for BaseStrongGeneratorLevel<Domain, G>where
Domain: Eq + Hash + Clone + Display,
G: GroupElement + GroupAction<Domain = Domain> + PartialEq + Display,
Auto Trait Implementations§
impl<Domain, G> Freeze for BaseStrongGeneratorLevel<Domain, G>where
Domain: Freeze,
impl<Domain, G> RefUnwindSafe for BaseStrongGeneratorLevel<Domain, G>where
Domain: RefUnwindSafe,
G: RefUnwindSafe,
impl<Domain, G> Send for BaseStrongGeneratorLevel<Domain, G>
impl<Domain, G> Sync for BaseStrongGeneratorLevel<Domain, G>
impl<Domain, G> Unpin for BaseStrongGeneratorLevel<Domain, G>
impl<Domain, G> UnwindSafe for BaseStrongGeneratorLevel<Domain, G>where
Domain: UnwindSafe,
G: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more