Найти в Дзене
Философия разума

Четырехполярная теория кватернионов В. Ленского как протокол

Цель статьи — дать читателю чёткое ощущение: «Теперь я понимаю, что такое кватернионы, как они устроены и где их можно (а где нельзя) применять». Кватернионы — это не «удобная алгебра», а строгий протокол с чёткими правилами. Его каркас состоит из четырёх неразделимых компонентов. Кирпичик 1. L4‑янтры: канонический закон для каждой оси Кирпичик 2. Ориентированная склейка осей Кирпичик 3. Зеркало m(x) = (−) ∗ x Кирпичик 4. Закон переворота порядка Итог: кватернион — это алгебра ориентации. Его сила в том, что он кодирует: Если вам нужна строгая коммутативность (x ∗ y = y ∗ x без исключений), нельзя пытаться «исправить» кватернионы. Это приведёт к разрушению их сути. Вместо этого я строю отдельный класс объектов — коммутативные суперпозиции четырёхполярных пространств. Почему это другой объект? Три минимальных типа коммутативных суперпозиций Как избежать вырождения: четыре «предохранителя» Чтобы коммутативная суперпозиция не превратилась в бесструктурную кашу, я ставлю жёсткие «гейты»: К
Оглавление

Цель статьи — дать читателю чёткое ощущение: «Теперь я понимаю, что такое кватернионы, как они устроены и где их можно (а где нельзя) применять».

1. Теория кватернионов как протокол: четыре нерушимых кирпичика

Кватернионы — это не «удобная алгебра», а строгий протокол с чёткими правилами. Его каркас состоит из четырёх неразделимых компонентов.

Кирпичик 1. L4‑янтры: канонический закон для каждой оси

  • Для любой оси u выполняется: u ∗ u = (−).
  • Это не соглашение, а структурный закон: квадрат оси всегда даёт центральный знак (−).
  • Следствие: каждая ось «замкнута на себя» — её квадрат не порождает новую ось, а возвращает к знаковой системе.

Кирпичик 2. Ориентированная склейка осей

  • Произведения разных осей подчиняются циклическому правилу: i ∗ j = k, j ∗ k = i, k ∗ i = j.
  • Порядок умножения критически важен:j ∗ i = (−) ∗ k = (−k) не равно i ∗ j.
  • Это кодирует ориентацию пространства: смена порядка — это не просто «другой ответ», а зеркальный поворот.

Кирпичик 3. Зеркало m(x) = (−) ∗ x

  • Оператор m переворачивает знак любого элемента: m(i) = (−i), m(k) = (−k), m((−)) = (+).
  • Он необходим для:
    описания обратных элементов (u−1 = (−u));
    формулировки закона переворота порядка;
    сохранения замкнутости системы при зеркальных преобразованиях.

Кирпичик 4. Закон переворота порядка

  • Для любых x, y выполняется:y ∗ x = m(x ∗ y) = (−) ∗ (x ∗ y).
  • Это не свойство, а определение: некоммутативность — не «неудобство», а смысловой центр.
  • Она отражает физическую реальность: вращение вокруг оси i, затем вокруг j — это не то же самое, что вокруг j, затем i.

Итог: кватернион — это алгебра ориентации. Его сила в том, что он кодирует:

  • направление осей;
  • порядок действий;
  • зеркальные преобразования;
  • замкнутость системы.

2. Где заканчивается кватернион и начинается другое: коммутативные суперпозиции

Если вам нужна строгая коммутативность (x ∗ y = y ∗ x без исключений), нельзя пытаться «исправить» кватернионы. Это приведёт к разрушению их сути. Вместо этого я строю отдельный класс объектов — коммутативные суперпозиции четырёхполярных пространств.

Почему это другой объект?

  • Он отказывается от одного или нескольких кирпичиков протокола (например, от ориентированной склейки или закона u ∗ u = (−)).
  • Его цель — не кодировать ориентацию, а обеспечить алгебраическую простоту.
  • Он платит цену: теряет часть структуры, но получает удобство для определённых задач.

