This module infers meta-predicate properties by inspecting the clauses of predicates that call other predicates. This is extremely useful for program analysis and refactoring because many programs `in the wild' have incomplete or incorrect meta-predicate information.
- inferred_meta_predicate(:Head, ?MetaSpec) is nondet
- True when MetaSpec is an inferred meta-predicate specification for Head.
- infer_meta_predicate(:Head, -MetaSpec) is semidet
- True when MetaSpec is a meta-predicate specifier for the predicate Head. Derived meta-predicates are collected and made available through inferred_meta_predicate/2.