((rat)...) vs rational numbers



Off-topic, but for what it is worth: There are at least two 
ways to invert bigfloat matrices (^^-1 isn't one of them)

(%i1) m : matrix([2.3b0, 5.6b0],[8.9b0, 11.1b9])$

(%i2) invert(m);
(%o2) 
matrix([4.347826095444405b-1,-2.193497849953934b-10],[-3.486094797248216b-10,9.009009026596514b-11])
(%i3) m^^-1;
`rat' replaced 2.3B0 by 23/10 = 2.3B0
`rat' replaced 5.6B0 by 28/5 = 5.6B0
`rat' replaced 8.9B0 by 89/10 = 8.9B0
`rat' replaced 1.11B10 by 11100000000/1 = 1.11B10

(%o3) 
matrix([138750000000/319124999377,-70/319124999377],[-445/1276499997508,115/1276499997508])

Likely, my path to \share\linearalgebra is different from yours:

(%i4) load(linearalgebra)$
(%i5) invert_by_lu(m,'bigfloatfield);
(%o5) 
matrix([4.347826095444405b-1,-2.193497880210739b-10],[-3.486094797248216b-10,9.009009026596514b-11])

Barton

PS   The current FOCUS (newsletter of the MAA) has a two page article "The 
 Open Source  Revolution"   by Jeff Suzuki. 
Maxima gets about two paragraphs --- mostly about graphics.

maxima-admin at math.utexas.edu wrote on 08/18/2006 12:32:37 PM:

> Other packages, such as matrix inversion and solve, depend on the
> rational function package, so one cannot invert matrices of bigfloats.
>  True, one can convert them to rationals first, but that often ends up
> with huge denominator blow-up.
>