Три минимальных типа коммутативных суперпозиций

  1. Суперпозиции с делителями нуля
    Вводятся элементы a не равно 0 и b не равно 0, такие что a ∗ b = (+).
    Плюсы: простая коммутативная алгебра.
    Минусы: теряются обратимость и замкнутость; появляются «дыры» в структуре.
    Применение: задачи, где важны линейные комбинации, а не обратные элементы.
  2. Суперпозиции с зависимыми осями
    Оси не независимы: например, ub​ = (−ua​).
    Плюсы: компактность, лёгкость вычислений.
    Минусы: теряется геометрическая интерпретация; пространство «сжимается».
    Применение: скалярные модели с индексами вместо векторов.
  3. Суперпозиции с расширенным носителем
    Вместо экономной склейки осей используется прямое произведение пространств.
    Плюсы: можно сохранить часть знаковой структуры.
    Минусы: система становится громоздкой; теряется наглядность.
    Применение: задачи, требующие избыточности (например, кодирование с коррекцией ошибок).

Как избежать вырождения: четыре «предохранителя»

Чтобы коммутативная суперпозиция не превратилась в бесструктурную кашу, я ставлю жёсткие «гейты»:

  1. «Проверка на схлопывание знаков»
    Запрещаю равенства вида (+) = (−).
    Если это происходит, возвращаюсь к прото-коду и меняю правила склейки.
  2. «Проверка на независимость осей»
    Требую, чтобы для любых двух осей ua​ и ub​ не выполнялось ub​ = α ∗ ua​, где α — скаляр.
    Если оси зависимы, меняю тип суперпозиции или добавляю новые измерения.
  3. «Проверка на делители нуля»
    Фиксирую, какие элементы могут давать (+) при умножении.
    Ограничиваю их число, чтобы не разрушить обратимость полностью.
  4. «Проверка на размер носителя»
    Слежу, чтобы система не раздувалась бесконтрольно.
    Если носитель растёт экспоненциально, перехожу к приближённым методам или меняю класс объекта.

3. Как это использовать: практическое руководство

Когда брать кватернионы?

  • Если вам нужно описывать вращения в 3D (графика, робототехника, навигация).
  • Если важен порядок действий (например, последовательность поворотов).
  • Если требуется замкнутая алгебра с обратными элементами.
  • Пример: расчёт поворота камеры в игре: v′ = q ∗ v ∗ q−1.

Когда брать коммутативные суперпозиции?

  • Если нужна простая алгебра для линейных комбинаций.
  • Если ориентация не важна, а важна скорость вычислений.
  • Если допустимо потерять часть структуры ради удобства.
  • Пример: кодирование данных, где коммутативность упрощает алгоритмы.

Итог

  • Кватернионы — это строгий протокол: L4‑янтры + ориентированная склейка + зеркало + закон переворота порядка. Их сила — в кодировании ориентации.
  • Коммутативные суперпозиции — это отдельный класс объектов: они отказываются от ориентации ради простоты, но платят ценой потери структуры.
  • Ключ к применению — чётко понимать, что вам нужно:
    Если важна геометрия и порядок — берите кватернионы.
    Если нужна алгебраическая простота — стройте суперпозиции, но ставьте «предохранители».

Теперь у вас есть цельный механизм: вы знаете, как кватернионы устроены, почему они именно такие, и где их границы. Это не «волшебный инструмент», а точный прибор — и его мощь раскрывается, когда вы используете его по назначению.

4. Что я называю “правильной теорией кватернионов”

Я говорю о «правильности» не в смысле «единственно верного учения» и не ради противопоставления учебникам. Моя цель — устранить главный источник практических ошибок: незаметное исчезновение ориентационного следа в рассуждениях и вычислениях.

В чём суть «правильности»

«Правильность» здесь — это правильность дисциплины, а не догмы. Она обеспечивается четырьмя критериями:

  1. Вычислимая определённость каждого шага
    Любое преобразование явно задано правилами протокола.
    Нет «неявных соглашений»: каждый переход обоснован одним из четырёх кирпичиков теории.
    Пример: чтобы найти u−1, я не угадываю, а применяю правило u−1 = (−u), вытекающее из u ∗ u = (−).
  2. Сохранение ориентационного следа
    Смена порядка, зеркалирование или переобозначение всегда оставляют видимый след в выражении.
    Нельзя «тихо» заменить j ∗ i на i ∗ j — это автоматически даёт (−) ∗ k, и знак (−) остаётся в записи.
    След ориентации не теряется ни на одном этапе вычислений.
  3. Невозможность случайного схлопывания знаков
    Равенство вида k = (−k) не может возникнуть, если строго следовать протоколу.
    Это гарантируется:
    законом переворота порядка (y ∗ x = (−) ∗ (x ∗ y));
    жёсткой связью между зеркалом m(x) = (−) ∗ x и структурой знаков;
    запретом на произвольные отождествления осей.
    Если такое равенство появилось — значит, нарушено одно из правил протокола.
  4. Замкнутость системы
    Все операции (умножение, инвертирование, зеркалирование) остаются внутри четырёхполярной структуры: (+), u, (−), (−u).
    Новые элементы не вводятся «из воздуха» — они порождаются только через канонические законы.
    Система не требует внешних допущений: она самодостаточна.

