Для этой задачи используем систему компьютерной алгебры Maxima и дадим ей объявление как трактовать бикомплексные числа в виде матриц:
makemat(x0,x1,x2,x3) := matrix([x0,x1,-x2,-x3], [x1,x0,x3,x2], [x2,-x3,x0,-x1], [x3,-x2,-x1,x0]);Зададим два бикомплексных числа в их компонентах:
a:makemat(a0,a1,a2,a3); b:makemat(b0,b1,b2,b3);И объявим скалярное произведение через взятие действительной части от произведения одного числа на обратное второму:
sc:factor((a.invert(b))[1,1]);Результат получаем в виде отношения двух полиномов: S(a,b)=Re(ab−1)=CDS(a,b)=Re(ab−1)=CD C=a3b33−a2b2b23+a1b1b23+a0b0b23−a3b22b3+C=a3b33−a2b2b23+a1b1b23+a0b0b23−a3b22b3+ +2a0b1b2b3+2a1b0b2b3+a3b21b3+2a2b0b1b3++2a0b1b2b3+2a1b0b2b3+a3b21b3+2a2b0b1b3+ +a3b20b3+a2b32+a1b1b22+a0b0b22++a3b20b3+a2b32+a1b1b22+a0b0b22+ +a2b21b2+2a3b0b1b2+a2b20b2+a1b31−+a2b21b2+2a3b0b1b2+a2b20b2+a1b31− −a0b0b21−a1b20b1+a0b30−a0b0b21−a1b20b1+a0b30 D=(b23−2b2b3+b22+b21+2b0b1+b20)⋅D=(b23−2b2b3+b22+b21+2b0b1+b20)⋅ ⋅(b23+2b2b3+b22+b21−2b0b1+b20)⋅(b23+2b2b3+b22+b21−2b0b1+b20) Для приведения скалярного произведения к второй форме умножим на квадрат модуля полученный из полимодуля второго числа bb, задаваемого DD, и равного четвертой степени модуля числа bb: S(a,b)=Re(aˉb)=CD√D=C√DS(a,b)=Re(a¯b)=CD√D=C√D
Комментариев нет:
Отправить комментарий