On Thursday, December 11, 2014 8:16:09 AM UTC-8, Joachim Durchholz wrote:
>
> Am 11.12.2014 um 00:40 schrieb Richard Fateman: 
> > 1994 paper by Adam Dingle and Richard Fateman 
> > Branch Cuts in Computer Algebra,  (ISSAC '94 proceedings. also search 
> > online). 
>
> That paper assumes that everything can be refactored to logarithms plus 
> arithmetic. 
> Does that assumption hold? I could imagine that expressions containing 
> irreducible integrals might not be normalizable in that fashion. 
>
> > When you say things about sqrt(), does it generalize to cuberoot?  If it 
> > does not, you are in trouble, or will be down the road. 
> > 
> > What is the principal value of  (1)^(1/6) ? 
>

Well, there are 6 possible values.  You could pick (same as sqrt rule?) 
 the positive one, namely 1.
That doesn't strike me as a good choice,  since powers of 1 do not generate 
the other roots. 

>
> Not sure what you mean with that. 
>
> > Several systems have  RootOf( ...)  expressions.  e.g.  RootOf(s^2=x, 
> s). 
> > There are 2 values for s.   What systems? 
> > Maple 
> > Macsyma 
> > Axiom/Fricas 
> > Mathematica 
> >    probably others. 
>
> Not sure how that relates to the point you're making. 
>

If instead of sqrt(x^2) --> abs(x)  or some such thing,  you could
consider an expression h=  RootOf(y=x^2,x).   Then the only 
"simplifications"
that would be allowed would be ones that are valid for ANY choice of root.
for example, squaring  h gives you y.
 

>
> > You think you can use sqrt because the quadratic formula says 
> > -b+-sqrt(b^2....) 
> > etc. 
> > So you think you know what sqrt means. 
>
> Not sure what assumptions you assume. 
>
No assumptions whatsoever. There are 2 roots to a quadratic.  Well known
fundamental theorem of algebra, or some such.
 

>
> > But in that formula you can switch the values +- and the formula 
> > is still valid. 
>
> Not sure what you mean with that - switching the signs means I still get 
> the same set of expressions. 
>

That's why the formula works. switching the sign on sqrt just exchanges the 
roots.
 

>
> > How many other formulas do you expect to fiddle with where that is true? 
> > 
> > Certainly not this one:    sqrt(y^2) = abs(y). 
>
> That could still be handled by doing case distinctions. 
>

If you plot abs(y)  you get a V-shaped curve, with a singularity at 0.
neither square root of y^2 has such a plot.
 

>
> This is an interesting case though, since it tells us that we need a 
> quantor: Are we interested in "there exists a branch where the 
> expression holds" or in "the expression holds in all branches"? 
> I think we need the former when determining all solutions to an 
> equation, and the latter when verifying an assumption. 
>

I'm not familiar with the term quantor, but it makes sense to me to
have 2 separate questions here. 
Maxima's  radcan() does something like the first.  It produces  a particular
interpretation of radicals that is intended to be canonical  (and often is)

>
> > So if you go off and do the wrong thing, it is probably prudent to 
> > understand that you are doing the wrong thing. 
>
> Actually the "wrong thing" could be the right thing in specific 
> circumstances (experimental physics is full of this kind of stuff),


perhaps that is why some people advise against learning
math from a physicist.  (I was a physics major as an undergraduate
though)
 

> but 
> I agree that you need to be aware of the kind of shortcut you're taking 
> and where the boundaries are where the approach would break. 
>
> I'm not sure what kind of "wrong thing" you are referring to in this 
> particular exchange though. 
> You paper takes a geometric approach (defining cuts as lines across the 
> complex plane), and I can see that that might be more appropriate than 
> blindly enumerating all branches, which might run into performance 
> issues, and would need quite a bit of algorithmic work to deal with 
>

I think the paper has had little impact on how people write systems.
It has had a slight impact on how people write papers.

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sympy+unsubscr...@googlegroups.com.
To post to this group, send email to sympy@googlegroups.com.
Visit this group at http://groups.google.com/group/sympy.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sympy/b3c1429c-2741-4c3b-93d7-9f4eefa70ede%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to