You seem just to be generating the Boolean subalgebra of the power set generated by your family. If you start with one nonempty non-everything set, you will get 4 sets: the set, its complement, the empty set and the whole space. In general, if you start with a finite collection of sets, then form all possible intersections, to generate the smallest possible nonempty sets, which are pairwise-disjoint. Throw in the complement of the union of them, and you have in effect a collection of n atoms. You can now generate 2<sup>n</sup> sets by taking the union of any of these atoms, and this collection is closed under union, intersection and complement, and includes the original sets. So a finite set will generate a finite set this way. This problem has nothing to do with the reals and works with subsets of any set. You have a collection of subsets of a given set X. The power set P(X) is a Boolean algebra with the operations of union, intersection and complement. Your question is asking about the finitely generated subalgebras of P(X). But every finitely genereated Boolean algebra is isomorphic to a finite power set (of the atoms), and has size 2<sup>n</sup>, where n is the number of atoms.