Op 19-apr-2008, om 18:58 heeft [EMAIL PROTECTED] het  
volgende geschreven:
> Issue 93: Square root denesting
> http://code.google.com/p/sympy/issues/detail?id=93
>
> Comment #11 by kirill.smelkov:
> At present we have sqrtdenest written by David:
>
> In [1]: sqrtdenest(sqrt(14+4*sqrt(6)))
> Out[1]:
>   ⎽⎽⎽       ⎽⎽⎽
> ╲╱ 2  + 2*╲╱ 3
>
>
> Jurjen, David, All,
>
> What is the state of this issue?
Interesting you ask. There is a "sqrtdenest" function, which  
implements an article that has a nice theoretical approach to  
denesting, but omits a few important details.
I've been struggling with the theory, and I am a few weeks from a  
brand new implementation that is more understandable, more flexible,  
and faster.
The short idea is:
If you denest sqrt(a+b), a and/or b has sqrts in it,
you first denest sqrt(a**2-b**2), and if that denests to d,
write sqrt(a+b) as sqrt((a+d)/2)+-sqrt((a-d)/2)
the sign is equal to the sign of b.
The interesting challenges are:
- split the expression below the sqrt into the proper a and b (I am  
quite far with that, while the original article lacks about all  
information on how to do this)
- find the sign of b (sometimes not so easy, but I'll work this out,  
I guess)
- extrapolate for expressions that are not Numbers (work in progress).
- Jurjen


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To post to this group, send email to sympy@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/sympy?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to