On 8/12/18 4:01 PM, Jeroen Demeyer wrote:
On 2018-08-12 17:39, vdelecroix wrote:
To construct the element x^-1 one has to use 1 // x because //
stands for "internal division" in Sage

What does "internal division" mean?

Division of a by b means the element c so that a = b * c. Of
course, b should not be a divisor of 0 in order for c to be
well defined. The element c abstractly lives in the total ring
of fraction (= maximal injective localization). When it is the
case that c belongs to the initial ring let say that it is an
"internal division".

I would define // as Euclidean division (in some unspecified way since Euclidean division is not unique).
The way the internal division is extended to elements so that b
does not divides a would be left to each ring. When the ring is
Euclidean it is a fair requirement that // stands for the quotient
of the Euclidean division.

So I wonder how you would define a // b on the Laurent polynomial ring in general (where b is not a power of x).

For example, write a = x^m a' and b = x^n b' with
val(a) = val(b) = 0 and then set
a // b = x^(m - n) (a' // b'). An other possibility would
be to through an ArithmeticError similar to "1//0" gives
now.

I would define a // b on the Laurent polynomial ring simply as extending the operation // of ordinary polynomials. That way, 1 // x should be 0.

Why on earth would you do that? Being able to divide in a ring is much
more useful than getting constantly 0 for no reason.

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 https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to