Le dimanche 1 décembre 2019 00:16:24 UTC+1, Thierry (sage-googlesucks@xxx) 
a écrit :
>
> Hi, 
>
> On Fri, Nov 29, 2019 at 04:41:20PM -0800, rjf wrote: 
> > I mentioned in answer to another thread about Maxima/domain/integration 
> > the caution that this is likely missing the point. 
> > Setting a domain or passing this setting to Maxima is not a solution. 
> > It is likely a symptom that you are making a mathematical error. 
> > 
> > quoting in part.. 
> > 
> > Since log() is in general multivalued, any answer that 
> > ignores this possibility may fall into a trap.  Setting a domain 
> > to something or other does not necessarily avoid the trap. 
> > An example that is simpler and perhaps reminiscent of this 
> > kind of error is to assert that   sqrt(x^2) is x  or abs(x), when 
> > YOU KNOW there are UNDENIABLY (except if x=0)  TWO square roots,  x, -x. 
> > Even if you know that x is positive,  there are still two 
> > square roots. sqrt(9) has 2 values. 
> > 
> >   Unless you want 
> > to define sqrt as something else. .. 
> > 
> > .... end quote.. 
> > 
> > Maybe as another illustration of how blunt an instrument is 
> > the "domain" declaration, consider  that you have computed 
> > a value for s, which is supposed to be 1, but because of a 
> > numerical roundoff, comes out as 0.9999999999999... 
> > computing z :=sqrt(s-1), which should be 0, turns out to be 
> > complex.   What do you really want to do?   Are you OK 
> > with computing w:= z-z  which is real, but whose computation 
> > wandered very slightly into the complex domain? 
> > 
> > 
> > The use of declarations for integration results is probably 
> > an attempt to react to naivety or stubbornness based 
> > on "if my freshman calculus teacher said XXX and you 
> > said YYY  then you are wrong".  Leading to (for example) 
> > spewing out log (abs(...))  instead of log(...), and other 
> mathematically 
> > logically subtle errors caused by the complaint,  "But I haven't learned 
> > about 
> > sqrt(-1) so that can't occur in the answer to any questions 
> > that I ask." 
> > 
> > Perspective:  you can diddle with trying to set domains 
> > "right" but you have probably missed the boat in the 
> > system design and are unlikely to be able to patch it. 
> > This issue was sort of understood in, roughly, 1974 
> > by the people working on Macsyma, who figured there 
> > was not the time or money and maybe not the smarts 
> > to do a new design.  Mostly subsequently, other systems 
> > were built that more-or-less duplicated the design that 
> > we thought was not going to work.  It is possible, even likely, to 
> > design a system that works just fine for algebra, but 
> > doesn't work for complex analysis.  (just look up the 
> > grad course in your college catalog and see if you can 
> > do the homework problems using Sage.) 
>
> In case someone would like to give a try, could you please provide some 
> details of what would have been a good design ? 
>

I am afraid that what rjf points to is that we should redesign calculus (or 
even analysis...). and the worst is that he may be right:

The counterexample pointed in the ticket is that (long story short) 
log(-x)==log(x*-1))==log(x)+log(-1)==log(x) + some integration constant, 
which might well be log(i*pi). This is horribly contrerintuitive, but makes 
sense  in our (at leas my) understanding of the calculus.

Which may well mean that this understanding has to be corrected. But we're 
no longer talking software, but mathematics... *way* over my pay grade !
 

>
> Ciao, 
> Thierry 
>
>
> > Sorry for being such a pessimist, but some of us have 
> > been there. 
> > 
> > Regards 
> > 
> > RJF 
> > 
> > 
> > On Friday, November 29, 2019 at 3:46:59 PM UTC-8, Michael Orlitzky 
> wrote: 
> > > 
> > > On 11/29/19 2:01 PM, Emmanuel Charpentier wrote: 
> > > > Dear list, 
> > > > 
> > > > We have a non inconsiderable stock of tickets whose analysis ends up 
> > > > with someting amounting to "bug due the domain:complex option in 
> > > > Maxima", and no solution in view. 
> > > 
> > > Which tickets? Are they all integration? 
> > > 
> > > 
> > > > Couldn't we work around this problem by offering a "domain=" option 
> > > > (default value =complex") which, when set, would wrap the call to 
> > > > Maxima's library in a pair of Maxima statements setting 
> (temporarily) 
> > > > "domain:real" ? A "try: ... except: ... finally:..." statement would 
> > > > probably be the right way to do it. 
> > > > 
> > > 
> > > I added Expression.simplify_real() to do this during simplification, 
> so 
> > > the sketchy domain-twiddling code is there for the taking. 
> > > 
> > 
> > -- 
> > You received this message because you are subscribed to the Google 
> Groups "sage-devel" group. 
> > To unsubscribe from this group and stop receiving emails from it, send 
> an email to sage-...@googlegroups.com <javascript:>. 
> > To view this discussion on the web visit 
> https://groups.google.com/d/msgid/sage-devel/ffe89d32-d461-44ee-8e86-03b8c0efa5a1%40googlegroups.com.
>  
>
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/b7578352-703d-4d8a-ae7c-bd96a6e92570%40googlegroups.com.

Reply via email to