展开 Maple contening modules 中的表达式

Expand an expression in Maple contening modulus

我想开发一个表达式,例如 |a+b+c|^2 。我尝试了“展开”命令,但它不起作用。 (它在没有模数的情况下工作)

问题是 expand 无法识别 abc 是正数还是负数。所以,你说清楚,然后 expand 将按应有的方式工作。

restart:
A:=abs(a+b+c)^2;
assume(a>0,b>0,c>0):expand(A);

a^2+2*a*b+2*a*c+b^2+2*b*c+c^2

如果

assume(a>0,b>0,c<0):

然后使用

expand(simplify(A))

现在,让我们取三个复数,然后取其模平方,

B:=abs((a1+b1*I)+(a2+b2*I)+(a3+b3*I))^2;

再次出现与上述相同的问题。

assume(a1>0,b1<0,a2>0,b2<0,a3<0,b3>0):expand(simplify(B));

a1^2+2*a1*a2+2*a1*a3+a2^2+2*a2*a3+a3^2+b1^2+2*b1*b2+2*b1*b3+b2^2+2*b2*b3+b3^2

最后,为 a'sb's 分配一些随机值并找到模数,

subs(a1=1,a2=1,a3=1,b1=1,b2=2,b3=3,B);