I am not quite sure I understand how this works / what is used: sage: pushout(e.parent(), z.parent()) Multivariate Polynomial Ring in z, q over Infinite polynomial ring in F over Multivariate Polynomial Ring in z, q over Rational Field sage: coercion_model.common_parent(z, e) Multivariate Polynomial Ring in z, q over Infinite polynomial ring in F over Rational Field
Martin On Friday 12 January 2024 at 22:47:49 UTC+1 Martin R wrote: > Hm, that's somewhat unfortunate - I don't see how to work around it. I > guess I would have to force all elements to be in P (using the notation of > the example), but this is, I think, not possible. > > Do you know where this behaviour is determined? > > On Friday 12 January 2024 at 22:09:41 UTC+1 Nils Bruin wrote: > >> On Friday 12 January 2024 at 14:30:06 UTC-5 Martin R wrote: >> >> I made a tiny bit of progress, and now face the following problem: >> >> sage: I.<F> = InfinitePolynomialRing(QQ) >> sage: P.<z, q> = I[] >> sage: e = z*q >> sage: Q.<z, q> = QQ[] >> sage: z*e >> z*z*q >> >> Is this correct behaviour? >> >> I don't think it's desperately wrong. To sage, these structures look like: >> >> sage: P.construction() >> (MPoly[z,q], Infinite polynomial ring in F over Rational Field) >> sage: Q.construction() >> (MPoly[z,q], Rational Field) >> sage: parent(z*e).construction() >> (MPoly[z,q], >> Infinite polynomial ring in F over Multivariate Polynomial Ring in z, q >> over Rational Field) >> >> Note that an "infinite polynomial ring" is a different object than an >> MPoly, and obviously it has different rules/priorities for finding common >> overstructures. >> >> > -- 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 view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/9087dfc6-f12d-4502-bf26-686a76eb3196n%40googlegroups.com.