Почему это важно на практике

Без соблюдения этих принципов возникают типичные ошибки:

  • Потеря ориентации: i ∗ j и j ∗ i записываются как одно и то же, хотя это зеркальные операции.
  • Схлопывание знаков: (+) и (−) становятся неразличимы, разрушая механизм зеркала.
  • Ложная независимость осей: ub​ объявляется «новой» осью, хотя на деле ub​ = (−ua​).
  • Незамкнутость: появляются элементы, не выводимые из L4‑закона, что ломает алгебраическую структуру.

Моя «правильная теория» исключает эти ошибки за счёт:

  • чётких правил склейки осей;
  • явного учёта порядка умножения;
  • жёсткого контроля над знаками;
  • запрета на произвольные отождествления.

Итог

«Правильная теория кватернионов» — это:

  • не догма, а рабочий протокол;
  • не отрицание учебников, а усиление их строгости;
  • не усложнение, а предотвращение скрытых ошибок.

Её сила — в дисциплине:

  • каждый шаг обоснован;
  • ориентация всегда видна;
  • схлопывание знаков невозможно без нарушения правил.

Это позволяет использовать кватернионы как точный инструмент, а не как «удобную эвристику», где легко потерять суть.

5. Кирпич №1: L4-янтра как минимальная четырёхполярность (одна ось)

1. Базовая структура: четырёхполярный контур U₄

Я задаю минимальный четырёхполярный объект — множество:

U4​={(+), i, (−), (−i)}.

Это не произвольный набор символов, а замкнутый цикл с жёсткой связью элементов.

2. Каноническая кодировка (exp_map)

Для формализации операций ввожу взаимно однозначное соответствие с числами по модулю 4:

  • (+)↦0,
  • i↦1,
  • (−)↦2,
  • (−i)↦3.

Обозначу:

  • enc(x) — кодирование элемента x в число {0, 1, 2, 3};
  • dec(n) — декодирование числа n обратно в элемент U4​.

3. Закон умножения (*)

Операция умножения ∗ определяется через арифметику по модулю 4:

x∗y=dec((enc(x)+enc(y))mod4).

Это единственный закон для внутренней структуры оси — он порождает все необходимые равенства.

4. Следствия закона (неизменные равенства)

Применяя правило, получаем:

  1. i∗i=dec((1+1)mod4)=dec(2)=(−);
  2. (−)∗(−)=dec((2+2)mod4)=dec(0)=(+);
  3. i∗(−)=dec((1+2)mod4)=dec(3)=(−i);
  4. i∗(−i)=dec((1+3)mod4)=dec(0)=(+);
  5. (+)∗x=dec((0+enc(x))mod4)=x для любого x∈U4​.

Эти равенства не подлежат изменению — они вытекают из структуры U4​ и закона ∗.

5. Ключевое свойство: внутренняя коммутативность L4‑янтры

Важно: внутри одной оси операция ∗ коммутативна. Для любых x,y∈U4​:

x∗y=y∗x,

так как сложение чисел по модулю 4 коммутативно:

(enc(x)+enc(y))mod4=(enc(y)+enc(x))mod4.

Вывод:

  • В L4‑янтре нет некоммутативности — она появляется только при склейке нескольких осей.
  • Коммутативность внутри оси — не «допущение», а следствие циклической структуры C4​.
  • Это означает: проблема некоммутативности кватернионов не лежит внутри одной оси — она возникает при взаимодействии разных осей.

6. Почему это фундамент теории

L4‑янтра задаёт:

  • канонический закон u∗u=(−), который будет сохраняться для каждой оси в кватернионах;
  • механизм зеркала через (−) и (−i) — он обеспечит обратимость (u−1=(−u));
  • замкнутость — все произведения остаются в U4​;
  • вычислимость — любое умножение сводится к сложению по модулю 4.

