Definition tot_map_net_event e :=
{| evt_a := (List.map tot_map_name (fst e.(evt_a)), tot_map_net (snd e.(evt_a))) ;
   evt_l := tot_map_label e.(evt_l) ;
   evt_trace := List.map tot_map_trace_occ e.(evt_trace) |}.

(* Specifications: *)
Lemma tot_map_net_event_map_unfold : forall s, Cons (tot_map_net_event (hd s)) (map tot_map_net_event (tl s)) = map tot_map_net_event s.
Lemma lb_step_trace_execution_lb_step_failure_tot_map_net_infseq : forall s, lb_step_execution lb_step_failure s -> lb_step_execution lb_step_failure (map tot_map_net_event s).
Lemma tot_map_net_label_event_inf_often_occurred : forall l s, inf_often (now (occurred l)) s -> inf_often (now (occurred (tot_map_label l))) (map tot_map_net_event s).
Lemma tot_map_net_label_event_inf_often_occurred_conv : forall l s, inf_often (now (occurred (tot_map_label l))) (map tot_map_net_event s) -> inf_often (now (occurred l)) s.
Lemma tot_map_net_hd_step_failure_star_always : forall s, event_step_star step_failure step_failure_init (hd s) -> lb_step_execution lb_step_failure s -> always (now (event_step_star step_failure step_failure_init)) (map tot_map_net_event s).
Theorem lb_step_ordered_failure_tot_mapped_simulation_1 : forall net net' failed failed' lb tr, @lb_step_ordered_failure _ labeled_multi_fst (failed, net) lb (failed', net') tr -> @lb_step_ordered_failure _ labeled_multi_snd (List.map tot_map_name failed, tot_map_onet net) (tot_map_label lb) (List.map tot_map_name failed', tot_map_onet net') (List.map tot_map_trace tr).