Under variant-based tabling, when a tabled call C is made, a search
for a table entry containing a variant subgoal S is performed. Notice
that if such an S should exist, then all of its answers are
also answers to C, and therefore will be resolved against it.
Likewise, when an answer A is derived for a producing subgoal S,
A is inserted into the answer set of S if and only if A
does not already exist in
-- that is, if there is no variant of
A already present in
. The insertion of A, therefore,
leads to the return of A to consumers of S. However, the return
of only the most general answers to a consumer, referred to as
answer subsumption, can be flexibly programmed as discussed in
Section 5.45.2.