Definition Gunion_disj := Gim.

(* Specifications: *)
Lemma Id_injproducg1 : forall x : Elt, dans x X -> injproducg V1 x = x :>Elt.
Lemma Id_injproducd2 : forall x : Elt, dans x X -> injproducd V2 x = x :>Elt.
Lemma N_dans_S_X : ~ dans S' X.
Lemma injproducg_V1 : forall x : Elt, dans x V1 -> injproducg V1 x = injgauche x.
Lemma map_injproducg_V1 : map (injproducg V1) V1 = map injgauche V1 :>Ensf.
Lemma injproducd_V2 : forall x : Elt, dans x V2 -> injproducd V2 x = injdroite x.
Lemma map_injproducd_V2 : map (injproducd V2) V2 = map injdroite V2 :>Ensf.
Lemma N_dans_S_V1' : ~ dans S' V1'.
Lemma N_dans_S_V2' : ~ dans S' V2'.
Lemma is_mono_u_X_V1_injproducg_V1 : is_mono (union X V1) (injproducg V1).
Lemma is_mono_u_X_V2_injproducd_V2 : is_mono (union X V2) (injproducd V2).
Lemma egal_LG_1_1' : l_egal (LG X V1 R1 S1) (LG X V1' R1' S1').
Lemma egal_LG_2_2' : l_egal (LG X V2 R2 S2) (LG X V2' R2' S2').
Lemma egal_X_X1' : X1' = X :>Ensf.
Lemma egal_X_X2' : X2' = X :>Ensf.
Lemma Grammaire1' : isGram X V1' R1' S1'.
Lemma Grammaire2' : isGram X V2' R2' S2'.
Lemma inter_V1'_V2'_empty : inter V1' V2' empty.
Lemma egal_LG_u_1'_2' : l_egal (LG X Vu Ru S') (lunion (LG X V1' R1' S1') (LG X V2' R2' S2')).
Theorem union_is_LCF : l_egal (LG X Vu Ru S') (lunion (LG X V1 R1 S1) (LG X V2 R2 S2)).