(* Considered preliminaries *)
Set Implicit Arguments.
From Undecidability.HOU Require Export calculus.terms std.std.
Fixpoint sapp {X} (A: list X) (sigma: fin -> X): fin -> X :=
match A with
| nil => sigma
| a :: A => a .: sapp A sigma
end.
Notation "A .+ sigma" := (sapp A sigma) (at level 67, right associativity).

Lemma it_up_var_sapp X A n delta e:
(forall x, delta x >= x) -> n = length A  ->
subst_exp (A .+ var_exp) (ren_exp (it n up_ren delta) e) = subst_exp (A .+ delta >> @var_exp X) e.