MathOverflow will be down for maintenance for approximately 3 hours, starting Monday evening (06/24/2013) at approximately 9:00 PM Eastern time (UTC-4).

4 added 23 characters in body

Here is a construction that I think will work:

Take $B$ to be the Boolean algebra $P(\omega )$ with the usual operations. This has a countable dense subset. Now let $IC$ denote the collection of infinite subsets of $\omega$ with infinite complements. We will construct a family $A$ consisting of $\aleph _1$ sets, all of which are in $IC$, and such that $A$ is closed under complements, unions, and intersections; so after we throw in the nullset and total set, $A$ will be a subalgebra of $B$. It will also follow from our construction that $A$ cannot have a countable dense subset.

So here's the construction: we build $A$ inductively, in $\omega _1$ countable stages $(S _ \alpha ) _{ \alpha \in \omega _1 }$ which are cumulative. At each successor stage, we will add in a single new set to the previous stage, then close up under complements, unions, and intersections. So in fact there will be countably many new sets added at each successor stage. At limit stages we take the union of all previous stages. Note that each stage is closed under Boolean operations.

So we just have to say which new set $X$ we throw in at each successor stage $S_{\alpha + 1}$. We need to be sure that when we add in this new set and close up under Boolean operations, all the sets we get are still in $IC$. For this it suffices that for every $Y \in S_{\alpha}$, we have $X \cup Y \in IC$ and $X \cap Y \in IC$. In other words, $X$ and $\omega \setminus X$ must both have infinite intersection with every set in $S_{\alpha}$. And since by induction hypothesis every set in $S_{\alpha}$ is in $IC$, and there are only countably many of them, we can make our set $X$ by a routine diagonalization: for instance, we could line up pairs $(Y, n)$ for $Y \in S_{\alpha}$, $n \in \omega$ so that the pairs have ordertype $\omega$, and then go through them one by one, building initial segments of $X$ and $\omega \setminus X$ as we go to make sure that at the step $(Y, n)$, $X$ and $\omega \setminus X$ each have at least $n$ elements of $Y$ in them.

This completes the construction of $A$. Note that $A$ cannot have a countable dense subset, since any countable subset of $A$ shows up at some stage $S_{\alpha}$, and then at the next stage we added in a set which is not contained in any $Y \in S_{\alpha}$.

EDIT: A SECOND CONSTRUCTION. Here is another construction, which yields $2^{\aleph _0 }$ independent subsets of $\omega$. (Thanks to Joel for the hint about trees!) We will make a continuum-sized bunch of independent reals (subsets of $\omega$), by building their initial segments in $\omega$ many stages. The idea is that we are working our way up a binary tree, level by level, and so every level is finite; and at each such level, we ensure that no nontrivial Boolean relations can hold between two reals whose initial segments at that level are different. More precisely:

We represent subsets of $\omega$ as sequences of 0's and 1's, where $n$ is in the subset iff the $n$-th spot in the sequence is 1. So when we build finite initial segments of these sequences, we can specify some natural numbers to definitely be in the subset, and also specify some natural numbers to definitely NOT be in the subset. So: Start by making two different finite initial segments of reals, such that no nontrivial Boolean relations can hold between reals with those initial segments. (By 'nontrivial Boolean relation' I mean: nontrivial equation with Boolean connectives, where the only elements we have names for are the nullset, the total set, and the reals bearing the relation in question.) Since there are only finitely many possible nontrivial Boolean relations among a finite set of elements, and any particular relation can be forced to not hold by extending the initial segments in an appropriate way, we can get two different initial segments such that any two reals with these respective initial segments are already forced to not satisfy any nontrivial Boolean relations with each other. Next we fork each of these initial segments off into two longer initial segments; so now we have four initial segments, and we consider all possible nontrivial Boolean relations which could hold among these four elements. As before, extend the four segments until all such relations are forced to be false. Continue splitting segments into two, and forcing all finitely many possible Boolean relations to be false, $\omega$ many times. Then we will have a perfect binary tree of independent reals.

3 added 2182 characters in body

EDIT: Here is another construction, which yields $2^{\aleph _0 }$ independent subsets of $\omega$. (Thanks to Joel for the hint about trees!) We will make a continuum-sized bunch of independent reals (subsets of $\omega$), by building their initial segments in $\omega$ many stages. The idea is that we are working our way up a binary tree, level by level, and so every level is finite; and at each such level, we ensure that no nontrivial Boolean relations can hold between two reals whose initial segments at that level are different. More precisely:

We represent subsets of $\omega$ as sequences of 0's and 1's, where $n$ is in the subset iff the $n$-th spot in the sequence is 1. So when we build finite initial segments of these sequences, we can specify some natural numbers to definitely be in the subset, and also specify some natural numbers to definitely NOT be in the subset. So: Start by making two different finite initial segments of reals, such that no nontrivial Boolean relations can hold between reals with those initial segments. (By 'nontrivial Boolean relation' I mean: nontrivial equation with Boolean connectives, where the only elements we have names for are the nullset, the total set, and the reals bearing the relation in question.) Since there are only finitely many possible nontrivial Boolean relations among a finite set of elements, and any particular relation can be forced to not hold by extending the initial segments in an appropriate way, we can get two different initial segments such that any two reals with these respective initial segments are already forced to not satisfy any nontrivial Boolean relations with each other. Next we fork each of these initial segments off into two longer initial segments; so now we have four initial segments, and we consider all possible nontrivial Boolean relations which could hold among these four elements. As before, extend the four segments until all such relations are forced to be false. Continue splitting segments into two, and forcing all finitely many possible Boolean relations to be false, $\omega$ many times. Then we will have a perfect binary tree of independent reals.

Post Undeleted by Andy Voellmer
2 added 1710 characters in body
Post Deleted by Andy Voellmer
1