An approach to speeding up the Prolog-based inference engine KORE/IE
In this paper, we propose an approach for speeding up the KORE/IE (Knowledge Oriented Reasoning Environment / Inference Engine) and discuss some features of the Prolog-based system. The main features provided by KORE/IE are (1)a mechanism of an inference engine on KORE, (2)cooperative problem solving among rule bases, and (3)a speedy inference mechanism. On Prolog, it is important to speed up inference engines without sacrificing flexible power for rule expressions. It is essential for constructing large scale application programs on the systems. In order to speed up the inference mechanism and realize the flexible rule expressions, we take advantage of a speedy refutation mechanism, partial evaluation techniques and fast searching for heads of clauses. At present, KORE/IE is implemented on C-Prolog and Quintus Prolog, and its efficiency of inferences is comparable with that of OPS5 on Franz Lisp.
KeywordsRule Base Inference Engine Partial Evaluation Variable Binding Prolog Program
Unable to display preview. Download preview PDF.
- Brownston L, Farrell E K, and Martin N(1985) Programming expert system in OPS5, Addison-WesleyGoogle Scholar
- Brekke B(1986) Benchmarking Expert System Tool Performance, Ford Aerospace Tech NoteGoogle Scholar
- Forgy CL(1981) OPS5 User's Manual, CMU-CS-81-135,JulyGoogle Scholar
- Forgy CL(1982) Rete: A Fast Algorithm for the Many Pattern/Many Object Pattern Match Problem, Artificial Intelligence 19: 17–37Google Scholar
- Futamura Y (1983) Partial Computation of Programs, Lecture Notes in Computer Science 147, Springer-VerlagGoogle Scholar
- Kowalski R (1977) Logic for Problem Solving, Elservier North Holland:49–74Google Scholar
- Lesser VR and Erman LD (1977) A retrospective view of the HEARSAY-II architecture. Proc. IJCAI 5:790–800Google Scholar
- Matsumoto Y, Tanaka H, and Kiyono M (1983) BUP: A Bottom-up Parser Embedded in Prolog, New Generation Computing 1,No.2Google Scholar
- Shintani T, Katayama Y, Hiraishi K, and Toda M (1986) KORE: A Hybrid Knowledge Programming Environment for Decision Support based on a Logic Programming Language, Lecture Notes in Computer Science 264, Logic Programming '86:22–33Google Scholar
- Takeuchi A and Furukawa K (1985) Partial Evaluation of Prolog Programs and Its Application to Meta Programming, in Kuger, H.-J.(ed.): Information Processing 86, Dublin, Ireland 415–420., North-HollandGoogle Scholar