The problem
Define the sum of two vector spaces (often two subspaces of a common vector space) $A$ and $B$ as $A+B=\{a+b: a \in A, b \in B \}.$ Let $U,V,W$ be arbitrary vector spaces. I want to show that
$$U \cap (V+W)=(U \cap V)+(U \cap W)$$
My approach
By starting with $x \in (U \cap V)+(U \cap W)$ and applying the properties of vector spaces (closure under vector addition) to end up with $x \in U \cap (V+W)$, I've shown that $(U \cap V)+(U \cap W) \subset U \cap (V+W)$.
My problem is with the reverse, i.e. showing that $U \cap (V+W) \subset (U \cap V)+(U \cap W)$. Following the usual procedure, I started with:
$x \in U \cap (V+W)$, which implies that $x \in U \land x \in V+W$.
Now, $x \in V+W \implies x=y+z$ for some $y \in V$ and some $z \in W$.
Again, $x=y+z \in U$. If we could show that $y$ and $z$ both comes from $U$, then we will be done. But unfortunately $y+z \in U$ doesn't necessarily imply that $y \in U$ and $z \in U.$ Am I missing some very basic properties of vector spaces that would make this trivial? Any help would be greatly appreciated.
P.S. Just a dumb question. Does the result break down if we replace vector spaces by arbitrary sets in the above problem?