IEnumerable<CutState> ProveFromDB(Symbol functor, object[] args, PrologContext context)
{
PredicateInfo info = GetPredicateInfo(this, new PredicateIndicator(functor, args.Length));
if (info == null)
{
if (ErrorOnUndefined)
throw new UndefinedPredicateException(functor, args.Length);
return PrologPrimitives.FailImplementation;
}
return info.Prove(args, context);
}