On Fri, May 22, 2026 at 09:39:46PM +0800, Qian Yun wrote:
> Function "diffEval" in fspace.spad is not called during
> creation of formal derivatives.
>
> It is called in situations when k is a %diff kernel,
> (operator(k)) (someTransformation argument k)
> which is common in recursive simplification functions.
>
> So, I can't think of any reason that a new dummy variable
> is required and a substitution is needed here.
>
> Because of alpha substitution, I don't think the old code
> is doing anything of value.
Representation of derivatives needs a dummy. Kernels may
be nested and we sometimes need to substitute for dummies.
Old code in few other places (not this one) tried to use
the same dummy and this led to obscure bugs. Those bugs
were fixed by consistently using new dummies.
Need for distinct dummies may be unobvious and people believed
that reusing dummy is safe, but it is easy to overlook some
special case. So, I very much prefer current state, that
is consistently using new dummies.
--
Waldek Hebisch
--
You received this message because you are subscribed to the Google Groups
"FriCAS - computer algebra system" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion visit
https://groups.google.com/d/msgid/fricas-devel/ahBjrQ-FNLylBecR%40fricas.org.