Documentation

Mathlib.RingTheory.TwoSidedIdeal.Operations

Operations on two-sided ideals #

This file defines operations on two-sided ideals of a ring R.

Main definitions and results #

@[reducible, inline]

The smallest two-sided ideal containing a set.

Equations
Instances For
    theorem TwoSidedIdeal.subset_span {R : Type u_1} [NonUnitalNonAssocRing R] {s : Set R} :
    s (span s)
    theorem TwoSidedIdeal.mem_span_iff {R : Type u_1} [NonUnitalNonAssocRing R] {s : Set R} {x : R} :
    x span s ∀ (I : TwoSidedIdeal R), s Ix I
    theorem TwoSidedIdeal.span_mono {R : Type u_1} [NonUnitalNonAssocRing R] {s t : Set R} (h : s t) :
    def TwoSidedIdeal.map {R : Type u_1} {S : Type u_2} [NonUnitalNonAssocRing R] [NonUnitalNonAssocRing S] {F : Type u_3} [FunLike F R S] (f : F) (I : TwoSidedIdeal R) :

    Pushout of a two-sided ideal. Defined as the span of the image of a two-sided ideal under a ring homomorphism.

    Equations
    Instances For
      theorem TwoSidedIdeal.map_mono {R : Type u_1} {S : Type u_2} [NonUnitalNonAssocRing R] [NonUnitalNonAssocRing S] {F : Type u_3} [FunLike F R S] (f : F) {I J : TwoSidedIdeal R} (h : I J) :
      map f I map f J

      Preimage of a two-sided ideal, as a two-sided ideal.

      Equations
      Instances For
        theorem TwoSidedIdeal.comap_le_comap {R : Type u_1} {S : Type u_2} [NonUnitalNonAssocRing R] [NonUnitalNonAssocRing S] {F : Type u_3} [FunLike F R S] (f : F) [NonUnitalRingHomClass F R S] {I J : TwoSidedIdeal S} (h : I J) :
        (comap f) I (comap f) J
        theorem TwoSidedIdeal.mem_comap {R : Type u_1} {S : Type u_2} [NonUnitalNonAssocRing R] [NonUnitalNonAssocRing S] {F : Type u_3} [FunLike F R S] (f : F) [NonUnitalRingHomClass F R S] {I : TwoSidedIdeal S} {x : R} :
        x (comap f) I f x I

        If R and S are isomorphic as rings, then two-sided ideals of R and two-sided ideals of S are order isomorphic.

        Equations
        Instances For
          theorem TwoSidedIdeal.comap_comap {R : Type u_1} {S : Type u_2} {T : Type u_3} [NonAssocRing R] [NonAssocRing S] [NonAssocRing T] (I : TwoSidedIdeal T) (f : R →+* S) (g : S →+* T) :
          (comap f) ((comap g) I) = (comap (g.comp f)) I
          theorem TwoSidedIdeal.mem_span_iff_mem_addSubgroup_closure_absorbing {R : Type u_1} [NonUnitalRing R] {s : Set R} (h_left : ∀ (x y : R), y sx * y s) (h_right : ∀ (y x : R), y sy * x s) {z : R} :

          If s : Set R is absorbing under multiplication, then its TwoSidedIdeal.span coincides with its AddSubgroup.closure, as sets.

          theorem TwoSidedIdeal.set_mul_subset {R : Type u_1} [NonUnitalRing R] {s : Set R} {I : TwoSidedIdeal R} (h : s I) (t : Set R) :
          t * s I
          theorem TwoSidedIdeal.subset_mul_set {R : Type u_1} [NonUnitalRing R] {s : Set R} {I : TwoSidedIdeal R} (h : s I) (t : Set R) :
          s * t I
          instance TwoSidedIdeal.instSMulSubtypeMem {R : Type u_1} [Ring R] (I : TwoSidedIdeal R) :
          SMul R I
          Equations
          Equations
          @[simp]
          theorem TwoSidedIdeal.coe_smul {R : Type u_1} [Ring R] (I : TwoSidedIdeal R) {r : R} {x : I} :
          r x = r * x
          @[simp]
          theorem TwoSidedIdeal.coe_mop_smul {R : Type u_1} [Ring R] (I : TwoSidedIdeal R) {r : Rᵐᵒᵖ} {x : I} :
          r x = x * MulOpposite.unop r
          def TwoSidedIdeal.subtype {R : Type u_1} [Ring R] (I : TwoSidedIdeal R) :
          I →ₗ[R] R

          For any I : RingCon R, when we view it as an ideal, I.subtype is the injective R-linear map I → R.

          Equations
          • I.subtype = { toFun := fun (x : I) => x, map_add' := , map_smul' := }
          Instances For
            @[simp]
            theorem TwoSidedIdeal.subtype_apply {R : Type u_1} [Ring R] (I : TwoSidedIdeal R) (x : I) :
            I.subtype x = x
            @[simp]

            For any RingCon R, when we view it as an ideal in Rᵒᵖ, subtype is the injective Rᵐᵒᵖ-linear map I → Rᵐᵒᵖ.

            Equations
            Instances For
              @[simp]
              theorem TwoSidedIdeal.subtypeMop_apply {R : Type u_1} [Ring R] (I : TwoSidedIdeal R) (x : I) :

              Given an ideal I, span I is the smallest two-sided ideal containing I.

              Equations
              Instances For
                theorem TwoSidedIdeal.mem_fromIdeal {R : Type u_1} [Ring R] {I : Ideal R} {x : R} :
                x fromIdeal I x span I

                Every two-sided ideal is also a left ideal.

                Equations
                Instances For
                  @[simp]
                  theorem TwoSidedIdeal.mem_asIdeal {R : Type u_1} [Ring R] {I : TwoSidedIdeal R} {x : R} :
                  x asIdeal I x I
                  @[simp]
                  theorem TwoSidedIdeal.coe_asIdeal {R : Type u_1} [Ring R] {I : TwoSidedIdeal R} :
                  (asIdeal I) = I

                  Every two-sided ideal is also a right ideal.

                  Equations
                  Instances For

                    When the ring is commutative, two-sided ideals are exactly the same as left ideals.

                    Equations
                    Instances For
                      def Ideal.toTwoSided {R : Type u_1} [Ring R] (I : Ideal R) (mul_mem_right : ∀ {x y : R}, x Ix * y I) :

                      Bundle an Ideal that is already two-sided as a TwoSidedIdeal.

                      Equations
                      Instances For
                        @[simp]
                        theorem Ideal.mem_toTwoSided {R : Type u_1} [Ring R] {I : Ideal R} {h : ∀ {x y : R}, x Ix * y I} {x : R} :
                        x I.toTwoSided h x I
                        @[simp]
                        theorem Ideal.coe_toTwoSided {R : Type u_1} [Ring R] (I : Ideal R) (h : ∀ {x y : R}, x Ix * y I) :
                        (I.toTwoSided h) = I
                        @[simp]
                        theorem Ideal.toTwoSided_asIdeal {R : Type u_1} [Ring R] (I : TwoSidedIdeal R) (h : ∀ {x y : R}, x TwoSidedIdeal.asIdeal Ix * y TwoSidedIdeal.asIdeal I) :
                        @[simp]
                        theorem Ideal.asIdeal_toTwoSided {R : Type u_1} [Ring R] (I : Ideal R) (h : ∀ {x y : R}, x Ix * y I) :