lojix/prolog/src/main/com/thesett/aima/logic/fol/prolog/builtins/Is.java
public boolean proofStep(ResolutionState state)
    {
        Functor isOp = state.getGoalStack().poll().getFunctor();

        // Evaluate the second argument as a fully instantiated numeric value.
        Term expressionValue = BuiltInUtils.evaluateAsNumeric(isOp.getArgument(1));

        // This is used to record variables bound during the unification, so that they may be undone if the resolution
        // state is backtracked over.
        List<Variable> boundVariables = new LinkedList<Variable>();

        // Unify against the LHS.
        boolean matched =
            state.getUnifier().unifyInternal(isOp.getArgument(0), expressionValue, boundVariables, boundVariables);

        for (Variable binding : boundVariables)
        {
            state.getVariableBindings().offer(binding);
        }

        return matched;
    }
public boolean proofStep(ResolutionState state)
    {
        Functor isOp = state.getGoalStack().poll().getFunctor();

        // Evaluate the second argument as a fully instantiated numeric value.
        Term expressionValue = BuiltInUtils.evaluateAsNumeric(isOp.getArgument(1));

        // This is used to record variables bound during the unification, so that they may be undone if the resolution
        // state is backtracked over.
        List<Variable> boundVariables = new LinkedList<Variable>();

        // Unify against the LHS.
        boolean matched =
            state.getUnifier().unifyInternal(isOp.getArgument(0), expressionValue, boundVariables, boundVariables);

        for (Variable binding : boundVariables)
        {
            state.getVariableBindings().offer(binding);
        }

        return matched;
    }
public boolean proofStep ( ResolutionState state ) { Functor isOp = state . getGoalStack ( ) . poll ( ) . getFunctor ( ) ; // Evaluate the second argument as a fully instantiated numeric value. Term expressionValue = BuiltInUtils . evaluateAsNumeric ( isOp . getArgument ( 1 ) ) ; // This is used to record variables bound during the unification, so that they may be undone if the resolution // state is backtracked over. List < Variable > boundVariables = new LinkedList < Variable > ( ) ; // Unify against the LHS. boolean matched = state . getUnifier ( ) . unifyInternal ( isOp . getArgument ( 0 ) , expressionValue , boundVariables , boundVariables ) ; for ( Variable binding : boundVariables ) { state . getVariableBindings ( ) . offer ( binding ) ; } return matched ; }
{@inheritDoc}
{