Boolean expression

boolean-expression :=
  [(] [unary-boolean-operator] boolean-operand 
  [ binary-boolean-operator boolean-expression ] [)]

boolean-operand :=
    variable
  | FALSE
  | TRUE
  | boolean-expression
  | comparison-expression

unary-boolean-operator := NOT

binary-boolean-operator :=
    AND
  | OR

comparison-expression :=
    arithmetic-expression relational-operator arithmetic-expression
  | boolean-expression relational-operator boolean-expression 

relational-operator :=
    =
  | <
  | <
  | >
  | >=
  | ^=
  | !=
  | <>
  | ~=