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>
>