The production system: architecture and abstraction

The use of production systems as the primary method for encoding knowledge in large knowledge-based systems is discussed at two levels; their suitability as an architecture that can be efficiently supported and their appropriateness as a language of expression. Questions of efficiency are posed in the framework of a broad class of pattern-directed rewrite systems. Factors governing efficiency are discussed informally, and the usefulness of production systems as an information processing abstraction is examined critically. In this regard, several problems suggested by work on lexically motivated inference are described. It is argued that the use of a particular class of production systems demands a more detailed justification in domain-specific terms than is often given.