On 4/27/11, Richard Fateman <fateman at eecs.berkeley.edu> wrote:
> for a start, a rule tellsimp(a.b, ....) cannot be used to match any
> dot product of 3 or more items.
Yes, but a . b. c is actually parsed as a . (b . c) and then
simplified to a . b . c
(i.e. one operator with three arguments) and the tellsimp rule is applied
before flattening the expression.
However, it would be pretty easy to construct cases for which the tellsimp
rule isn't applied as soon as the input is parsed. Then the rule could fail.
e.g. input a . b . c then reevaluate it with a, b, and c bound to something.
> turning simplification off around rule definitions is generally a bad idea,
Not so.
FWIW
Robert Dodier