
prolog_jiti.pl -- Just In Time Indexing (JITI) utilitiesThis module provides utilities to examine just-in-time indexes created by the system and can help diagnosing space and performance issues.
jiti_list is det
jiti_list(:Spec) is detThe columns use the following notation:
argument(s) indexed:
A+B is a multi-argument index on the arguments A and B.P:L is a deep-index L on sub-argument P. For example,
1/2:2+3 is an index of the 2nd and 3rd argument of the
2nd argument of a compound on the first argument of the predicate.
This implies x and y in the head p(f(_,g(_,x,y)))L denotes that the index contains multiple compound
terms with the same name/arity that may be used to create
deep indexes. The deep indexes themselves are created
as just-in-time indexes.V denotes the index is virtual, i.e., it has not yet
been materialized.
iarg_spec(+Position, +Args)//[private]
jiti_suggest_modes is det
jiti_suggest_modes(:Spec) is det-.
Note: This predicate merely detects that some predicate is never
called with instantiated specific arguments during this run. The
user should verify whether the suggested - arguments are correct
and typically complete the mode by changing ? into + (or -)
where applicable. Currently, in SWI-Prolog, mode/1 declarations have
no effect on the semantics of the code. In particular, a predicate
that declares some argument as - may be called with this argument
instantiated. This may change in the future.