1997 Volume 12 Issue 4 Pages 608-615
Logic programs provide artificial intelligence (AI) with one of the most successful knowledge representations. Many applications in AI, however, need more expressive power and inferential efficiency than conventional logic programs. Therefore, many extended knowledge representation systems have been proposed. Intuitively, most of these are based on declarative paradigms and their theoretical foundations are similar. The declarative programs in this paper represent a class of programs which have been mathematically formulated with the intention of providing a unified theoretical foundation of such intuitively declarative knowledge representation systems. In the domain of logic programs, resolution is one of the most important inference rules, and the theory is well established. However, there is no established theory of inference rules for a more general class of declarative programs. In this paper three important inference rules for declarative programs, rules of specialization, cancellation and resolution, are discussed. The inference rule of specialization for declarative programs is almost the same as that for conventional logic programs, except for the applicability check of specialization. The inference rule of cancellation for declarative programs, on the other hand, is different from the conventional rule in that it is not always sound for all pairs of input clauses of declarative programs. The two inference rules, rules of specialization and cancellation, are combined to form the inference rule of resolution. New definitions of unifiers and safe unifiers are proposed to establish the inference rule of resolution for declarative programs.