On Fri, Feb 21, 2020 at 02:40:48PM -0800, 'Martin R' via FriCAS - computer 
algebra system wrote:
> I would like to have the patch proposed in 
> https://groups.google.com/forum/#!msg/fricas-devel/j-dy6TXiX9E/CG4JFGYeGgAJ 
> in 
> the new release, fixing a bug in the InputForm of formal derivatives.

As I wrote proposed fix looks problematic due to reuse of dummies.
I think that attached patch is safer.

-- 
                              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 on the web visit 
https://groups.google.com/d/msgid/fricas-devel/20200228142621.GA17944%40math.uni.wroc.pl.
Index: src/algebra/fspace.spad
===================================================================
--- src/algebra/fspace.spad	(revision 2618)
+++ src/algebra/fspace.spad	(working copy)
@@ -607,11 +608,17 @@
                   su::SY
               do_eval := true
               new()$SY
+          ne := eval(first l, retract(second l)@K, (do_eval => s::%; a3))
+          if not(do_eval) then
+              ne1 := eval(ne, retract(a3)@K, second l)
+              if not(first(l) = ne1) then
+                  s := new()$SY
+                  ne := eval(first l, retract(second l)@K, s::%)
+                  do_eval := true
           -- Ugly, but otherwise interpreter may have trouble
           -- evaluating result
           si := convert([convert("::"::SY)@INP, convert(s)@INP,
                          convert('Symbol)@INP])@INP
-          ne := eval(first l, retract(second l)@K, (do_eval => s::%; a3))
           d1 := pint([convert(ne)@INP, si])
           do_eval =>
               convert([convert('eval)@INP, d1, si, convert(third(l))@INP])

Reply via email to