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.

Lemma transD_mon r1 r2 t1 t2
(IN: transD r1 t1 t2)
(LE: r1 <2= r2):
transD r2 t1 t2.