let get_action_invariant kf ki (status,_) =
  let (state,_ as auto) = Data_for_aorai.getAutomata () in
  let treat_one_state pre_state post_state =
    let trans = Path_analysis.get_transitions_of_state pre_state auto in
    if List.exists (fun x -> status.(x.stop.nums).(post_state.nums)) trans then
        begin
          let bindings =
            Data_for_aorai.get_action_path kf ki pre_state post_state
          in
          List.map (Aorai_utils.update_to_pred post_state) bindings
        end 
      else []
  in
  List.flatten (Extlib.product treat_one_state state state)