Section SOUNDNESS.
Variable prog: program.
Let ge := Genv.globalenv prog.
Hypothesis wt_prog:
forall i fd, In (i, Gfun fd) prog.(prog_defs) -> wt_fundef fd.
End SOUNDNESS.
(** Properties of well-typed states that are used in [Stackingproof]. *)

Lemma wt_state_getstack:
forall s f sp sl ofs ty rd c rs m,
wt_state (State s f sp (Lgetstack sl ofs ty rd :: c) rs m) ->
slot_valid f sl ofs ty = true.