Class Negation

    • Constructor Detail

      • Negation

        public Negation​(CFG cfg,
                        CodeLocation location,
                        Expression expression)
        Builds the numerical negation.
        Parameters:
        cfg - the CFG where this operation lies
        location - the location where this literal is defined
        expression - the operand of this operation
    • Method Detail

      • unarySemantics

        protected <A extends AbstractState<A,​H,​V>,​H extends HeapDomain<H>,​V extends ValueDomain<V>> AnalysisState<A,​H,​V> unarySemantics​(InterproceduralAnalysis<A,​H,​V> interprocedural,
                                                                                                                                                                            AnalysisState<A,​H,​V> state,
                                                                                                                                                                            SymbolicExpression expr)
                                                                                                                                                                     throws SemanticException
        Description copied from class: UnaryExpression
        Computes the semantics of the expression, after the semantics of the sub-expression has been computed. Meta variables from the sub-expression will be forgotten after this expression returns.
        Specified by:
        unarySemantics in class UnaryExpression
        Type Parameters:
        A - the type of AbstractState
        H - the type of the HeapDomain
        V - the type of the ValueDomain
        Parameters:
        interprocedural - the interprocedural analysis of the program to analyze
        state - the state where the expression is to be evaluated
        expr - the symbolic expressions representing the computed value of the sub-expression of this expression
        Returns:
        the AnalysisState representing the abstract result of the execution of this expression
        Throws:
        SemanticException - if something goes wrong during the computation