substitutions in noncommutative products



Barton,

Even for *commutative *products, subst and tellsimp don't do subsequences,
only subtrees:

        subst(x,a*b,a*b*c) => a*b*c
        subst(x,a*b,f(a*b)*c) => f(x)*c

and they certainly don't do mathematical subparts:

         subst(x,a*b,a*b^2) => a*b^2

Ratsubst does both cases, though:

        ratsubst(x,a*b,a*b*c) => c*x
        ratsubst(x,a*b,a*b^2) => b*x

But there is no equivalent to ratsubst for non-commutative products.

You could use softbox as a workaround, but these are certainly areas that
could be improved.

          -s

On Mon, Oct 8, 2012 at 7:30 AM, Barton Willis <willisb at unk.edu> wrote:

>  I think there is no general scheme for substitutions into a
> noncommutative product. And I'm not
> sure that tellsimp works all that well for such substitutions.
>
>    (%i6) e : a.b.c$
>
>   (%i7) subst(1, b. c, e);
>   (%o7) a . b . c
>
>   (%i8) subst(1, b.c, e), dotassoc : false;
>   (%o8) a
>
> _______________________________________________
> Maxima mailing list
> Maxima at math.utexas.edu
> http://www.math.utexas.edu/mailman/listinfo/maxima
>
>