Definition Mots (X : Ensf) :=
  forall a : Elt, dans a X -> exists w : Word, word w = a.Definition Regles (X V R : Ensf) :=
  forall x : Elt,
  dans x R ->
  ex2 (fun A : Elt => dans A V)
    (fun A : Elt =>
     ex2 (fun B : Word => x = couple A (word B))
       (fun B : Word => inmonoid (union X V) B)).

(* Specifications: *)
Lemma Regles_inv1 : forall (X V R : Ensf) (x y : Elt), Regles X V R -> dans (couple x y) R -> dans x V.
Lemma Regles_inv2 : forall (X V R : Ensf) (x : Elt) (u : Word), Regles X V R -> dans (couple x (word u)) R -> inmonoid (union X V) u.