Proof using.
intros. eauto using mgv_ghost_simulation_1.
Qed.

Theorem mgv_ghost_invariant_lower :
forall P : _ -> Prop,
(forall net net' failed failed' out,
step_failure (failed, net) (failed', net') out ->
P (mgv_deghost net) ->
P (mgv_deghost net')) ->
(forall net net' failed failed' out,
@step_failure _ _ failure_params (failed, net) (failed', net') out ->
P net ->
P net').