End  Safety_Explicity_Safety.
Section Csafe_Safety.
Context (finit_branch_kstep:(forall x : kstate,
finite_on_x
(possible_image
(fun (x0 : kstate) (y : schedule) (x' : kstate) =>
exists y' : schedule, kstep x0 y x' y') valid x))).

Lemma csafe_safety_trick:
forall tr tp m,
(forall U : schedule, valid (tr, tp,m) U) ->
(forall (n : nat) U, csafe (U, tr, tp) m n) ->
forall U : schedule, safe kstate schedule kstep valid (tr,tp,m) U.