## maxima-bugs

 [Maxima-bugs] [ maxima-Bugs-578806 ] two bugs in antid.mac From: - 2002-07-08 18:28:12 ```Bugs item #578806, was opened at 2002-07-08 13:28 You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=578806&group_id=4933 Category: None Group: None Status: Open Resolution: None Priority: 5 Submitted By: Barton Willis (willisb) Assigned to: Nobody/Anonymous (nobody) Summary: two bugs in antid.mac Initial Comment: 1. nonzeroandfreeof, defined in antid.mac, has a bug: /* nonzeroandfreeof(x,0) should evaluate to false because the second argument is zero. */ (C1) nonzeroandfreeof(x,0); (D1) TRUE To fix this, change (a typo in second argument) NONZEROANDFREEOF(XARGUMENTX, BARGUMENTE) := IS(EARGUMENTE # 0 AND FREEOF(XARGUMENTX, EARGUMENTE))\$ to NONZEROANDFREEOF(XARGUMENTX, EARGUMENTE) := IS(EARGUMENTE # 0 AND FREEOF(XARGUMENTX, EARGUMENTE))\$ (What's the story with these lengthy identifiers?) 2. antidiff, also defined in antid.mac, assumes that listarith is true; setting it to false, we get sillyness: (C2) listarith : false; (D2) FALSE (C3) antidiff(x + diff(f(x),x),x,f(x)); (D3) 'INTEGRATE([x^2/2,0],x)+[f(x),0] /* setting listarith to true, we get the correct value. */ (C4) listarith : true; (D4) TRUE (C5) antidiff(x + diff(f(x),x),x,f(x)); (D5) f(x)+x^2/2 To fix this, in the function antid locally bind listarith to true. Thus change ANTID(FN, VAR, UNK) := BLOCK( [LCLVARIABLELCL, DVARIABLED, AARGUMENTA, BARGUMENTB, TVARIABLET, UVARIABLEU, KILLER], DVARIABLED : DERIVDEGREE(FN, UNK, VAR), ... to ANTID(FN, VAR, UNK) := BLOCK( [LCLVARIABLELCL, DVARIABLED, AARGUMENTA, BARGUMENTB, TVARIABLET, UVARIABLEU, KILLER, listarith : true], ... Barton ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=578806&group_id=4933 ```
 [Maxima-bugs] [ maxima-Bugs-578806 ] two bugs in antid.mac From: - 2002-07-18 16:10:06 ```Bugs item #578806, was opened at 2002-07-08 14:28 You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=578806&group_id=4933 Category: None Group: None >Status: Closed >Resolution: Fixed Priority: 5 Submitted By: Barton Willis (willisb) Assigned to: Nobody/Anonymous (nobody) Summary: two bugs in antid.mac Initial Comment: 1. nonzeroandfreeof, defined in antid.mac, has a bug: /* nonzeroandfreeof(x,0) should evaluate to false because the second argument is zero. */ (C1) nonzeroandfreeof(x,0); (D1) TRUE To fix this, change (a typo in second argument) NONZEROANDFREEOF(XARGUMENTX, BARGUMENTE) := IS(EARGUMENTE # 0 AND FREEOF(XARGUMENTX, EARGUMENTE))\$ to NONZEROANDFREEOF(XARGUMENTX, EARGUMENTE) := IS(EARGUMENTE # 0 AND FREEOF(XARGUMENTX, EARGUMENTE))\$ (What's the story with these lengthy identifiers?) 2. antidiff, also defined in antid.mac, assumes that listarith is true; setting it to false, we get sillyness: (C2) listarith : false; (D2) FALSE (C3) antidiff(x + diff(f(x),x),x,f(x)); (D3) 'INTEGRATE([x^2/2,0],x)+[f(x),0] /* setting listarith to true, we get the correct value. */ (C4) listarith : true; (D4) TRUE (C5) antidiff(x + diff(f(x),x),x,f(x)); (D5) f(x)+x^2/2 To fix this, in the function antid locally bind listarith to true. Thus change ANTID(FN, VAR, UNK) := BLOCK( [LCLVARIABLELCL, DVARIABLED, AARGUMENTA, BARGUMENTB, TVARIABLET, UVARIABLEU, KILLER], DVARIABLED : DERIVDEGREE(FN, UNK, VAR), ... to ANTID(FN, VAR, UNK) := BLOCK( [LCLVARIABLELCL, DVARIABLED, AARGUMENTA, BARGUMENTB, TVARIABLET, UVARIABLEU, KILLER, listarith : true], ... Barton ---------------------------------------------------------------------- >Comment By: Raymond Toy (rtoy) Date: 2002-07-18 12:10 Message: Logged In: YES user_id=28849 Suggested fixes applied. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=578806&group_id=4933 ```