ABSTRACT

‘Production systems’ is one of the oldest techniques of knowledge representation. A production system includes a knowledge base, represented by production rules, a working memory to hold the matching patterns of data that causes the rules to fire and an interpreter, also called the inference engine, that decides which rule to fire, when more than one of them are concurrently firable. On firing of a rule, either its new consequences are added to the working memory or old and unnecessary consequences of previously fired rules are dropped out from the working memory. The addition to and deletion from working memory depends on the consequent (then) part of the fired rule. Addition of new elements to the working memory is required to maintain firing of the subsequent rules. The deletion of data elements from the working memory, on the other hand, prevents a rule from firing with the same set of data. This chapter provides a detailed account of production systems, its architecture and relevance to state-space formulation for problem solving.