gcd and simp:false;



Maxima has two kinds of functions which share the same syntax: routines
(evaluated or programming functions) and simplifying (mathematical)
functions.  gcd(...) is a routine which returns a value, not a mathematical
function.  In particular, gcd(...) is the *polynomial GCD* of its arguments*
.*

Turning simp off does not affect routines, only simplifications.

It sounds as though you'd like a simplifying rational gcd (as opposed to
polynomial gcd), which is a reasonable idea, but one that (as far as I
know) has not been implemented in Maxima.  Presumably you'd want any
simplifications to be true for all values of all variables.  You might
think, for example, that while gcd(x,y)=gcd(y,x) and
gcd(x,x+2)=gcd(x+3,x+1) can't be simplified, you'd still have gcd(x,x^2) =
x.  But this is not true: gcd(1/2,1/4) = 1/4 -- at least by the definition
Maxima uses.

If you can come up with a consistent, useful definition of a simplifying
gcd, it shouldn't be that difficult to program -- just don't call it "gcd"!

                    -s

On Wed, Jan 25, 2012 at 14:02, Chris Sangwin <sangwinc at for.mat.bham.ac.uk>wrote:

>
> I'm confused why the gcd function does not respect simp:false.
>
> (%i1) simp:false$
> (%i2) gcd(x,y);
> (%o2) 1
>
> Any suggestions?
> Chris
>
>
> ______________________________**_________________
> Maxima mailing list
> Maxima at math.utexas.edu
> http://www.math.utexas.edu/**mailman/listinfo/maxima<http://www.math.utexas.edu/mailman/listinfo/maxima>;
>