Zulip Chat Archive

Stream: Is there code for X?

Topic: IsRelPrime a b →IsRelPrime (Ideal.span {a}) (Ideal.span {b})


Daniel Weber (Jul 12 2024 at 16:18):

Is there any version of IsRelPrime a b → IsRelPrime (Ideal.span {a}) (Ideal.span {b}) in Mathlib? What are the necessary assumptions for it to hold? I can prove it assuming IsBezout:

import Mathlib

variable (R : Type*) [CommRing R] [IsBezout R]

example (a b : R) (h : IsRelPrime a b) : IsRelPrime (Ideal.span {a}) (Ideal.span {b}) :=
  Ideal.isCoprime_span_singleton_iff a b |>.mpr h.isCoprime |>.isRelPrime

but are there weaker assumptions which suffice?

Kevin Buzzard (Jul 12 2024 at 16:22):

It's not true for Dedekind domains (22 and 1+51+\sqrt{-5} are coprime as numbers, but the principal ideals they generate are both contained in the ideal generated by both of them, which isn't a unit) and it's not true for higher-dimensional rings (XX and YY are relatively prime as elements of C[X,Y]\mathbb{C}[X,Y] but the ideal they generate isn't all of C[X,Y]\mathbb{C}[X,Y]) so I'm struggling to see a natural generalisation.

Kevin Buzzard (Jul 12 2024 at 16:23):

In fact it would not surprise me if this property implied Bezout, at least for integral domains. Or was pretty close to it.


Last updated: May 02 2025 at 03:31 UTC