Смертельный трюк: излагаю доказательство через кватернионы. Доказательство не очень сложное, но излагать буду подробно, в несколько подходов. Требуется знать основные свойства кватернионов и минимум линейной алгебры.
Возьмём два четырёхмерных вектора, будем их записывать как кватернионы


Скалярное произведение

можно выразить через умножение кватернионов так

или равносильно

(проверяется вычислением). Векторы ортогональны (

), если

или равносильно

Квадрат длины вектора выражается так

Для чисто мнимых кватернионов, которые будем обозначать буквами


поэтому

и к тому же

ортогонально

если и только если

Для чисто мнимых кватернионов нормы единица верно
-- 30.03.2019, 06:42 --Возьмём два не нулевых линейно независимых четырёхмерных вектора


Построим по ним два чисто мнимых кватерниона


(проверьте, что

, а также

)
Докажем, что

и

имеют равную не нулевую длину. Если представить вектор

как

и вектор

как

то вектор

равен

а вектор

равен

(проверяется вычислением). Поскольку внешнее произведение

ортогонально вектору

, то

и

имеют одинаковую длину (как сумма и разность двух ортогональных векторов). Надо ещё доказать, что эта длина не нулевая. Если вдруг длина нулевая, то


Из второго равенства следует, что

и

пропорциональны (линейно зависимы). Оба

и

равны нулю быть не могут, поскольку тогда

и

превращаются в действительные числа и линейно зависимы. Если

и

оба не равны нулю, то из первого равенства следует пропорциональность

и

. Наконец, если один из кватернионов

вещественный (допустим

), а второй нет (

), то из первого равенства следует

и кватернион

нулевой. Ничего ли я не упустил?