0 a number or quantity that has something done to it in a calculation. For example, in 7 + y, 7 and y are the operands. --
The inefficiency of the derived version manifests itself when both the operator and the operand are changed by the conversion.
So, two rewrites within the operator of a function application can be merged into one even when separated by a rewrite within the operand.
The disjunctive operator distinguishes all operand sorts such that each data element belongs explicitly to one of these sorts.
It consists of the actual parameters and local variables, and a small operand stack for the intermediate results of expression evaluations.
In function application, the operator is first evaluated to a function; it is then applied to the operand whose evaluation is suspended in an abstraction.
Otherwise, we 'jump' to the code specified by the operand by installing its associated code.
We assume that at least one operand has been renamed to a variant with variables standardized apart.
At a function application the value is only allowed to propagate when 'unchanged' is obtained for both the operator and the operand.