log_exp - Boolean Operators and Parentheses
The Boolean operators
join logical expressions; the operator
negates a logical expression.
Logical expressions can be parenthesized explicitly using
When combining multiple Boolean operators, the system implicitly parenthesizes all logical expressions that are not closed by explicit parentheses according to the following hierarchy (operator order, precedence). This expresses the strength of the connection between Boolean operators:
NOTare combined with the adjacent logical expression on the right to make a logical expression.
ANDare combined as one logical expression.
ORare combined as one logical expression.
EQUIVare combined as one logical expression.
The logical expressions of a parenthesis level are processed from the left to the right. If the value of a logical expression determines the total value of the parenthesis level, the remaining logical expressions are not evaluated. The dynamic parts of the expressions that are not evaluated, such as field symbols or reference variables, are not checked for validity in this case.
- If multiple logical expressions are joined, the explicit and implicit parentheses always produce exactly one logical expression that is either true or false.
- The smallest unit of a joined logical expression is always a relational expression.
- If functional methods are used as operands in the relational expressions in question, they are executed directly before the respective relational expression is evaluated. Functional methods are not executed in relational expressions that do not need to be evaluated to get the result.