Trait ZddTreeOps

Source
pub trait ZddTreeOps<Label: Ord + Clone> {
    // Required methods
    fn is_zero(&self) -> bool;
    fn is_one(&self) -> bool;
    fn has_one(&self) -> bool;
    fn top(&self) -> Result<Label, bool>;
    fn to_set(&self) -> BTreeSet<BTreeSet<Label>>;
    fn iter(&self) -> Iterator<Label> ;
}
Expand description

Basic operations on ZDD.

Required Methods§

Source

fn is_zero(&self) -> bool

Returns true iff the ZDD is zero.

Source

fn is_one(&self) -> bool

Returns true iff the ZDD is one.

Source

fn has_one(&self) -> bool

Returns true for all ZDDs containing the empty combination.

Source

fn top(&self) -> Result<Label, bool>

Returns the top label if the ZDD is a node, an error of true if the ZDD is one and false if it is zero.

Source

fn to_set(&self) -> BTreeSet<BTreeSet<Label>>

Turns a ZDD in the corresponding set of sets of labels.

Source

fn iter(&self) -> Iterator<Label>

Returns an iterator over a ZDD.

Implementors§

Source§

impl<Label: Eq + Hash + Ord + Clone> ZddTreeOps<Label> for zdd::wrapped::Zdd<Label>

Source§

impl<Label: Ord + Clone> ZddTreeOps<Label> for zdd::Zdd<Label>