Re: symbolic matrix manipulation

*To*: mathgroup at smc.vnet.net*Subject*: [mg96061] Re: symbolic matrix manipulation*From*: "jwmerrill at gmail.com" <jwmerrill at gmail.com>*Date*: Wed, 4 Feb 2009 05:17:51 -0500 (EST)*References*: <gm99t7$70$1@smc.vnet.net>

On Feb 3, 6:30 am, ashwin.tulapur... at gmail.com wrote: > Hi, > I am trying to simplify the following matrix expression: > a.b.b.a with the rule: replace a.b by (b.a+1). So I expect the final > output to be > a.b.b.a --> (b.a+1).b.a --> b.a.b.a+b.a --> b.(b.a+1).a+b.a --> > b.b.a.a + 2 b.a > > Can you tell me how to do this? > > Thanks. > -Ashwin FixedPoint[ MapAll[Distribute, #] /. {a.b -> (b.a + 1), Dot[h___, 1, t___] :> Dot[h, t]} &, a.b.b.a]