Class BagOf

java.lang.Object
org.projog.core.predicate.AbstractPredicateFactory
org.projog.core.predicate.builtin.compound.BagOf
All Implemented Interfaces:
KnowledgeBaseConsumer, PredicateFactory, PreprocessablePredicateFactory

public final class BagOf extends AbstractPredicateFactory implements PreprocessablePredicateFactory
bagof(X,P,L) - find all solutions that satisfy the goal.

bagof(X,P,L) produces a list (L) of X for each possible solution of the goal P. If P contains uninstantiated variables, other than X, it is possible that bagof can be successfully evaluated multiple times - for each possible values of the uninstantiated variables. The elements in L will appear in the order they were found and may include duplicates. Fails if P has no solutions.