RULE action_request_solution_connected_to_action

(* SCHEMA Ship_arrangement_schema; *)

(* ***********************************
Rules in the schema Ship_arrangement_schema
*********************************** *)


   RULE action_request_solution_connected_to_action FOR (action_request_solution, action );
   LOCAL
      t1_set : SET OF action_request_solution := [];
      t2_set : SET OF action := [];
      set_3 : SET OF action_method := [];
      violate : LOGICAL := FALSE;
   END_LOCAL;
      t1_set := QUERY (a <* action_request_solution| VALUE_IN(WHICH_CLASS(a), 'change plan'));
      t2_set := QUERY (b <* action| VALUE_IN(WHICH_CLASS(b), 'change'));
      REPEAT i := 1 TO HIINDEX(t1_set) WHILE NOT violate;
         set_3 := [];
         REPEAT j := 1 TO HIINDEX(t2_set);
            set_3 := set_3 + [ t2_set[j].chosen_method ];
         END_REPEAT;
         violate := VALUE_IN(set_3, t1_set[i].method);
      END_REPEAT;
   WHERE
      WR1:
         NOT violate;
   END_RULE;

[Top Level Definitions] [Exit]

Generated by STEP Tools® EXPRESS to HTML Converter
2012-03-27T17:16:37-04:00