Let $E\in\mathbb{R}$ be a Borel measurable set with finite measure $m(E)$. Show that there exists $A\subset E$ such that $m(A) = m(E)/2$.
Here is my proof. I just want to know if it's correct and if there are any inaccuracies.
Notice that $E$ either contains intervals in $\mathbb{R}$, or $E$ has measure zero. If $E$ has measure zero then any subset $A\subset E$ will have measure zero, satisfying the condition, $$0 = m(A) = m(E)/2 = 0/2 = 0$$ If $E$ does not have measure zero than let $$E=E' \cup \bigcup_{n=1}^N O_n $$ where $E'$ is the subset of $E$ containing all the singletons in $E$ such that $$m(E) = m\left(E' \cup \bigcup_{n=1}^N O_n \right) = m\left( \bigcup_{n=1}^N O_n \right)$$ Furthermore let $O_n$ be pairwise disjoint. Remember that we can always construct a union of pairwise disjoint sets $$O'_n = O_n\setminus(\cup_{m=1}^{n-1} O_m )$$ that is equal to a union of non pairwise disjoint sets $$\bigcup_{n=1}^N O_n = \bigcup_{n=1}^N O'_n$$ The union is finite because we $m(E)$ is finite. Now let $$O'_n = [a,b] \quad U_n = [a, (a+b)/2] \quad A = \bigcup_{n=1}^N U_n \quad \text{it doesn't matter if $O'_n$ is open or closed}$$ Clearly, $A\subset E$ and and $U_n$ are pairwise disjoint $$m(A) = \sum_{n=1}^N m(U_n) = \sum_{n=1}^N m(O'_n)/2 = \frac{1}{2}m \left(\bigcup_{n=1}^N O_n\right) = m(E)/2$$
Is this proof correct? Are there any inaccuracies?
Your argument is wrong. $[0,1]\setminus {\Bbb Q}$ has measure 1 but doesn't contain intervals.
An alternative (and much simpler approach): Look at the function $f(t) = m(E\cap (-\infty,t])$ and show that it is continuous and tends to zero and $m(E)$, respectively, as $t$ goes to minus or plus infinity.