Посмотрел статью, уточняю.
Если нам безразлично, какому преобразованию будет соответствовать наилучшая

— вращению или вращению с отражением, следует находить

как

. Узнать, присутствует ли отражение, можно по значению

.
Если мы хотим, чтобы преобразование, задаваемое

, было вращением, найдём

. Если определитель равен

, полагаем

.
Если же определитель равен

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

по формуле

, где

— диагональная матрица, у которой на диагонали правый нижний элемент равен

, а остальные

. Можно, как было сказано, обойтись без

, например, умножая на

последний столбец

.
То, что именно правый нижний элемент

должен быть

, важно. Дело в том, что он соответствует наименьшему сингулярному числу матрицы

, и это гарантирует, что, полагая именно его равным

, мы совершаем «наименьшее зло», то есть минимально ухудшаем точность.
В Вашем примере с тремя точками наименьшее сингулярное число равно

. Соответственно, как с отражением, так и без, можно достигнуть одинаково хорошей точности.