Corticon Studio: Rule Language Guide : Precedence of rule operators

# Precedence of rule operators

The precedence of operators affects the grouping and evaluation of expressions. Expressions with higher-precedence operators are evaluated first. Where several operators have equal precedence, they are evaluated from left to right. The following table summarizes Corticon's operator precedence.
 Operator precedence Operator Operator Name Example 1 ( ) Parenthetic expression (5.5 / 10) 2 - Unary negative -10 not Boolean test not 10 3 * Arithmetic: Multiplication 5.5 * 10 / Arithmetic: Division 5.5 / 10 ** Arithmetic: Exponentiation (Powers and Roots) 5 ** 225 ** 0.5125 ** (1.0/3.0) 4 + Arithmetic: Addition 5.5 + 10 - Arithmetic: Subtraction 10.0 – 5.5 5 < Relational: Less Than 5.5 < 10 <= Relational: Less Than Or Equal To 5.5 <= 5.5 > Relational: Greater Than 10 > 5.5 >= Relational: Greater Than Or Equal To 10 >= 10 = Relational: Equal 5.5=5.5 <> Relational: Not Equal 5.5 <> 10 6 (expression, expression) Logical: AND (>5.5,<10) (expression or expression) Logical: OR (<5.5 or >10)
Note: While expressions within parentheses that are separated by logical AND / OR operators are valid, the component expressions are not evaluated individually when testing for completeness, and might cause unintended side effects during rule execution. Best practice within a Corticon Rulesheet is to represent AND conditions as separate condition rows and OR conditions as separate rules -- doing so allows you to get the full benefit of Corticon’s logical analysis.
Note: It is recommended that you place arithmetic exponentiation expressions in parentheses.