CoLab: A hybrid knowledge representation and compilation laboratory

Knowledge bases for real-world domains such as mechanical engineering require expressive and efficient representation and processing tools. We pursue a declarative-compilative approach to knowledge engineering.While Horn logic (as implemented in PROLOG) is well-suited for representing relational clauses, other kinds of declarative knowledge call for hybrid extensions: functional dependencies and higher-order knowledge should be modeled directly. Forward (bottom-up) reasoning should be integrated with backward (top-down) reasoning. Constraint propagation should be used wherever possible instead of search-intensive resolution. Taxonomic knowledge should be classified into an intuitive subsumption hierarchy.Our LISP-based tools provide directtranslators of these declarative representations into abstract machines such as an extended Warren Abstract Machine (WAM) and specialized inference engines that are interfaced to each other. More importantly, we provide source-to-sourcetransformers between various knowledge types, both for user convenience and machine efficiency.These formalisms with their translators and transformers have been developed as part of CoLab, acompilationlaboratory for studying what we call, respectively, ‘vertical’ and ‘horizontal’ compilation of knowledge, as well as for exploring the synergeticcolaboration of the knowledge representation formalisms.A case study in the realm of mechanical engineering has been an important driving force behind the development of CoLab. It will be used as the source of examples throughout the paper when discussing the enhanced formalisms, the hybrid representation architecture, and the compilers.

[1]  Jörg P. Müller,et al.  Weak looking-ahead and its application in computer-integrated process planning , 1993 .

[2]  Manfred Meyer Using hierarchical constraint satisfaction for lathe-tool selection in a CIM environment , 1992 .

[3]  Kim Marriott,et al.  Declarative Graphics , 1986, ICLP.

[4]  Eugene C. Freuder Synthesizing constraint expressions , 1978, CACM.

[5]  Charles L. Forgy,et al.  OPS5 user's manual , 1981 .

[6]  Gert Smolka,et al.  Attributive Concept Descriptions with Complements , 1991, Artif. Intell..

[7]  Ronald J. Brachman,et al.  An overview of the KL-ONE Knowledge Representation System , 1985 .

[8]  Peter F. Patel-Schneider,et al.  Term Subsumption Languages in Knowledge Representation , 1990, AI Mag..

[9]  Henri Behringer,et al.  A Relevant Scheme for Prolog Extensions: CLP(Conceptual Theory) , 1989, ICLP.

[10]  Christoph Walther A Mechanical Solution of Schubert's Steamroller by Many-Sorted Resolution , 1984, AAAI.

[11]  Deborah L. McGuinness,et al.  CLASSIC: a structural data model for objects , 1989, SIGMOD '89.

[12]  Laurent Fribourg,et al.  SLOG: A Logic Programming Language Interpreter Based on Clausal Superposition and Rewriting , 1985, SLP.

[13]  Lawrence C. Paulson,et al.  Logic Programming, Functional Programming, and Inductive Definitions , 1991, ELP.

[14]  William J. Clancey,et al.  Heuristic Classification , 1986, Artif. Intell..

[15]  Jörg P. Müller,et al.  μCAD2NC : a declarative lathe-workplanning model transforming CAD-like geometries into abstract NC programs , 1991 .

[16]  Harold Boley,et al.  A Direct Semantic Characterization of RELFUN , 1992, ELP.

[17]  Doug DeGroot,et al.  Logic programming - functions, relations and equations , 1986 .

[18]  Hans-Günther Hein,et al.  A WAM Compilation Scheme , 1991, RCLP.

[19]  Philipp Hanschke,et al.  Specifying Role Interaction in Concept Languages , 1992, KR.

[20]  Bernhard Nebel,et al.  Reasoning and Revision in Hybrid Representation Systems , 1990, Lecture Notes in Computer Science.

[21]  Hans-Günther Hein,et al.  FIDO: Finite Domain Consistency Techniques in Logic Programming , 1991, RCLP.

[22]  Eugene C. Freuder,et al.  The Complexity of Some Polynomial Network Consistency Algorithms for Constraint Satisfaction Problems , 1985, Artif. Intell..

[23]  Fernando Pereira,et al.  Can Drawing Be Liberated From the Von Neumann Style? , 1983, Databases for Business and Office Applications.

[24]  C. Apte,et al.  Experience with K-REP: an object-centered knowledge representation language , 1988, [1988] Proceedings. The Fourth Conference on Artificial Intelligence Applications.

[25]  Franz Schmalhofer,et al.  Integrated knowledge acquisition from text previously solved cases, and expert memories , 1991, Appl. Artif. Intell..

[26]  Knut Hinkelmann,et al.  Combining Terminological and Rule-based Reasoning for Abstraction Processes , 1992, GWAI.

[27]  Raghu Ramakrishnan,et al.  Performance Evaluation of Data Intensive Logic Programs , 1988, Foundations of Deductive Databases and Logic Programming..

[28]  Jean-Claude Latombe,et al.  Making Compromises Among Antagonist Constraints in a Planner , 1985, Artif. Intell..

[29]  Robert A. Kowalski Logic as a Computer Language for Children , 1982, ECAI.

[30]  Franz Baader,et al.  A Scheme for Integrating Concrete Domains into Concept Languages , 1991, IJCAI.

[31]  Hector J. Levesque,et al.  An Essential Hybrid Reasoning System: Knowledge and Symbol Level Accounts of KRYPTON , 1985, IJCAI.

[32]  Knut Hinkelmann Forward logic evaluation : developing a compiler from a partially evaluated meta interpreter , 1991 .

[33]  William S. Havens,et al.  Hierarchical arc consistency: exploiting structured domains in constraint satisfaction problems , 1985 .

[34]  Knut Hinkelmann,et al.  Forward Logic Evaluation: Compiling a Partially Evaluated Meta-Interpreter into the WAM , 1992, GWAI.

[35]  James F. Allen Maintaining knowledge about temporal intervals , 1983, CACM.

[36]  M. R. Genesereth,et al.  Knowledge Interchange Format Version 3.0 Reference Manual , 1992, LICS 1992.

[37]  Alfred Kobsa,et al.  Utilizing Knowledge: The Components of the SB-ONE Knowledge Representation Workbench , 1991, Principles of Semantic Networks.

[38]  Franz Baader,et al.  Extensions of Concept Languages for a Mechanical Engineering Application , 1992, GWAI.

[39]  Chris Moss Commercial Applications of Large Prolog Knowledge Bases , 1991, PDK.

[40]  Ansgar Bernardi,et al.  FEAT-REP : representing features in CAD/CAM , 1991 .

[41]  Kotagiri Ramamohanarao,et al.  A Generalization of the Differential Approach to Recursive Query Evaluation , 1987, J. Log. Program..

[42]  Knut Hinkelmann,et al.  Bidirectional reasoning of horn clause programs : transformation and compilation , 1991 .

[43]  Pedro Meseguer,et al.  Constraint Satisfaction Problems: An Overview , 1989, AI Commun..

[44]  Catriel Beeri,et al.  On the power of magic , 1987, J. Log. Program..

[45]  Albrecht Schmiedel,et al.  Temporal Terminological Logic , 1990, AAAI.

[46]  Harold Boley,et al.  Extended Logic-plus-Functional Programming , 1991, ELP.

[47]  Hans-Günther Hein,et al.  RFM manual : compiling RELFUN into the relational/functional machine , 1996 .

[48]  Bernhard Hollunder,et al.  Subsumption Algorithms for Concept Description Languages , 1990, ECAI.

[49]  John W. Backus,et al.  Can programming be liberated from the von Neumann style?: a functional style and its algebra of programs , 1978, CACM.