Hostname: page-component-8448b6f56d-sxzjt Total loading time: 0 Render date: 2024-04-23T09:02:57.068Z Has data issue: false hasContentIssue false

Metalogic machines: a retrospective rationale for the Japanese Fifth Generation

Published online by Cambridge University Press:  07 July 2009

G. A. Ringwood
Affiliation:
Department of Computing, Imperial College, London SW7 2BZ, UK

Abstract

The oft quoted inadequacy of von Neumann architectures for AI applications has regularly been used to justify the design of special purpose parallel machines. In particular, the von Neumann computational model has been criticized as being unsuitable for parallelism because of the memory access bottleneck. For the design of a new machine both top-down and bottom-up methodologies have drawbacks. The middle-out strategy, working both up and down from an intrinsically concurrent high-level programming language as a means of both representing and processing knowledge provides an attractive way of providing a symbiosis between software and hardware. The longest established and most well-founded symbolic method for the representation and manipulation of knowledge is logic. A notable result of the last decade, work on mechanical theorem proving was that a subset of predicate logic, Horn Clauses, can form the foundation of a computational model. The execution model of Prolog, the first popular language based on Horn Clauses, was designed for efficient evaluation on von Neumann architectures. An alternative computational model, more suitable for expressing reactive systems but retaining Prolog's affinity for metaprogramming, has given rise to a new class of languages, concurrent logic languages. One among many of these languages, FGHC (flat Guarded Horn Clauses), was developed by the Japanese as the kernel of their Fifth Generation initiative. A background familiarity with Prolog would be helpful in understanding this article.

Type
Research Article
Copyright
Copyright © Cambridge University Press 1988

Access options

Get access to the full version of this content by using one of the access options below. (Log in options will check for institutional or personal access. Content may require purchase if you do not have access.)

References

Agha, G, (1986). Actors: a model of concurrent computation in distributed systems MIT Press.CrossRefGoogle Scholar
Barr, A and Feigenbaum, E A, (1982). The Handbook of Artificial Intelligence 2 Pitman.Google Scholar
Brinch Hansen, P, (1973). Operating System Principles Prentice Hall.Google Scholar
Chang, C L, (1970). “The unit proof and input proof in theorem provingJACM 17 698707.CrossRefGoogle Scholar
Codognet, C, Codognet, P and File, G, (1988). “Yet another intelligent backtracking method” Proc. Fifth Int. Conf. and Symp. on Logic Programming Kowalski, R and Bowen, K (Eds.) MIT Press.Google Scholar
Colmerauer, A, (1973), “Les systems-Q ou un formalisme pour analyser et synthetiser des phrases sur ordinateur” Publication Interne No 43, Department d'Informatique, Universite de Montreal.Google Scholar
Colmerauer, A, (1982). “Prolog and infinite trees” In: Logic Programming Clark, KL and Tarnlund, SA, Academic Press.Google Scholar
Devlin, K, (1987). “A clever little number” The Guardian July 16th.Google Scholar
Dowson, M, (1984). “A note on Micro-Planner” In: Implementations of Prolog Campbell, J A (Ed.) Ellis Horwood.Google Scholar
Elcock, E W, (1988). “Absys: the first logic programming language—a retrospective and commentary” to be published Jnl Logic Programming.Google Scholar
Gardner, M, (1982). Logic Machines and Diagrams Harvester Press.Google Scholar
Goldberg, A and Robson, D, (1983). Smalltalk-80: The Language and its Implementation, Addison-Wesley.Google Scholar
Green, C, (1969). The Application of Theorem Proving to Question-Answering Systems PhD thesis, Stanford.CrossRefGoogle Scholar
Harel, A and Pnueli, A, (1985). “On the Development of Reactive Systems” In: Logics and models of Concurrent Systems Apt, K R (Ed.), Springer Verlag.Google Scholar
Herbrand, J, (1930). “Reserche sur la theorie de la demonstration” These, U. de Paris. In: Escrit logiques de Jocoques Herbrand PUF, Paris (1969).Google Scholar
Hewitt, C, (1969). “Planner: a language for proving theorems in robots” Proc IJCAI 1 295301.Google Scholar
Hewitt, C, (1985). “The challenge of Open Systems” BYTE 04 1985, 223–42.Google Scholar
Hoare, C A R, (1982). “Specifications, programs and implementations” Oxford University Tech Monograph PRG-29, Oxford.Google Scholar
Hoare, C A R, (1985). Communicating Sequential Processes Prentice Hall.Google Scholar
Inmos Ltd, (1984). Occam Programming Manual Prentice Hall.Google Scholar
Jaffar, J and Lassez, J-L, (1987). “Constraint logic programmingProc 14th ACM POPL Conference, Munich.CrossRefGoogle Scholar
Kuehner, D, (1972). “Some special purpose resolution systems Machine Intelligence 7 117128, Edinburgh University Press.Google Scholar
Lighthill, J, (1972). Artificial Intelligence Reports to SERC, HMSO.Google Scholar
Loveland, D W, (1969). “A simplified format for the model elimination theorem-proving procedureJACM 16 349–63.CrossRefGoogle Scholar
Loveland, D W, (1970). “A linear format for resolution” Proc of the INRIA Symposium on Automatic Demonstration 1968 147162, Roquenfort, Springer-Verlag.CrossRefGoogle Scholar
McCarthy, J, (1958). “Programs with common sense” Proceedings on the Symposium on the Mechanization of Thought Processes National Physics Lab, Teddington, England.Google Scholar
McCarthy, J, (1978). History of LISP, ACM SIG PLAN Notices 13 (8) 5, 11.CrossRefGoogle Scholar
Milner, R, (1980). A Calculus of Communicating Systems LNCS 92, Springer Verlag.CrossRefGoogle Scholar
Newell, A. “Duncker on thinking: an enquiry into progress in cognition” Carnegie-Mellon University, Technical Report CS-80–151.Google Scholar
Newell, A, Shaw, J C and Simon, H A, (1956). “The logic theory machine: a complex information processing systemIRE Trans on Information Theory 2 6179.CrossRefGoogle Scholar
New Generation Computing, (1988). Selected Papers from the Workshop on Partial Evaluation and Mixed Computation 6 (2,3).CrossRefGoogle Scholar
Ringwood, G A, (1987). “Pattern-directed, Markovian, linear guarded, definite clause resolution, submitted JLP but rejected after the unreasonably long time of 21 months.Google Scholar
Ringwood, G A, (1988a). “Parlog 86 and the dining logiciansCACM 31 1025.CrossRefGoogle Scholar
Ringwood, G A, (1988b). “SLD: a folk acronym?Logic Programming Newsletter 2/1 58.Google Scholar
Ringwood, G A, (1988c). “A comparative exploration of concurrent logic languages” submitted The Knowledge Engineering Review.Google Scholar
Ringwood, G A, (1989). “SLD: a folk acronym?” To be published SIGPLAN Notices.CrossRefGoogle Scholar
Robinson, J A, (1965). “A machine-oriented logic based on the resolution principleJACM 12 2341.CrossRefGoogle Scholar
Schofield, J, (1988). “The taxonomy of computer evolution” The Guardian 29 12 1.Google Scholar
Sussmann, G J and McDermott, D V, (1972). “From planner to conniver—a genetic approachProc AFIPS Fall Conference11711179.CrossRefGoogle Scholar
Ungar, D and Patterson, D, (1987). “What price SmalltalkIEEE Computer 20 6772.CrossRefGoogle Scholar
Warren, D H D, (1987). “OR-parallel execution models of Prolog” In: Tapsoft 87, LNCS 250, Springer-Verlag.Google Scholar