boolean_expression ::=
 [NOT] 
 {
     boolean_constant_name
   | boolean_function_call
   | boolean_literal
   | boolean_variable_name
   | other_boolean_form
  }
 [{AND | OR} [NOT] 
 {
     boolean_constant_name
   | boolean_function_call
   | boolean_literal
   | boolean_variable_name
   | other_boolean_form
  }] 
 [{AND | OR} [NOT] 
 {  
     boolean_constant_name
   | boolean_function_call
   | boolean_literal
   | boolean_variable_name
   | other_boolean_form
  }]...