pub struct AbstractRefutation {
pub rule_types: usize,
pub invariant: &'static str,
pub witness: CountingCert,
}Expand description
An abstract, scale-invariant refutation: the family’s rules symmetry-broken to their orbit
types, plus the abstract invariant those types violate, plus the constant-size witness. For
pigeonhole this is two rule-types (every pigeon takes a hole; no two share one) and the counting
fact pigeons > holes — identical at every scale. This is the lift-and-shift-left: the proof’s true
size is O(1) in the rule-types, reached by symmetry breaking the rules to their types, never by
enumerating resolvents (the concrete and even the symmetric resolution closure both explode).
Fields§
§rule_types: usize§invariant: &'static str§witness: CountingCertTrait Implementations§
Source§impl Clone for AbstractRefutation
impl Clone for AbstractRefutation
Source§fn clone(&self) -> AbstractRefutation
fn clone(&self) -> AbstractRefutation
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for AbstractRefutation
impl Debug for AbstractRefutation
impl Eq for AbstractRefutation
Source§impl PartialEq for AbstractRefutation
impl PartialEq for AbstractRefutation
impl StructuralPartialEq for AbstractRefutation
Auto Trait Implementations§
impl Freeze for AbstractRefutation
impl RefUnwindSafe for AbstractRefutation
impl Send for AbstractRefutation
impl Sync for AbstractRefutation
impl Unpin for AbstractRefutation
impl UnsafeUnpin for AbstractRefutation
impl UnwindSafe for AbstractRefutation
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