[][src]Trait zdd::factory::FactoryBinOps

pub trait FactoryBinOps<Label: Ord + Eq + Hash + Clone, LHS, RHS> {
    fn union(&self, lhs: LHS, rhs: RHS) -> Zdd<Label>;
fn inter(&self, lhs: LHS, rhs: RHS) -> Zdd<Label>;
fn minus(&self, lhs: LHS, rhs: RHS) -> Zdd<Label>;
fn subset(&self, lhs: LHS, rhs: RHS) -> bool; }

Binary operations on ZDDs.

Required methods

fn union(&self, lhs: LHS, rhs: RHS) -> Zdd<Label>

The union of two ZDDs. Cached.

fn inter(&self, lhs: LHS, rhs: RHS) -> Zdd<Label>

The intersection of two ZDDs. Cached.

fn minus(&self, lhs: LHS, rhs: RHS) -> Zdd<Label>

The difference of two ZDDs. Cached.

fn subset(&self, lhs: LHS, rhs: RHS) -> bool

Returns true iff lhs is a subset of rhs. Cached.

Loading content...

Implementors

impl<'a, 'b, Label: Ord + Eq + Hash + Clone> FactoryBinOps<Label, &'a HConsed<ZddTree<Label>>, &'b HConsed<ZddTree<Label>>> for Factory<Label>[src]

impl<'a, Label: Ord + Eq + Hash + Clone> FactoryBinOps<Label, &'a HConsed<ZddTree<Label>>, HConsed<ZddTree<Label>>> for Factory<Label>[src]

impl<'a, Label: Ord + Eq + Hash + Clone> FactoryBinOps<Label, HConsed<ZddTree<Label>>, &'a HConsed<ZddTree<Label>>> for Factory<Label>[src]

impl<Label: Ord + Eq + Hash + Clone> FactoryBinOps<Label, HConsed<ZddTree<Label>>, HConsed<ZddTree<Label>>> for Factory<Label>[src]

Loading content...