End Properties.
Hint Rewrite @subst0_id : open.
Hint Rewrite @substl_subst1 : open.
Hint Rewrite @substl_trunc_notin using assumption : open.
Section MoreLemmas.
Context {A val : Type} {Heq : RelDec (@eq A)} {HeqOk : RelDec_Correct Heq}.
Context {R : ValNull val}.
Open Scope open_scope.

Lemma subst_var_cons_ineq : forall (x:A) y es (e : expr (val := val))
(Hneq: x <> y),
(stack_get x // (cons (y, e) es)) = (stack_get x // es).