2015-01-25 22:07 UTC+01:00, John Cremona <john.crem...@gmail.com>: > > I would say that this is undefined since the ideal generated by x+2 > and x+4 is (2,x) which is not principal. I think that the most useful > definition of gcd is a generator of the ideal generated by the two > objects *if* that ideal is principal.
Agreed! > I acknowledge the fact that Z[x] is a UFD so that there is a > definition of gcd which makes sense here, but it not the ideal > generator of the other definition and hence there is no extended gcd, > i.e. no Bezout identity. Agreed! > I seem to have argued the case that in a UFD which is no a PID, it > makes sense to define gcd(a,b) but not xgcd(a,b). Sage does propose a definition (sage.rings.polynomials.polynomial_integer_dense_flint): def xgcd(self, other): This function can't in general return ``(g,s,t)`` as above, since they need not exist. Instead, over the integers, we first multiply `g` by a divisor of the resultant of `a/g` and `b/g`, up to sign, and return ``g, u, v`` such that ``g = s*self + s*right``. But note that this `g` may be a multiple of the gcd. If ``self`` and ``right`` are coprime as polynomials over the rationals, then ``g`` is guaranteed to be the resultant of self and right, as a constant polynomial. Beyond the first sentence which refers to an "above", this is not very clear to me. Perhaps xgcd is not standard (or a bad standard)? Vincent -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To post to this group, send email to sage-devel@googlegroups.com. Visit this group at http://groups.google.com/group/sage-devel. For more options, visit https://groups.google.com/d/optout.