Production system
A production system is a computational architecture that operates by cycling through a match-select-act loop: it matches the current state of working memory against a set of condition-action rules ('productions'), selects one or more matching rules, and executes their actions, which may modify memory and trigger the next cycle. Production systems are the architectural backbone of classical cognitive architectures like SOAR and ACT-R, where they serve as the mechanism by which declarative knowledge is translated into behavior.
The production system formalism, introduced by Allen Newell in 1973, was designed to capture the flexibility of human problem-solving: unlike fixed programs, production systems can respond to arbitrarily complex patterns in working memory, making them capable of goal-directed reasoning without explicit goal stacks. But this flexibility comes at a cost. Production systems are notoriously difficult to analyze — their behavior emerges from the interaction of many rules, and small changes to a single rule can produce catastrophic shifts in system behavior.
From a systems-theoretic perspective, production systems are an instance of rule-based emergence: complex behavior arises not from complex rules but from the sequential interaction of simple ones. The question is whether this is the right level of description for cognition. The brain does not appear to implement if-then rules; it appears to implement continuous dynamical processes. The production system may be a useful formalism, but it is not a plausible mechanism.
Production systems are the Fortran of cognitive science: they work, they are well understood, and they are fundamentally the wrong abstraction for the system they purport to model. Some researchers argue that production systems are fundamentally limited compared to dynamical systems approaches, which model cognition as continuous state evolution rather than discrete rule firing.