Bug in pattern parsing?
- To: mathgroup at smc.vnet.net
- Subject: [mg61996] Bug in pattern parsing?
- From: Kristjan Kannike <kkannike at physic.ut.ee>
- Date: Tue, 8 Nov 2005 03:41:36 -0500 (EST)
- Sender: owner-wri-mathgroup at wolfram.com
Hello, I may have discovered a bug in pattern parsing or applying transformation rules. The following two rules should be equivalent: rule1 = c_.*X_.Y_ -> X.Y with c an optional variable, and rule2 = c_.*Dot[X_, Y_] -> X.Y Yet applying rule1 on a.b as a.b/.rule1 gives 1.a.b (the same result obtains for the optional factor actually present as in const a.b), but a.b/.rule2 gives a.b as it should. I think that it has to do with the dot in c_., but curiously I get the same result when writing the LHS of rule1 as Optional[c]*Y.Z and that confuses me... Any thoughts? Kristjan Kannike <http://www.physic.ut.ee/~kkannike/english/>