(* 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 nth_error_sapp X L (x: X) n sigma:
nth_error L n = Some x -> (L .+ sigma) n = x.