pub enum GraphProductType {
Cartesian,
Lexicographic,
Strong,
Tensor,
Modular,
}Expand description
Selects which graph product type to compute.
Passed to graph_product to select the product type.
See each variant’s documentation for the adjacency condition.
Variants§
Cartesian
Cartesian product: (u1,v1) ~ (u2,v2) iff
u1=u2, v1~v2 or u1~u2, v1=v2.
Lexicographic
Lexicographic product: (u1,v1) ~ (u2,v2) iff
u1~u2 or (u1=u2 and v1~v2). Not commutative.
Strong
Strong product (normal product): union of Cartesian and tensor.
Tensor
Tensor (categorical/direct) product: (u1,v1) ~ (u2,v2) iff
u1~u2 and v1~v2.
Modular
Modular product: (u1,v1) ~ (u2,v2) iff
(u1~u2 and v1~v2) or (u1≁u2 and v1≁v2),
where u1≠u2 and v1≠v2. Requires simple inputs.
Trait Implementations§
Source§impl Clone for GraphProductType
impl Clone for GraphProductType
Source§fn clone(&self) -> GraphProductType
fn clone(&self) -> GraphProductType
Returns a duplicate of the value. Read more
1.0.0 · 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 GraphProductType
impl Debug for GraphProductType
Source§impl PartialEq for GraphProductType
impl PartialEq for GraphProductType
impl Copy for GraphProductType
impl Eq for GraphProductType
impl StructuralPartialEq for GraphProductType
Auto Trait Implementations§
impl Freeze for GraphProductType
impl RefUnwindSafe for GraphProductType
impl Send for GraphProductType
impl Sync for GraphProductType
impl Unpin for GraphProductType
impl UnsafeUnpin for GraphProductType
impl UnwindSafe for GraphProductType
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