Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
The implementation of UNIFORM--a knowledge-representation/programming language based upon equivalence of descriptions
Kahn K.  Progress in artificial intelligence (, Orsay, France,1441985.Type:Proceedings
Date Reviewed: Dec 1 1985

The Holy Grail of AI programming is a language with the expressiveness of scripts, the generality of predicate logic, and the speed of FORTRAN. UNIFORM is one of the many recent proposals for such a language. Its most notable feature is the extension of unification far beyond simple syntactic pattern matching. This paper works out some of the interesting consequences of unification with equivalence, and describes the control algorithm that makes UNIFORM into a viable language.

The first part of the paper purports to be a tutorial exhibiting the features of UNIFORM. However, a companion paper [1] contains some crucial details, and the two papers should be read together. Most of UNIFORM’s features will be familiar to logic programmers; multiple uses of a program, computations on partially determined structures, and so forth. The examples do show the semantic nature of UNIFORM’s unification. Assertions in UNIFORM are fundamentally equivalences, which may be used in expression substitution at any time during a unification. While this is a simple and straightforward notion, the efficient use of equality remains an open problem. Kahn suggests a control language and heuristics (as have many others), but if these have been built for UNIFORM, I do not know of it. The control algorithm discussed in the paper links “description heads” (similar to predicate functors) together via the equivalence assertions that mention them. This is vaguely reminiscent of Rete [2], and in fact exhibits many of the same advantages and problems. There are several suggestions for improving efficiency; some have been implemented, some not.

UNIFORM accomplishes unification through the interesting concept of worlds. A world is a set of constraints on expressions, and amounts to a sort of module. It seems to have some prospects for parallelization of unification, although this was not tested. A world can be delayed, which facilitates lazy unification in the presence of disjunction; one could almost speak of coroutined unification.

This paper is quite useful for other seekers of the Holy Grail because of its sophisticated development of unification. Despite the tutorial material, the paper is perhaps too specialized to be of great interest to a general AI audience.

Reviewer:  S. Shebs Review #: CR109718
1) Kahn, K.UNIFORM--A language based upon unification which unifies (much of) LISP, PROLOG, and ACT 1, IJCAI-81, Aug. 1981.
2) Forgy, C. L.Rete: A fast algorithm for the many pattern/many object pattern match problem, Artif. Intell. 19 (1982), 17–37.
Bookmark and Share
 
Uniform (I.2.5 ... )
 
 
Knowledge Representation Formalisms And Methods (I.2.4 )
 
Would you recommend this review?
yes
no

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy