Class BDDVarSet.DefaultImpl

  • Enclosing class:
    BDDVarSet

    public static class BDDVarSet.DefaultImpl
    extends BDDVarSet
    Default implementation of BDDVarSet based on BDDs.
    • Field Detail

      • b

        protected BDD b
        BDD representation of the set of variables. Treated like a linked list of variables.
    • Constructor Detail

      • DefaultImpl

        public DefaultImpl​(BDD b)
        Construct a BDDVarSet backed by the given BDD. Ownership of the given BDD is transferred to this BDDVarSet, so you should not touch it after construction!
        Parameters:
        b - BDD to use in constructing BDDVarSet
    • Method Detail

      • free

        public void free()
        Specified by:
        free in class BDDVarSet
      • getFactory

        public BDDFactory getFactory()
        Description copied from class: BDDVarSet
        Returns the factory that created this BDDVarSet.
        Specified by:
        getFactory in class BDDVarSet
        Returns:
        factory that created this BDDVarSet
      • intersect

        public BDDVarSet intersect​(BDDVarSet s)
        Description copied from class: BDDVarSet
        Returns a new BDDVarSet that is the union of the current BDDVarSet and the given BDDVarSet. This constructs a new set; neither the current nor the given BDDVarSet is modified.
        Specified by:
        intersect in class BDDVarSet
        Parameters:
        s - BDDVarSet to union with
        Returns:
        a new BDDVarSet that is the union of the two sets
      • intersectWith

        public BDDVarSet intersectWith​(BDDVarSet s)
        Description copied from class: BDDVarSet
        Modifies this BDDVarSet to include all of the vars in the given set. This modifies the current set in place and consumes the given set.
        Specified by:
        intersectWith in class BDDVarSet
        Parameters:
        s - BDDVarSet to union in
        Returns:
        this
      • size

        public int size()
        Specified by:
        size in class BDDVarSet
      • union

        public BDDVarSet union​(BDDVarSet s)
        Description copied from class: BDDVarSet
        Returns a new BDDVarSet that is the union of the current BDDVarSet and the given BDDVarSet. This constructs a new set; neither the current nor the given BDDVarSet is modified.
        Specified by:
        union in class BDDVarSet
        Parameters:
        s - BDDVarSet to union with
        Returns:
        a new BDDVarSet that is the union of the two sets
      • union

        public BDDVarSet union​(int var)
        Description copied from class: BDDVarSet
        Returns a new BDDVarSet that is the union of the current BDDVarSet and the given variable. This constructs a new set; the current BDDVarSet is not modified.
        Specified by:
        union in class BDDVarSet
        Parameters:
        var - variable to add to set
        Returns:
        a new BDDVarSet that includes the given variable
      • unionWith

        public BDDVarSet unionWith​(BDDVarSet s)
        Description copied from class: BDDVarSet
        Modifies this BDDVarSet to include all of the vars in the given set. This modifies the current set in place and consumes the given set.
        Specified by:
        unionWith in class BDDVarSet
        Parameters:
        s - BDDVarSet to union in
        Returns:
        this
      • unionWith

        public BDDVarSet unionWith​(int var)
        Description copied from class: BDDVarSet
        Modifies this BDDVarSet to include the given variable. This modifies the current set in place.
        Specified by:
        unionWith in class BDDVarSet
        Parameters:
        var - variable to add to set
        Returns:
        this
      • equalsBDDVarSet

        public boolean equalsBDDVarSet​(BDDVarSet s)
        Description copied from class: BDDVarSet
        Returns true if the sets are equal.
        Specified by:
        equalsBDDVarSet in class BDDVarSet
        Parameters:
        s - other set
        Returns:
        true if the sets are equal