Abstract. This paper presents a backward type analysis for logic programs. Given type signatures for a collection of selected predicates such as builtin or library predicates, the analysis infers type signatures for other predicates such that the execution of any query satisfying the inferred type signatures will not violate the type signatures for the selected predicates. Thus, the backward type analysis generalises type checking in which the programmer manually specifies type signatures for all predicates that are checked for consistency by a type checker.
Given type signatures for a collection of selected predicates such as builtin or library predicates, the analysis of REF infers type signatures for other predicates such that the execution of any query satisfying the inferred type signatures will not violate the given type signatures.
Type inference generalises type checking
Proceedings of Ninth International Static Analysis Symposium, volume 2477 of Lecture Notes in Computer Science
Computer Science