pub trait PCM: Sized {
// Required methods
fn valid(self) -> bool;
fn op(self, other: Self) -> Self;
fn unit() -> Self;
fn closed_under_incl(a: Self, b: Self);
fn commutative(a: Self, b: Self);
fn associative(a: Self, b: Self, c: Self);
fn op_unit(a: Self);
fn unit_valid();
}
Expand description
See Resource
for more information.
Required Methods§
sourceproof fn closed_under_incl(a: Self, b: Self)
proof fn closed_under_incl(a: Self, b: Self)
sourceproof fn commutative(a: Self, b: Self)
proof fn commutative(a: Self, b: Self)
sourceproof fn associative(a: Self, b: Self, c: Self)
proof fn associative(a: Self, b: Self, c: Self)
sourceproof fn unit_valid()
proof fn unit_valid()
Object Safety§
This trait is not object safe.