DocumentCode
2150079
Title
Logic programs as types for logic programs
Author
Frühwirth, Thom ; Shapiro, Ehud ; Vardi, Moshe Y. ; Yardeni, Eyal
Author_Institution
ECRC, Munich, Germany
fYear
1991
fDate
15-18 July 1991
Firstpage
300
Lastpage
309
Abstract
Optimistic type systems for logic programs are considered. In such systems types are conservative approximations to the success set of the program predicates. The use of logic programs to describe types is proposed. It is argued that this approach unifies the denotational and operational approaches to descriptive type systems and is simpler and more natural than previous approaches. The focus is on the use of unary-predicate programs to describe the types. A proper class of unary-predicate programs is identified, and it is shown that it is expensive enough to express several notions of types. An analogy with two-way automata and a correspondence with alternating algorithms are used to obtain a complexity characterization of type inference and type checking. This characterization is facilitated by the use of logic programs to represent types
Keywords
automata theory; computational complexity; formal logic; logic programming; alternating algorithms; complexity characterization; conservative approximations; denotational; descriptive type systems; logic programs; operational; optimistic type systems; program predicates; success set; two-way automata; type checking; type inference; unary-predicate programs; Automata; Automatic programming; Character recognition; Computational complexity; Error correction; Inference algorithms; Logic design; Logic programming; Program processors; Programming profession;
fLanguage
English
Publisher
ieee
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
Type
conf
DOI
10.1109/LICS.1991.151654
Filename
151654
Link To Document