Class OptimizationElement

    • Constructor Detail

      • OptimizationElement

        public OptimizationElement​(Term<?> weight,
                                   java.util.List<Term<?>> terms,
                                   java.util.List<ASPBodyElement> literals)
        Create a new optimization statement with the given weight, terms and literals.
        Parameters:
        weight -
        terms -
        literals -
      • OptimizationElement

        public OptimizationElement​(Term<?> weight,
                                   Term<?> term,
                                   ASPBodyElement literal)
        Create a new optimization statement with the given single weight, term and literal.
        Parameters:
        weight -
        term -
        literal -
      • OptimizationElement

        public OptimizationElement​(Term<?> weight,
                                   int priority,
                                   java.util.List<Term<?>> terms,
                                   java.util.List<ASPBodyElement> literals)
        Create a new optimization statement with the given weight, priority, terms and literals.
        Parameters:
        weight -
        priority - an integer
        terms -
        literals -
      • OptimizationElement

        public OptimizationElement​(Term<?> weight,
                                   Term<?> priority,
                                   java.util.List<Term<?>> terms,
                                   java.util.List<ASPBodyElement> literals)
        Create a new optimization statement with the given weight, priority, terms and literals.
        Parameters:
        weight -
        priority -
        terms -
        literals -
    • Method Detail

      • isLiteral

        public boolean isLiteral()
        Returns:
        true if the formula represents a literal in the language or false otherwise
      • getTerms

        public java.util.Set<Term<?>> getTerms()
        Returns:
        a set containing all terms of this logical structure
      • getTerms

        public <C extends Term<?>> java.util.Set<C> getTerms​(java.lang.Class<C> cls)
        Description copied from interface: LogicStructure
        Processes the set containing all terms of type C. This method uses the equals method of the given Class and therefore does not add terms which are sub classes of type C to the set.
        Type Parameters:
        C - the type of terms
        Parameters:
        cls - The Class structure containing type information about the searched term
        Returns:
        A set containing all terms of type C of this logical structure
      • getSignature

        public FolSignature getSignature()
        Description copied from interface: Formula
        Returns the signature of the language of this formula.
        Specified by:
        getSignature in interface Formula
        Specified by:
        getSignature in class ASPElement
        Returns:
        the signature of the language of this formula.
      • setWeight

        public void setWeight​(Term<?> w)
        Sets the weight of this optimization statement.
        Parameters:
        w - term
      • setLevel

        public void setLevel​(Term<?> l)
        Sets the level (priority) of this optimization statement.
        Parameters:
        l - term
      • setLevel

        public void setLevel​(int l)
        Sets the level (priority) of this optimization statement.
        Parameters:
        l - integer
      • setOptTerms

        public void setOptTerms​(java.util.List<Term<?>> terms)
        Set the term tuple of this optimization element.
        Parameters:
        terms -
      • setOptLiterals

        public void setOptLiterals​(java.util.List<ASPBodyElement> literals)
        Set the literals tuple of this optimization element.
        Parameters:
        literals -
      • getWeight

        public Term<?> getWeight()
        Returns:
        the weight of this optimization element.
      • getLevel

        public Term<?> getLevel()
        Returns:
        level (priority) of this optimization element.
      • getOptTerms

        public java.util.List<Term<?>> getOptTerms()
        Returns:
        the term tuple of this optimization element.
      • getOptLiterals

        public java.util.List<ASPBodyElement> getOptLiterals()
        Returns:
        the literals tuple of this optimization element.
      • getLiterals

        public java.util.SortedSet<ASPLiteral> getLiterals()
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • printToClingo

        public java.lang.String printToClingo()
        Description copied from class: ASPElement
        Returns a representation of this ASP element in clingo (potassco) syntax. See https://potassco.org/ for more information.
        Overrides:
        printToClingo in class ASPElement
        Returns:
        String representation in clingo syntax