display all results of sqrt()




On Wed, 19 Aug 2009, Stavros Macrakis wrote:

< I'm afraid this approach works only in the simplest of cases, where
< there is just one square root in the formula.  If there are two
< independent square roots, it won't work.  For example, the four roots
< of x^4-10*x^2+1 are (+/-) sqrt(2) + (+/-) sqrt(3), but sqt(2)+sqt(3)
< gives only the two results [sqrt(2)+sqrt(3), -sqrt(2)-sqrt(3)].
 
Indeed. I suppose that we could alter maxima's simplification rules to
do the necessary 'outermap', or we could do the same thing by hand:

(%i13) a:sqt(2);

(%o13) [-sqrt(2),sqrt(2)]
(%i14) b:sqt(3);

(%o14) [-sqrt(3),sqrt(3)]
(%i15) outermap("+",a,b);

(%o15)
[[-sqrt(3)-sqrt(2),sqrt(3)-sqrt(2)],[sqrt(2)-sqrt(3),sqrt(3)+sqrt(2)]]

Leo

-- 
The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.