Fixpoint LindenbaumChain (n: nat): Ensemble A :=
  match n with
  | 0 => init
  | S n => fun a => LindenbaumChain n a \/ CA a n /\ P (Union _ (LindenbaumChain n) (Singleton _ a))
  end.Definition LindenbaumConstruction: Ensemble A :=
  fun a => exists n, LindenbaumChain n a.

Lemma Lindenbaum_included_n_m: forall n m, n <= m -> Included _ (LindenbaumChain n) (LindenbaumChain m).