Definition no_output_at_backup_trace {A} tr := (forall x, In x tr -> @no_output_at_backup A x).

(* Specifications: *)
Lemma NOABT_tail : forall A x y, @no_output_at_backup_trace A (x :: y) -> no_output_at_backup_trace y.
Lemma outputs_m_revert_trace : forall tr, no_output_at_backup_trace tr -> outputs_m tr = outputs_1 (revert_trace tr).
Lemma NOABT_cons : forall A x y, no_output_at_backup x -> @no_output_at_backup_trace A y -> no_output_at_backup_trace (x :: y).
Lemma NOABT_head : forall A x y, @no_output_at_backup_trace A (x :: y) -> no_output_at_backup x.
Lemma NOABT_app : forall A xs ys, @no_output_at_backup_trace A xs -> no_output_at_backup_trace ys -> no_output_at_backup_trace (xs ++ ys).
Theorem pbj_NOABT : forall net tr, step_async_star (params:=PB_multi_params) step_async_init net tr -> no_output_at_backup_trace tr.