Definition list2set {U} (l: list U) : Ensemble U :=
  fun x => List.In x l.Program Definition ff U (F: Ensemble U) (l : sig (@NoDup (sig F))) : sig (@NoDup U) :=
 (map (@proj1_sig _ _) (proj1_sig l)).

Lemma clause_bound_finite: forall n, Finite n -> Finite (clause_bound n).