たとえば、(いつものように) x と y を非可換、a と b を可換と定義したいと思います。言い換えると、
x y ≠ y x, a x = x a, a b = b a .
さらに遠く、
(x + a y) (x - a y) = x^2 + a (y x - x y) - a^2 y^2
.
x と y を定義するコードと、乗算の記号 ( と など*
).
は何ですか?
たとえば、(いつものように) x と y を非可換、a と b を可換と定義したいと思います。言い換えると、
x y ≠ y x, a x = x a, a b = b a .
さらに遠く、
(x + a y) (x - a y) = x^2 + a (y x - x y) - a^2 y^2
.
x と y を定義するコードと、乗算の記号 ( と など*
).
は何ですか?
次の 2 つの手順に従って、Maxima の可換積*
と非可換積を好きなように操作できます。.
シンボルa
とb
をスカラーとして宣言します。
declare([a, b], scalar)$
有効にするdotscrules
:
dotscrules: true$
これにより、スカラーを含む非可換積が可換積 (つまり、にa.x
なるa*x
) に単純化されます。
これで準備完了です。例えば、
expand((a*x + b*y) . (a*x - b*y))
戻り値
a*b*y.x - b^2*y^^2 - a*b*x.y + a^2*x^^2
^^
(は非可換指数演算子であることに注意してください)。