Таким образом, L4‑янтра — это минимальный кирпичик, из которого строится вся дальнейшая структура. Она:

  • проста (цикл C4​);
  • строго формализована (через enc/dec);
  • самодостаточна (все законы выводятся из одного правила).

Итог

  • L4‑янтра U4​ — это четырёхполярный цикл с канонической кодировкой и законом умножения через модуль 4.
  • Внутри оси операция ∗ коммутативна — некоммутативность появится только при склейке осей.
  • Все ключевые равенства (i∗i=(−), (−)∗(−)=(+) и т. д.) жёстко заданы структурой и не могут быть изменены без разрушения системы.
  • Эта структура — база для построения кватернионов как протокола.

6. Кирпич №2: зеркало как отдельная операция, а не как “минус по памяти”

1. Что такое зеркало: строгое определение

Я ввожу зеркальную операцию m как отдельный, явно заданный механизм:

m(x)=(−) ∗ x.

Это не «просто минус», а полноправная операция со своим законом действия. Её нельзя опустить или применить «по умолчанию» — она должна быть записана в выражении.

2. Формализация через exp_map

Благодаря канонической кодировке (enc/dec) действие зеркала легко выразить арифметически:

enc(m(x))=(enc(x)+2)mod4.

Почему +2?

  • В цикле C4​ элемент (−) имеет код 2.
  • Умножение на (−) сдвигает любой элемент на 2 позиции по циклу — это и есть зеркальное отражение.

3. Таблица действий зеркала

Применим m ко всем элементам U4​:

  • m(+)=(−) ∗ (+)=(−) → enc((−))=(0+2)mod4=2;
  • m(i)=(−) ∗ i=(−i) → enc((−i))=(1+2)mod4=3;
  • m(−)=(−) ∗ (−)=(+) → enc((+))=(2+2)mod4=0;
  • m(−i)=(−) ∗ (−i)=i → enc(i)=(3+2)mod4=1.

Итог в виде списка:

  • m(+)=(−),
  • m(i)=(−i),
  • m(−)=(+),
  • m(−i)=i.

4. Почему это «страховка» системы

Зеркало m выполняет три критических функции:

  1. Делает знак операцией, а не метафорой
    (−) не просто «пишется» — он действует через m.
    Нельзя «забыть» знак: если нужно зеркальное преобразование, m должна быть явно записана.
    Пример: m(i) = (−i) — это не «i с минусом», а результат применения m.
  2. Гарантирует обратимость
    Для любого x верно: m(m(x)) = x.
    Это следует из: enc(m(m(x))) = (enc(x) + 2 + 2) mod 4 = enc(x).
    Значит, зеркало — инволюция (операция, обратная самой себе).
  3. Сохраняет структуру при преобразованиях
    Применив m, мы остаёмся в U4​.
    Нет «новых» элементов — всё сводится к каноническим (+), i, (−), (−i).

5. Чем зеркало не является

Важно отличать m от распространённых упрощений:

  • Не «минус по памяти». Это не неявное правило, а явная операция.
  • Не синтаксический маркер. m(x) меняет смысл выражения, а не его запись.
  • Не произвольное преобразование. Его действие жёстко задано законом m(x) = (−) ∗ x и кодировкой.

6. Зачем это нужно в протоколе

Введение m как отдельной операции решает ключевые проблемы:

  1. Исключает «тихие» ошибки
    Нельзя случайно опустить знак: если нужно зеркало, его надо записать.
    Пример: i ∗ j = k, но j ∗ i = m(k) = (−k). Без m легко пропустить разницу.
  2. Формализует обратимость
    Обратный элемент u−1 выражается через m: u−1 = m(u) = (−u).
    Это не «догадка», а следствие закона u ∗ u = (−).
  3. Обеспечивает контроль при склейке осей
    При переходе к кватернионам m будет связывать произведения разных осей: y ∗ x = m(x ∗ y).
    Без m закон переворота порядка разваливается.

Итог

  • Зеркало m(x) = (−) ∗ x — отдельная, явно заданная операция с чётким законом действия.
  • Через exp_map оно выражается как сдвиг на 2 по модулю 4: enc(m(x)) = (enc(x) + 2) mod 4.
  • Оно не может быть опущено — его применение всегда явно в записи.
  • Это «страховка» протокола:
    делает знак операцией;
    гарантирует обратимость;
    сохраняет структуру при преобразованиях.

