Definition Pred : Cobham :=
Rec Zero (Proj 2 0) (Proj 2 0) (Proj 1 0).
(* Eval vm_compute in (arity pred'). *)
Definition move_arg (n i j:nat) (e:Cobham) : Cobham :=
Comp n e (move_forward i j
(map (Proj n) (seq 0 n)) (Proj n 0)).

Lemma move_arg_correct n i j e l :
length l = n ->
Sem (move_arg n i j e) l =
Sem e (move_forward i j l (Sem (Proj n 0) l)).