Survey of indexing features for dynamic clauses



In a recent thread Jan mentioned creating a table and indexing it
(as a pragmatic alternative to managing distinct solutions in lists
via findall, bagof, setof, etc.).

I'm wondering if someone has written (or read) a survey of how
various Prolog implementations support indexing of dynamic
clauses or surrogate data structures.

I'm using "indexing" in a broad database table-like sense, as
a feature that speeds up selection of a matching fact (or the
determination that no matching fact is available).

regards, chip

.