Well, here is one way to get around this. Let a vector (a, b, c) be given. Solve the equation (a, b, c) dot (aa, bb, cc) = 0 for aa, bb and cc (and make sure that aa, bb and cc are not all equal to zero), therefore (aa, bb, cc) is orthogonal (a, b, c). I used Maxima ( http://maxima.sf.net ) to solve this problem.
(%i42) solve ([a, b, c] . [aa, bb, cc] = 0, [aa, bb, cc]), a=0, b=0; (%o42) [[aa = %r19, bb = %r20, cc = 0]] (%i43) solve ([a, b, c] . [aa, bb, cc] = 0, [aa, bb, cc]), a=0; %r21 c (%o43) [[aa = %r22, bb = - ------, cc = %r21]] b (%i44) solve ([a, b, c] . [aa, bb, cc] = 0, [aa, bb, cc]), b=0; %r23 c (%o44) [[aa = - ------, bb = %r24, cc = %r23]] a (%i45) solve ([a, b, c] . [aa, bb, cc] = 0, [aa, bb, cc]); %r25 c + %r26 b (%o45) [[aa = - ---------------, bb = %r26, cc = %r25]] a
Please note that at first I decided on special cases (a = 0 and b = 0, or = 0, or b = 0), since the solutions found are not all valid for some components equal to zero. The variables% r that appear are arbitrary constants. I set them to 1 to get some specific solutions.
(%i52) subst ([%r19 = 1, %r20 = 1], %o42); (%o52) [[aa = 1, bb = 1, cc = 0]] (%i53) subst ([%r21 = 1, %r22 = 1], %o43); c (%o53) [[aa = 1, bb = - -, cc = 1]] b (%i54) subst ([%r23 = 1, %r24 = 1], %o44); c (%o54) [[aa = - -, bb = 1, cc = 1]] a (%i55) subst ([%r25 = 1, %r26 = 1], %o45); c + b (%o55) [[aa = - -----, bb = 1, cc = 1]] a
Hope this helps. Good luck and keep up the good work.