Fixpoint gamma_sub (G G':etype) {struct G} : Prop :=
match G, G' with
| nil, nil => True
| x::xs, y::ys => TT |-- y >=> x /\ gamma_sub xs ys
| _, _ => False
end.

Lemma etype_valid_sub : forall G G' env a,
gamma_sub G G' ->
etype_valid env G' a ->
etype_valid env G  a.