# Orthonormal basis, decompse then add back

This is kind of a stupid question and I am taking some risk of getting some down-votes here, but, I can't resist posting it. Suppose $(u_1, u_2)$ is an orthonormal basis for $R^2$, and let $x$ be an arbitrary vector in $R^2$, then we can decompose $x$ by projecting on $u_1, u_2$, i.e.

\begin{align*} (u_1^T x) u_1 \\ (u_2^T x) u_2 \\ \end{align*}

Certainly we have

\begin{align*} x = (u_1^T x) u_1 + (u_2^T x) u_2 \end{align*}

Looks like a simple problem, but how can I prove this?

Consider a more general situation. Suppose $\{v_1,v_2,\dots,v_k\}$ is an orthogonal basis for a vector space $V$, and $w$ is any vector in $V$. So there are unique scalars $c_1,c_2,\dots,c_k$ such that $$w=c_1v_1+c_2v_2+\cdots+c_kv_k.$$ Consider the inner product $$(w,v_i)=(c_1v_1+c_2v_2+\cdots+c_kv_k,v_i)=(c_iv_i,v_i)=c_i(v_i,v_i)$$ since $(v_i,v_j)=0,\ \forall i\ne j$. So the coefficient $c_i$ has the form $$c_i=\frac{(w,v_i)}{(v_i,v_i)}.$$
In your question, we know $i=1,2$ and $(v_i,v_i)=1$ and $(x,v_i)=x^Tv_i$.
By definition of a base $\exists \; a,b \in \mathbb{R} : \; x = a u_1 + b u_2$.
Now $(x,u_1)=(au_1+bu_2,u_1) = (a u_1 , u_1 ) + (b u_2, u_1) = a(u_1 , u_1 ) + b(u_2, u_1) = a$
Same for $b$.