Section Forward.
Variables (E: list deq).
Definition gf n := lambda enc n (var 0).
Definition enc_sol (sigma: nat -> nat) (x: fin) :=
match partition_F_G x with
| inl (exist _ x _) => gf (sigma x)
| inr (exist _ (x,y,z) _) => T (sigma y) (sigma x)
end.

Lemma enc_sol_T theta x y z: (enc_sol theta (G x y z)) = T (theta y) (theta x).