Zulip Chat Archive

Stream: Is there code for X?

Topic: forget₂ : CommRingCat ⥤ RingCat preserves epimorphisms


Kenny Lau (Aug 04 2025 at 23:06):

import Mathlib

open CategoryTheory Functor

instance : (forget₂ CommRingCat RingCat).PreservesEpimorphisms := sorry

Kenny Lau (Aug 04 2025 at 23:09):

Proof sketch: let f : X ⟶ Y be a morphism in CommRingCat, and g₁ g₂ : forget₂.obj Y ⟶ Z two morphisms in RingCat.

Note that g1(Y)g_1(Y) is a commutative subring of Z (even though Z is not commutative), and same for g2(Y)g_2(Y), so one can form the product g1(Y)×g2(Y)g_1(Y) \times g_2(Y) instead of using Z, which (the product) is commutative, so everything goes through the original CommRingCat (maybe using the adjoint functor (!) to make it a neater argument).

Kenny Lau (Aug 04 2025 at 23:09):

(note that the adjoint of forget₂ is not in Mathlib :melt: )

Kenny Lau (Aug 04 2025 at 23:11):

diagram:
image.png

Kenny Lau (Aug 04 2025 at 23:13):

another roadblock here is that we still don't have Subring.IsComm

Kenny Lau (Aug 04 2025 at 23:14):

@Edison Xie what's the current status of Subring.IsComm?

Aaron Liu (Aug 04 2025 at 23:20):

Kenny Lau said:

(maybe using the adjoint functor (!) to make it a neater argument).

How does this work?

Kenny Lau (Aug 04 2025 at 23:21):

@Aaron Liu we have a special adjoint here satisfying LRX = X

Kenny Lau (Aug 04 2025 at 23:21):

specific to the case CRing => Ring

Kenny Lau (Aug 04 2025 at 23:22):

(aka counit is iso)

Joël Riou (Aug 05 2025 at 09:24):

Kenny Lau said:

Note that g1(Y)g_1(Y) is a commutative subring of Z (even though Z is not commutative), and same for g2(Y)g_2(Y), so one can form the product g1(Y)×g2(Y)g_1(Y) \times g_2(Y) instead of using Z...

I think you should be more explicit about what you mean by "instead of using Z".

Kenny Lau (Aug 05 2025 at 09:24):

@Joël Riou Z is not a commutative ring, but g1(Y)×g2(Y)g_1(Y) \times g_2(Y) is

Kenny Lau (Aug 05 2025 at 09:25):

and by "instead" I mean that you can form a new statement by replacing Z with g1(Y)×g2(Y)g_1(Y) \times g_2(Y)

Kenny Lau (Aug 05 2025 at 09:25):

so that you get a diagram in CommRingCat

Joël Riou (Aug 05 2025 at 09:26):

How do you use that f is an epi?

Kenny Lau (Aug 05 2025 at 09:26):

the new diagram is in CommRingCat so you can use f epi there

Kenny Lau (Aug 05 2025 at 09:27):

category theoretically, this proof uses three facts:

  1. the image of a morphism R(Y) -> Z factors through CRing
  2. product exists in CRing and Ring and is preserved by R
  3. LRX = X
    (L is left adjoint, R : CRing => Ring is right adjoint)

Joël Riou (Aug 05 2025 at 09:27):

I think there are missing facts.

Kenny Lau (Aug 05 2025 at 09:28):

i mean, i don't even know if my proof works, i just made it up

Kenny Lau (Aug 05 2025 at 09:28):

but what's missing?

Kenny Lau (Aug 05 2025 at 09:29):

probably that R is fully faithful?

Joël Riou (Aug 05 2025 at 09:31):

I believe you should investigate this more: in order to use f is epi, you need to introduce two morphisms Yg1(Y)×g2(Y)Y \rightarrow g_1(Y)\times g_2(Y) (and I can see only one).

Kenny Lau (Aug 05 2025 at 09:32):

oh... hmm

Kenny Lau (Aug 05 2025 at 09:33):

do you know a faster categorical argument?

Joël Riou (Aug 05 2025 at 09:35):

I do not know any argument.


Last updated: Dec 20 2025 at 21:32 UTC