pub struct CardinalitySeams {
pub joint: Vec<(usize, usize)>,
pub seams: Vec<(usize, usize)>,
}Expand description
The cardinality / parity symmetry seams. Each recovered cardinality group is fully symmetric — its
members are interchangeable (S_m preserves “at most k of them true”). In a COUPLED instance only some
of those swaps survive as MODEL-SET symmetries; the parity coupling blocks the rest. This partitions the
candidate interchangeable pairs into joint (a transposition that preserves the model set — a free
symmetry to break) and seams (a transposition the parity genuinely tears). The check is SEMANTIC (parity
SPAN + non-parity clauses via [SemanticSymmetry]), so it recognizes the affine parity symmetry a
clause-automorphism test misses. The joint swaps generate the model-preserving symmetry at the seam.
Fields§
§joint: Vec<(usize, usize)>§seams: Vec<(usize, usize)>Auto Trait Implementations§
impl Freeze for CardinalitySeams
impl RefUnwindSafe for CardinalitySeams
impl Send for CardinalitySeams
impl Sync for CardinalitySeams
impl Unpin for CardinalitySeams
impl UnsafeUnpin for CardinalitySeams
impl UnwindSafe for CardinalitySeams
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