1998 年 13 巻 1 号 p. 131-138
It is well known that the efficiency of computation depends on knowledge representation systems on which problems and algorithms are based. No general theory has yet been established, however, for changing knowledge representation systems correctly. The difficulty is due to the absence of a theory for discussing various knowledge representation systems in a unified manner. We overcome this difficulty by the adoption of "declarative programs" and "specialization systems" which provides a theoretical basis for the formalization of many different knowledge representation systems and programming languages, including context-free grammars, typed unification grammars, many extensions of Prolog, and CLP languages. In the Prolog case, logic programs are declarative programs on a specialization system which formalizes the interrelation between atoms, ground atoms and substitutions. This paper proposes a new theory for changing knowledge representation systems in the framework of problem-solving based on equivalent transformation of declarative programs on specialization systems, where computation is based, not on logical inference, but on the preservation of declarative semantics of declarative programs. A new notion of "safe extension" of specialization systems is established. We prove that safe extension of a specialization system to another one does not change the declarative semantics of a declarative program on the specialization systems. This theorem has wide applicability for changing konwledge representation systems and provides an important theoretical foundation for representation change.