Lemma subTermsTrans : forall (n : nat) (ts : Terms n) (v1 v2 : nat) (s : Term), ~ In v2 (list_remove _ eq_nat_dec v1 (freeVarTerms L n ts)) -> substituteTerms L n (substituteTerms L n ts v1 (var v2)) v2 s = substituteTerms L n ts v1 s.