Open set = *disjoint* union of open balls?

Recently, i have read the assertion that in $Q_p$, the p-adics, every open set is a disjoint union of open balls. This is not true for a general metric space, see for example How to make open covers disjoint in $\mathbb{R}$?. My question is:

How to prove this assertion / What properties (in general) does the topology need to have in order for this to hold?

For example: I have the feeling that the striking property in $Q_p$ is that two open balls are either disjoint or one is contained in the other. Is it true that, if a metric space (with/without the demand that the metric is an ultrametric?) has this property, then the assertion that every open set has a disjoint covering of open balls follows?

The property above indicates how an algorithm could look like: If $$U = \bigcup_{i \in \mathcal{I}} B_{\epsilon_i}(x_i)$$ then one goes through the $x_i$ and if there is some $x_j$ s.t. $B_{\epsilon_i}(x_i) \cap B_{\epsilon_j}(x_j) \neq \emptyset$ then if $B_{\epsilon_i}(x_i) \subset B_{\epsilon_j}(x_j)$, one removes $x_i$ from the list and otherwise one removes $x_j$. Of course, one needs some set theoretic argument that assures that this process keeps manageable. I played around by finding equivalence relations (like $x_i \sim x_j$ iff. their balls are equal) and with the lemma of Zorn directly by sorting all the "sublists" $(x_j)_{j \in \mathcal{J}}$ s.t. their union of balls is disjoint and so on but nothing really gave me a disjoint union that covered whole $U$.

Fabian Werner

-
You need to know that the union of an ascending sequence of open balls is an open ball. This is true in an ultrametric space because every point of an open ball can be regarded as the centre of the ball. –  Zhen Lin Sep 11 '12 at 14:28
Ok, thanks. I assume one then forces all coverings to run through the same index-set and then sorts the coverings of $U$ by balls like $(A_i)_i \leq (B_i)_i$ iff $A_i \subset B_i$ for all $i$ and then chooses a 'maximal' covering. Is that right? (seems strange to me to force them to run through the same index set but when proving the upper bound for chains one needs to do that... or could you perhaps tell me a more elegant way for phrasing this?) –  Fabian Werner Sep 11 '12 at 15:04
Side remark: what about the case $(B_n(x))_{n \in \mathbb{N}}$? This is an ascending sequence of open balls but their union is the whole space... but then the open set is also the whole space, so actually one needs to know that every ascending chain of open balls is either an open ball or the whole space :D –  Fabian Werner Sep 11 '12 at 15:08
Btw, you said this is not true in general metric spaces, but do you have a counter-example ? The discussion you mentionned is about an open cover of a subset, which is not exactly the same. And actually, in $\mathbb{R}$, every open set is a disjoint union of open balls. It seems hard to write an open square in $\mathbb{R}^2$ as a disjoint union of open euclidean balls, but how can one prove that it's impossible ? (Vitali's covering theorem asserts that one can do it up to a Lebesgue-negligible set) –  Ahriman Sep 11 '12 at 15:13
@Ahriman: the open square is connected while a disjoint union of open balls is disconnected? –  Willie Wong Sep 11 '12 at 15:39

Let $Y$ be an open subset of an ultrametric space $X$. Since $Y$ is open, there exists a collection $\mathfrak{U}$ of open balls such that $Y = \bigcup_{U \in \mathfrak{U}} U$. We shall adopt the convention that $X$ is itself an open ball – after all, every positive real number is less than $\infty$.
Now, consider $\mathfrak{U}$ as a set partially ordered by inclusion. We may assume $\emptyset \notin \mathfrak{U}$ for simplicity. The observation that the union of an ascending chain of open balls is again an open ball implies we can make $\mathfrak{U}$ into a chain-complete poset by adding in the unions of such ascending chains if necessary. Moreover, since any two open balls are either disjoint or part of a chain, chain-completeness for $\mathfrak{U}$ implies $\mathfrak{U}$ is closed under directed unions.
We define an equivalence relation on $\mathfrak{U}$: $$U \sim U' \text{ if and only if there is } V \text{ in } \mathfrak{U} \text{ such that } U \subseteq V \text{ and } U' \subseteq V$$ This is clearly reflexive and symmetric; for transitivity, observe that if $U \subseteq V$, $U' \subseteq V$, $U' \subseteq V'$ and $U'' \subseteq V''$, then $\emptyset \ne U' \subseteq V \cap V'$, so either $V \subseteq V'$ or $V' \subseteq V$, and therefore $V \cup V' \in \mathfrak{U}$ and $U \subseteq V \cup V'$ and $U'' \subseteq V \cup V'$, as required. Thus, we can partition $\mathfrak{U}$ into equivalence classes, and each equivalence class is a directed subsystem of $\mathfrak{U}$ by the definition of the equivalence relation. We argued that $\mathfrak{U}$ is closed under directed unions, so each equivalence class has a maximal element. This yields the desired decomposition of $Y$ as a disjoint union of open balls.
I'm very tempted to say that $\mathfrak{U}$ is a directed forest, but that's not quite true since the chains can be non-well-founded... –  Zhen Lin Sep 11 '12 at 15:45
Beatiful, thank you very much!! There is only one thing that still bothers me: If one explicitely wants that balls do not have radius infinity, then one can only argue that all open sets $U \subset X$ with $U \neq X$ have disjoint coverings of open balls. In the case of $Q_p$ or more general, if the metric is discrete, open balls are also closed, so one can first remove a single open ball and then apply the above to the rest... What happens in the general case? –  Fabian Werner Sep 12 '12 at 10:55