Constructing a Set of Reciprocal Vectors in 3D

Suppose we have a set of vectors  
\[\left\{ \mathbf{a}, \: \mathbf{b} , \: \mathbf{c} \right\}\]
  for which we need to construct a reciprocal set of vectors  
\[\left\{ \mathbf{a'}, \: \mathbf{b'} , \: \mathbf{c'} \right\}\]
.
Then  
\[\mathbf{a} \cdot \mathbf{a'} = \mathbf{b} \cdot \mathbf{b'} = \mathbf{c} \cdot \mathbf{c'}=1\]

\[\mathbf{a} \cdot \mathbf{b'} = \mathbf{a} \cdot \mathbf{c'} = \mathbf{b} \cdot \mathbf{c'}=\mathbf{b} \cdot \mathbf{a'} = \mathbf{c} \cdot \mathbf{a'} = \mathbf{c'} \cdot \mathbf{b}=0\]
.
Since  
\[\mathbf{a'} \cdot \mathbf{b}= \mathbf{a} \cdot \mathbf{c'}=0\]
, we can write  
\[\mathbf{a'}= \alpha (\mathbf{b} \times \mathbf{c})\]

Take the dot product with  
\[\mathbf{a}\]
  to give
\[\mathbf{a} \cdot \mathbf{a'}= \alpha (\mathbf{a} \cdot (\mathbf{b} \times \mathbf{c}))\]

\[\mathbf{a} \cdot \mathbf{a'}=1\]
  so  
\[ \alpha (\mathbf{a} \cdot (\mathbf{b} \times \mathbf{c}))=1 \rightarrow \alpha = \frac{1}{\mathbf{a} \cdot (\mathbf{b} \times \mathbf{c})} \rightarrow \mathbf{a'} = \frac{\mathbf{b} \times \mathbf{c}}{\mathbf{a} \cdot (\mathbf{b} \times \mathbf{c})}\]

Similarly  
\[\mathbf{b'} = \frac{\mathbf{c} \times \mathbf{a}}{\mathbf{b} \cdot (\mathbf{c} \times \mathbf{a})}, \: \mathbf{c'} = \frac{\mathbf{a} \times \mathbf{b}}{\mathbf{v} \cdot (\mathbf{a} \times \mathbf{b})}\]

If  
\[\left\{ \mathbf{a}, \: \mathbf{b} , \: \mathbf{c} \right\}\]
  are linearly dependent then  
\[\mathbf{a} \cdot (\mathbf{a} \times \mathbf{b}) =0\]
  etc and no set of reciprocal vectors exists.