Без m невозможно корректно построить ни кватернионы, ни коммутативные суперпозиции — она задаёт алгебраический механизм работы со знаками.

4. Кирпич №3: три оси = три L4-янтры, склеенные по общим (+) и (-)

1. Исходная предпосылка: три идентичных контура

Я беру три копии минимальной L4‑янтры U4​, но:

  • присваиваю им имена осей: i, j, k;
  • сохраняю для каждой канонический закон u ∗ u = (−);
  • оставляю внутреннюю коммутативность в каждой оси.

Каждая ось «сама по себе» выглядит так:

​Ось i: {(+), i, (−), (−i)}, Ось j:{(+), j, (−), (−j)}, Ось k: {(+), k, (−), (−k)}.​

2. Принцип склейки: что общее, а что различно

Ключевое правило:

  • (+) — единая единица для всех осей: она не «своя» для i, j или k, а общая для всей системы;
  • (−) — общий центральный знак: он один и тот же во всех трёх контурах;
  • элементы ±i, ±j, ±k — различны: это отдельные «буквы» алфавита, не сводимые друг к другу.

Почему это важно:

  • (+) не дублируется: нет «(+)i​», «(+)j​» — есть только одна (+);
  • (−) не имеет индексов: это не «(−)i​» или «(−)j​», а единый (−) для всей алгебры;
  • оси различаются только своими «буквенными» элементами i, j, k и их зеркалами (−i), (−j), (−k).

3. Носитель Q₈: экономная конструкция

Объединяя три контура с учётом склейки, получаю множество из 8 элементов:

Q8​={(+), (−), i, (−i), j, (−j), k, (−k)}.

Почему именно 8?

  • Общие элементы: (+), (−) — 2 штуки;
  • Уникальные для осей: i, (−i); j, (−j); k, (−k) — 6 штук;
  • Итого: 2 + 6 = 8.

Что это даёт:

  • Я не раздуваю пространство до 43 = 64 состояний (как при прямом произведении трёх U4​);
  • Вместо этого — экономная склейка: общие знаки (+), (−) используются всеми осями, а различаются только «буквенные» компоненты.
  • Это и есть «кватернионная склейка»: компактность без потери выразительности.

4. Чем Q₈ не является

Важно отличать Q8​ от других конструкций:

  • Не прямое произведение U4​ × U4​ × U4​ (оно дало бы 64 элемента);
  • Не объединение без склейки (тогда было бы 3 × 4 − 2 = 10 элементов, так как (+) и (−) дублировались бы);
  • Не аддитивная группа Z2​ × Z2​ × Z2​ (там нет умножения и знаков (±)).

Q8​ — это специфическая алгебраическая конструкция с:

  • общей единицей и общим центральным знаком;
  • тремя независимыми «буквенными» осями;
  • законом умножения, который ещё предстоит задать.

5. Зачем нужна такая склейка

Этот шаг решает три задачи:

  1. Сохраняет канонический L4‑закон для каждой оси:
    i ∗ i = (−), j ∗ j = (−), k ∗ k = (−) — как и должно быть;
    закон не зависит от других осей.
  2. Обеспечивает замкнутость системы:
    все произведения остаются в Q8​;
    нет «новых» элементов вне 8 указанных.
  3. Экономит ресурсы (в том числе когнитивные):
    вместо 64 состояний — 8;
    общие знаки (+), (−) не дублируются;
    структура легко визуализируется и вычисляется.

6. Ограничения и следствия склейки

  • Нельзя отождествить i и j: они принадлежат разным осям и не сводятся друг к другу;
  • Знак (−) не «принадлежит» оси: он общий, поэтому (−) ∗ i = (−i), но (−) ∗ j = (−j), и это разные элементы;
  • Коммутативность внутри осей сохраняется, но между осями её нет — это будет задано отдельно.

Итог

  • Я взял три L4‑янтры (оси i, j, k) и склеил их по общим элементам (+) и (−).
  • Получился носитель Q8​ из 8 элементов — компактная, замкнутая структура.
  • Склейка экономна (не раздувает пространство) и строга (сохраняет L4‑закон и независимость осей).
  • Это основа для введения умножения между осями — следующего шага в построении кватернионов.

