pub struct Perm { /* private fields */ }Expand description
A literal permutation that respects negation: σ(¬l) = ¬σ(l). Represented by the image of
each variable’s positive literal, so the negation invariant holds by construction.
Implementations§
Source§impl Perm
impl Perm
Sourcepub fn from_images(images: Vec<Lit>) -> Perm
pub fn from_images(images: Vec<Lit>) -> Perm
Build from the image of each positive literal: images[v] = σ(+v).
Sourcepub fn apply_clause(&self, clause: &[Lit]) -> Vec<Lit>
pub fn apply_clause(&self, clause: &[Lit]) -> Vec<Lit>
Apply σ to every literal of a clause.
Sourcepub fn is_identity(&self) -> bool
pub fn is_identity(&self) -> bool
Whether this is the identity permutation.
Trait Implementations§
impl Eq for Perm
impl StructuralPartialEq for Perm
Auto Trait Implementations§
impl Freeze for Perm
impl RefUnwindSafe for Perm
impl Send for Perm
impl Sync for Perm
impl Unpin for Perm
impl UnsafeUnpin for Perm
impl UnwindSafe for Perm
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