Go backward to Determining conditions and actions.
Go up to Determining conditions and actions.
Go forward to Tracing the creation and reference of working memory elements.

Determining a chunk's actions
-----------------------------

A chunk's actions are built from the results of a subgoal.  A *result* is any
preference created in the subgoal that is linked to a supergoal.  A
preference is linked if its identifier is the value of a supercontext
preference, or the value of a preference for an object that is linked to a
supercontext.

The results produced by a single production firing are the basis for creating
the actions of a chunk.  A new result can lead to other results by linking a
supercontext to a preference in the subgoal. This preference may in turn link
other preferences in the subgoal to the supercontext, making them results.
Therefore, the creation of a single preference that is linked to a
supercontext can lead to the creation of a large number of results.  All of
the newly created results become the basis of the chunk's actions.