Q:

Finding basis from intersection of two planes

I want to know the general procedure of finding basis of the intersection of two planes.   
Let 
\begin{align}
S = \{(x_1, x_2, x_3, x_4) \in \mathbb{R}^4 | a_1 x_1 + a_2 x_2 + a_3 x_3 + a_4 x_4 =0 \} \cap \{ (x_1, x_2, x_3, x_4) \in \mathbb{R}^4 | b_1 x_1 + b_2 x_2 + b_3 x_3 + b_4 x_4 =0\} 
\end{align}
Then how one can find a basis for $S$? 
It seems for me it is nothing but finding null space of 
\begin{align}
A = \begin{pmatrix}
a_1 & a_2 & a_3 & a_4 \\
b_1 & b_2 & b_3 & b_4 \\
0 & 0 & 0 & 0 \\
0 & 0 & 0 & 0
\end{pmatrix}
\end{align}
Am I right?   How one can prove this?  
Can we generalized to this with many planes?   [I mean for example introduced $c_1x_1 + c_2 x_3 + c_3 x_3 + c_4 x_4 =0$ and do the similar process.]  

A:

If $x\in \mathbb{R}^4$ must lie in $S$, then it must satisfy $\sum_i a_i x_i = 0$ and $\sum_i b_i x_i = 0$ (lying on both planes).  Thus, it must be in the null space of '$A$' you mentioned.  The question reduces to finding the null space. 
Assuming the rank of $A$ is two (in general, this is the case), its null space has a dimension of 2.  Hence, any vector belonging to the null space can be completely defined by two variables.  Let us choose $x_3$ and $x_4$ as these 'free' variables.  Since $Ax=0$, we have
$$
a_1 x_1 + a_2 x_2 = -x_3(a_3) - x_4(a_4)\\
b_1 x_1 + b_2 x_2 = -x_3(b_3) - x_4(b_4)
$$
Given values of $x_3$ and $x_4$, one can obtain $x_1$ and $x_2$ from the above equations.  To get a basis, one can arbitrarily chose a set of $(x_3,x_4)$ pair.  A simple choice is the set $\{(1,0),(0,1)\}$. The $x_1$ and $x_2$ values corresponding to these will fully define the basis vectors. 
There can also be cases where the planes are oriented in such a way that the intersection space is one-dimensional or empty.  If the planes are co-planar, the intersection space is the plane itself.