NAME

Logic::Relational::Goal::Call - Goal representing a predicate call.

DESCRIPTION

Expands a predicate call against the program's clauses or generators, performing automatic ancestor cycle pruning and optional subgoal answer tabling/memoization.

METHODS

new

Constructor. Takes $name and \@args.

name

Returns the predicate functor name.

args

Returns the arrayref of call arguments.

arity

Returns the number of arguments.

as_term

Returns the call represented as a Logic::Relational::Term.

expand

Expands the call goal into successor states.

freshen

Returns a copy of the call goal with freshened logical variables.

is_ground

Returns true if all arguments of the call are ground under the given substitution.