From: SourceForge.net <no...@so...> - 2012-01-26 21:59:12
|
Bugs item #3477006, was opened at 2012-01-21 06:21 Message generated for change (Settings changed) made by macrakis You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=3477006&group_id=4933 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. >Category: Lisp Core - Assume Group: None Status: Closed Resolution: Invalid Priority: 5 Private: No Submitted By: Barton Willis (willisbl) Assigned to: Nobody/Anonymous (nobody) Summary: fact that cannot be forgotten Initial Comment: (%i1) fct : notequal(-(%i*(x-%i))/(2*(1-%i*(x-%i))),0); (%o1) notequal(-(%i*(x-%i))/(2*(1-%i*(x-%i))),0) (%i2) assume(fct); (%o2) [redundant] (%i3) forget(fct); sign: argument cannot be imaginary; found %i -- an error. To debug this try: debugmode(true); ---------------------------------------------------------------------- Comment By: Stavros Macrakis (macrakis) Date: 2012-01-26 13:56 Message: The fact cannot be forgotten because it was never added to the database, as indicated by "redundant". A simpler example: assume(notequal(x,%i)) => [redundant] <<< i.e. Maxima already knows that x <> %i facts() => [] <<< since assumption is redundant, it is not added to DB The 'assume' system only works for reals (though of course equality and inequality are well-defined for complexes) and assumes that all variables are real. Thus: <fresh Maxima> is(equal(x,2)) => unknown is(equal(x,%i)) => false is(notequal(y,%i)) => true Still, I would recommend that instead of simply returning 'redundant' for declarations involving complexes, that Maxima give a warning message. -s ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=104933&aid=3477006&group_id=4933 |