(*+ (removed Hoare logic part) *)
(*+ Trying to relate spec safety to "oracle steps" safety *)
(** It turns out that the joinability condition of the oracle step can't be ensure (see last admit below) *)
Variable corestep_fun : forall c m c1 m1 c2 m2,
corestep c m c1 m1 ->
corestep c m c2 m2 ->
c1 = c2 /\ m1 = m2.
Variable excluded_middle : forall P : Prop, P \/ ~P.

(* Specifications: *)
Theorem jsafeN_versus_step_safeN_ n z c m G :
safeN_ oracle_at_ext_old n z c m -> safe_ n step (G, z, m, c).