In this section we present a taxonomy of conditions. We say that a condition writes system state, if the condition evaluation function changes values of some system variables.
The fact that evaluation of condition 25#25 changes value of the system variable 116#116 is represented by the notation 117#117.
We say that a condition reads system state if the condition evaluation function requires reading of particular system variables.
The fact that evaluation of condition 25#25 requires the value of the system variable 116#116 is represented by the notation 118#118.
We say that a condition 76#76 depends on condition 119#119, if condition 76#76 requires reading of some system variables, which are written by the condition 120#120.
The fact that condition 76#76 requires the value of the system variable 116#116, which is written by the condition 120#120 is represented by the notation: 121#121.
Conditions are classified by the read/write system state property:
Note that write conditions must be evaluated before the read conditions that are dependent on them.
Designing the condition ordering algorithm that satisfies the ordering requirements falls into the realm of scheduling of processes with precedence constraints and is outside of the scope of this paper.