lojix/prolog/src/main/com/thesett/aima/logic/fol/prolog/expressions/BinaryArithmeticOperator.java
public Term getValue()
    {
        Term firstArgValue = arguments[0].getValue();
        Term secondArgValue = arguments[1].getValue();

        // Check that the arguments to operate on are both numeric values.
        if (firstArgValue.isNumber() && secondArgValue.isNumber())
        {
            return evaluate((NumericType) firstArgValue, (NumericType) secondArgValue);
        }
        else
        {
            return this;
        }
    }
public Term getValue()
    {
        Term firstArgValue = arguments[0].getValue();
        Term secondArgValue = arguments[1].getValue();

        // Check that the arguments to operate on are both numeric values.
        if (firstArgValue.isNumber() && secondArgValue.isNumber())
        {
            return evaluate((NumericType) firstArgValue, (NumericType) secondArgValue);
        }
        else
        {
            return this;
        }
    }
Gets the actual value of a term, which is a numeric type equal in value to the arithmetic operator applied to its
arguments. This method checks that both arguments produce values which are fully instantiated and numeric when
their {@link Term#getValue()} methods are invoked.

@return A numeric type equal in value to the the arithmetic operator applied to its arguments.