Class GenericInverseSetLattice<E>

    • Constructor Detail

      • GenericInverseSetLattice

        public GenericInverseSetLattice()
        Builds an empty set representing the top element.
      • GenericInverseSetLattice

        public GenericInverseSetLattice​(E element)
        Builds a set containing only the given element.
        Parameters:
        element - the element
      • GenericInverseSetLattice

        public GenericInverseSetLattice​(java.util.Set<E> elements)
        Builds a set with all the given elements.
        Parameters:
        elements - the elements
      • GenericInverseSetLattice

        public GenericInverseSetLattice​(java.util.Set<E> elements,
                                        boolean isTop)
        Builds a set with all the given elements, also specifying whether an empty set should be considered top or bottom.
        Parameters:
        elements - the elements
        isTop - if elements is empty, specifies if this set should be considered top or bottom
    • Method Detail

      • top

        public GenericInverseSetLattice<E> top()
        Description copied from interface: Lattice
        Yields the top element of this lattice. The returned element should be unique across different calls to this method, since Lattice.isTop() uses reference equality by default. If the value returned by this method is not a singleton, override Lattice.isTop() accordingly to provide a coherent test.
        Returns:
        the top element
      • bottom

        public GenericInverseSetLattice<E> bottom()
        Description copied from interface: Lattice
        Yields the bottom element of this lattice. The returned element should be unique across different calls to this method, since Lattice.isBottom() uses reference equality by default. If the value returned by this method is not a singleton, override Lattice.isBottom() accordingly to provide a coherent test.
        Returns:
        the bottom element
      • mk

        public GenericInverseSetLattice<E> mk​(java.util.Set<E> set)
        Description copied from class: InverseSetLattice
        Utility for creating a concrete instance of InverseSetLattice given a set. This decouples the instance of set used during computation of the elements to put in the lattice from the actual type of set underlying the lattice.
        Specified by:
        mk in class InverseSetLattice<GenericInverseSetLattice<E>,​E>
        Parameters:
        set - the set containing the elements that must be included in the lattice instance
        Returns:
        a new concrete instance of InverseSetLattice containing the elements of the given set