The objective of this study is to show how a metalogic programming language, i.e., a logic language with fully developed, built-in metalevel features, is a suitable tool for formalization and use of several forms of reasoning. The role of metaknowledge in expressing auxiliary inference strategies is emphasized. Two case studies are presented to illustrate the proposed approach: one dealing with domain-specific concepts (formalization of a kind of analogical reasoning), the other related to domain-independent sentences (expression and composing general properties of relations). The two cases are then considered in combination, in order to show how the interaction of different kinds of metaknowledge can be coped with. Solutions to these problems are worked out both in reflective Prolog, a language with extensive metalevel capabilities that the authors are developing, and also in Prolog, for comparison and assessment of the proposed language. The concept of preprocessing metaknowledge at program-consultation time for a significant improvement in efficiency is introduced and applied to the problem areas considered.
I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.