On Tue, 9 Aug 2022 at 21:14, 'Martin R' via sage-devel
<sage-devel@googlegroups.com> wrote:
>
> I am guessing that part of the problem is
>
> sage: SymmetricFunctions(ZZ) in IntegralDomains()
> False

Though the following looks fine

sage: SymmetricFunctions(ZZ).e() in IntegralDomains()
True

> The other problem is that fraction_field is not a parent method of 
> IntegralDomains.

Indeed, it is only implemented in sage/rings/ring.pyx which is a
historic left over. Moreover, the implementation uses a custom cache
with double underscore where cached_method would do the job. I think
it would be a good time to try to move the implementation to
categories.

Could you open a ticket and cc me?

> I'd be grateful for input / corrections.

As Trevor implicitly suggested, I think you want a custom fraction
field here so that you can change basis. Typically, you would like a
coherent interface as follows

sage: S = SymmetricFunctions(ZZ)
sage: S.fraction_field().e() is S.e().fraction_field()
True
sage: Ke = S.fraction_field().e()
sage: Kp = S.fraction_field().p()
sage: Kp(Ke([3,2,1]) / Ke([2,1])) == Kp(Ke([3,2,1])) / Kp(Ke([2,1]))
True

But to my mind this is another layer of complexity and would require
an other iteration of tickets.

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 view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/CAGEwAAna8k295yZrX9CMjVaXFjqvadPvuLBJX2-iTu2LeveW5w%40mail.gmail.com.

Reply via email to