Section hlist_rel_map.
Variable A : Type.
Variables F G F' G' : A -> Type.
Variable R : forall x : A, F x -> G x -> Prop.
Variable R' : forall x : A, F' x -> G' x -> Prop.
Variable ff : forall x : A, F x -> F' x.
Variable gg : forall x : A, G x -> G' x.
Hypothesis R_ff_R' :
forall t x y, @R t x y ->
@R' t (ff x) (gg y).

Theorem hlist_hrel_app
: forall l ls x xs y ys,
@hlist_hrel A F G R (l ++ ls) (hlist_app x xs) (hlist_app y ys) ->
@hlist_hrel A F G R l x y /\ @hlist_hrel A F G R ls xs ys.