Section Bi.
Variables X Y: Type.
Variable TX: reduction_t A X.
Variable TY: reduction_t A Y.
(** Quantifications on both sides of a relation *)
Definition bisimulation R := simulation  TX TY R /\ simulation TY TX (trans R).
Definition expansion    R := expansion1  TX TY R /\ simulation TY TX (trans R).
Definition wexpansion   R := wexpansion1 TX TY R /\ simulation TY TX (trans R).
(** Definition of the co-inductive relations as `greatest relations such that' *)
Definition bisim   := union_st bisimulation.
Definition expand  := union_st expansion.
Definition wexpand := union_st wexpansion.

(* Specifications: *)
(** Validity of previous definitions *)
Lemma bisimulation_bisim: bisimulation bisim.
Lemma expansion_expand: expansion expand.
Lemma wexpansion_wexpand: wexpansion wexpand.
(** Inclusions *)
Lemma expand_wexpand: incl expand wexpand.
Lemma wexpand_bisim: incl wexpand bisim.
End Bi.