5. Кирпич №4: ориентация между осями (это и есть кватернионность)

Теперь я делаю то, что создаёт кватернионы как структуру:

я фиксирую ориентацию:

  • i*j = k
  • j*k = i
  • k*i = j

Это можно объяснить очень по-человечески:
я выбрал направление обхода i -> j -> k, и в этом направлении произведение даёт “следующую ось”.

6. Самый важный закон моего протокола: переворот порядка всегда активирует зеркало

И теперь главный пункт, который делает мою теорию практичной.

Я фиксирую закон:

y*x = m(x*y),

где m(x)=(-)*x.

Это означает: перестановка множителей — это смена ориентации, а смена ориентации обязана оставить след в виде зеркала.

Отсюда автоматически:

  • j*i = m(i*j) = m(k) = (-k)
  • k*j = m(j*k) = m(i) = (-i)
  • i*k = m(k*i) = m(j) = (-j)

И я не “помню” эти минусы. Я их вычисляю одной и той же процедурой.

7. Что именно мой протокол запрещает (и почему исчезают ложные “парадоксы”)

Теперь я формулирую это просто.

В учебном стиле люди часто делают одну ошибку:

  • где-то в середине рассуждения они заменяют j*i на i*j.

В моей схеме это запрещено, потому что:

j*i = m(i*j),

то есть между ними всегда стоит оператор.

Если человек пишет j*i = i*j, он тем самым говорит:

m(i*j) = i*j,

то есть элемент равен своему зеркалу. Это означает вырождение, схлопывание знака, то есть подмену объекта, а не “доказательство противоречия”.

Поэтому вся линия “кватернионы противоречивы, потому что получается k=(-k)” у меня закрыта:
она сводится к одному факту — человек потерял оператор зеркала.

8. Где начинается отдельная ветвь: коммутативные суперпозиции четырёхполярных пространств

Теперь я фиксирую важное методологическое различие.

Если мне нужна коммутативность “без оговорок” в большом смысле (чтобы любая перестановка сомножителей не несла ориентационного следа), то я не имею права “исправлять кватернионы”. Я обязан честно признать:

я строю не кватернионы, а другой класс объектов — коммутативные суперпозиции L4-янтр.

Это другой проект, потому что у кватернионов ориентация — ядро смысла.

9. Почему попытка “сделать все пары равными (+)” неизбежно схлопывает оси (простой итог)

Я напоминаю результат главы 4, но в самой простой форме.

Если я сохраняю каноническое L4-правило u^2=(-) и одновременно требую:

u_a*u_b = (+) для любых разных осей,

то я автоматически получаю:

u_b = (-u_a),

то есть оси перестают быть независимыми.

Это значит: “коммутативность через (+ ) для всех пар” — это не усиление теории, а вырождение.

10. Практический итог: как я работаю с двумя классами объектов

Чтобы у читателя не осталось вопросов, я формулирую “инструкцию” на уровне смысла:

Если мне нужна ориентация и полноценная кватернионная механика:

я использую класс кватернионной склейки:

  • L4-янтра внутри каждой оси,
  • склейка трёх осей по общим (+) и (-),
  • ориентация i*j=k, j*k=i, k*i=j,
  • правило порядка y*x = m(x*y).

Это и есть моя “правильная теория кватернионов”: она не допускает подмены порядка и делает знак вычислимым.

Если мне нужна коммутативность “без следа ориентации”:

я объявляю другой класс:

  • коммутативные суперпозиции L4-янтр,
  • с отдельными законами склейки,
  • и с отдельными предохранителями (чтобы не схлопывался знак и не деградировали оси).

Это уже не кватернионы. Это другая ветвь, и я её развиваю отдельно.

11. Финальное заключение всей статьи (в одном абзаце)

Я показываю кватернионы не как странный объект с “неудобной некоммутативностью”, а как строго собранную конструкцию из трёх одинаковых L4-контуров, где решающее — ориентация склейки и оператор зеркала. В моей схеме некоммутативность перестаёт быть угрозой: она становится контролируемым следом ориентации, который невозможно потерять без явной подмены объекта. А там, где действительно нужна коммутативность, я не “чиню” кватернионы, а строю отдельный класс — коммутативные суперпозиции четырёхполярных пространств.