Title :
A first-order theory of types and polymorphism in logic programming
Author :
Kifer, Michael ; Wu, James
Author_Institution :
Dept. of Comput. Sci., State Univ. of New York, Stony Brook, NY, USA
Abstract :
A logic called typed predicate calculus (TPC) that gives declarative meaning to logic programs with type declarations and type inference is introduced. The proper interaction between parametric and inclusion varieties of polymorphism is achieved through a construct called type dependency, which is analogous to implication types but yields more natural and succinct specifications. Unlike other proposals where typing has extra-logical status, in TPC the notion of type-correctness has precise model-theoretic meaning that is independent of any specific type-checking or type-inference procedure. Moreover, many different approaches to typing that were proposed in the past can be studied and compared within the framework of TPC. Another novel feature of TPC is its reflexivity with respect to type declarations; in TPC, these declarations can be queried the same way as any other data. Type reflexivity is useful for browsing knowledge bases and, potentially, for debugging logic programs
Keywords :
formal logic; inference mechanisms; logic programming; browsing; debugging; declarative meaning; first-order theory; implication types; inclusion polymorphism; knowledge bases; logic programming; parametric polymorphism; type declarations; type dependency; type inference; type reflexivity; type-correctness; typed predicate calculus; Computer science; Debugging; Inference algorithms; Jacobian matrices; Logic programming; Program processors; Proposals; Protection;
Conference_Titel :
Logic in Computer Science, 1991. LICS '91., Proceedings of Sixth Annual IEEE Symposium on
Conference_Location :
Amsterdam
Print_ISBN :
0-8186-2230-X
DOI :
10.1109/LICS.1991.151655