Section EUTTG.
Context {E : Type -> Type} {R1 R2 : Type} (RR : R1 -> R2 -> Prop).
Definition transU := @eqit_trans_clo E R1 R2 RR true true true true.
Definition transD := @eqit_trans_clo E R1 R2 RR true true false false.
Definition bindC := @eqit_bind_clo E R1 R2 true true.
Definition euttVC gH r :=
gupaco2 (eqit_ RR true true id) transD (transU (r \2/ gH)).
Variant euttG rH rL gL gH t1 t2 : Prop :=
| euttG_intro
(IN: gpaco2 (@eqit_ E R1 R2 RR true true (euttVC gH)) transD (transU rH \2/ rL) gL t1 t2)
.
Hint Unfold transU transD bindC euttVC.
Hint Constructors euttG.
Hint Resolve euttVC_mon : paco.

Lemma euttVC_compat gH:
compose transD (euttVC gH) <3= compose (euttVC gH) transD.