Before explaining how the control component is defined in Milord II we think that it is necessary to explain which is the relation between the deductive component and the control component in a Milord II module. At any moment of the execution of a module, either the deductive component or the control component is active and executing. It is the evaluation strategy of the module which determines when the execution focus has to change from one component to the other. Prior to a change in the execution focus some activity is undertaken to prepare the correct execution context for that new focus. When we stop executing the deductive component and before we start the control component execution a reification procedure is activated. In the reverse case, after stopping the execution of the control and before starting the execution of the deductive component a reflective procedure is executed.
These procedures modify the working memory (theory) of the component that is going to start by adding formulas to it. In this section we explain which formulas are added and under which conditions. Programmers cannot modify the way the reification and reflection procedures work, as it is fixed in the Milord II architecture.