Documentation

Mathlib.RingTheory.OreLocalization.Basic

Localization over left Ore sets. #

This file proves results on the localization of rings (monoids with zeros) over a left Ore set.

References #

Tags #

localization, Ore, non-commutative

@[simp]
theorem OreLocalization.zero_oreDiv' {R : Type u_1} [MonoidWithZero R] {S : Submonoid R} [OreSet S] (s : S) :
0 /ₒ s = 0
@[implicit_reducible]
Equations
@[implicit_reducible]
Equations
  • One or more equations did not get rendered due to their size.
def OreLocalization.add'' {R : Type u_1} [Monoid R] {S : Submonoid R} [OreSet S] {X : Type u_2} [AddMonoid X] [DistribMulAction R X] (r₁ : X) (s₁ : S) (r₂ : X) (s₂ : S) :

Auxiliary definition for addition on the Ore localization.

Equations
Instances For
    theorem OreLocalization.add''_char {R : Type u_1} [Monoid R] {S : Submonoid R} [OreSet S] {X : Type u_2} [AddMonoid X] [DistribMulAction R X] (r₁ : X) (s₁ : S) (r₂ : X) (s₂ : S) (rb sb : R) (hb : sb * s₁ = rb * s₂) (h : sb * s₁ S) :
    add'' r₁ s₁ r₂ s₂ = (sb r₁ + rb r₂) /ₒ sb * s₁, h
    def OreLocalization.add' {R : Type u_1} [Monoid R] {S : Submonoid R} [OreSet S] {X : Type u_2} [AddMonoid X] [DistribMulAction R X] (r₂ : X) (s₂ : S) :

    Auxiliary definition for addition on the Ore localization, with one argument fixed.

    Equations
    Instances For
      @[irreducible]
      def OreLocalization.add {R : Type u_1} [Monoid R] {S : Submonoid R} [OreSet S] {X : Type u_2} [AddMonoid X] [DistribMulAction R X] :

      The addition on the Ore localization.

      Equations
      Instances For
        @[implicit_reducible]
        instance OreLocalization.instAdd {R : Type u_1} [Monoid R] {S : Submonoid R} [OreSet S] {X : Type u_2} [AddMonoid X] [DistribMulAction R X] :
        Equations
        theorem OreLocalization.oreDiv_add_oreDiv {R : Type u_1} [Monoid R] {S : Submonoid R} [OreSet S] {X : Type u_2} [AddMonoid X] [DistribMulAction R X] {r r' : X} {s s' : S} :
        r /ₒ s + r' /ₒ s' = (oreDenom (↑s) s' r + oreNum (↑s) s' r') /ₒ (oreDenom (↑s) s' * s)
        theorem OreLocalization.oreDiv_add_char' {R : Type u_1} [Monoid R] {S : Submonoid R} [OreSet S] {X : Type u_2} [AddMonoid X] [DistribMulAction R X] {r r' : X} (s s' : S) (rb sb : R) (h : sb * s = rb * s') (h' : sb * s S) :
        r /ₒ s + r' /ₒ s' = (sb r + rb r') /ₒ sb * s, h'
        theorem OreLocalization.oreDiv_add_char {R : Type u_1} [Monoid R] {S : Submonoid R} [OreSet S] {X : Type u_2} [AddMonoid X] [DistribMulAction R X] {r r' : X} (s s' : S) (rb : R) (sb : S) (h : sb * s = rb * s') :
        r /ₒ s + r' /ₒ s' = (sb r + rb r') /ₒ (sb * s)

        A characterization of the addition on the Ore localization, allowing for arbitrary Ore numerator and Ore denominator.

        def OreLocalization.oreDivAddChar' {R : Type u_1} [Monoid R] {S : Submonoid R} [OreSet S] {X : Type u_2} [AddMonoid X] [DistribMulAction R X] (r r' : X) (s s' : S) :
        (r'' : R) ×' (s'' : S) ×' s'' * s = r'' * s' r /ₒ s + r' /ₒ s' = (s'' r + r'' r') /ₒ (s'' * s)

        Another characterization of the addition on the Ore localization, bundling up all witnesses and conditions into a sigma type.

        Equations
        Instances For
          @[simp]
          theorem OreLocalization.add_oreDiv {R : Type u_1} [Monoid R] {S : Submonoid R} [OreSet S] {X : Type u_2} [AddMonoid X] [DistribMulAction R X] {r r' : X} {s : S} :
          r /ₒ s + r' /ₒ s = (r + r') /ₒ s
          theorem OreLocalization.add_assoc {R : Type u_1} [Monoid R] {S : Submonoid R} [OreSet S] {X : Type u_2} [AddMonoid X] [DistribMulAction R X] (x y z : OreLocalization S X) :
          x + y + z = x + (y + z)
          @[simp]
          theorem OreLocalization.zero_oreDiv {R : Type u_1} [Monoid R] {S : Submonoid R} [OreSet S] {X : Type u_2} [AddMonoid X] [DistribMulAction R X] (s : S) :
          0 /ₒ s = 0
          theorem OreLocalization.zero_add {R : Type u_1} [Monoid R] {S : Submonoid R} [OreSet S] {X : Type u_2} [AddMonoid X] [DistribMulAction R X] (x : OreLocalization S X) :
          0 + x = x
          theorem OreLocalization.add_zero {R : Type u_1} [Monoid R] {S : Submonoid R} [OreSet S] {X : Type u_2} [AddMonoid X] [DistribMulAction R X] (x : OreLocalization S X) :
          x + 0 = x
          @[irreducible]
          def OreLocalization.nsmul {R : Type u_1} [Monoid R] {S : Submonoid R} [OreSet S] {X : Type u_2} [AddMonoid X] [DistribMulAction R X] :

          Scalar multiplication by natural numbers on the Ore localization.

          Equations
          Instances For
            @[implicit_reducible]
            Equations
            • One or more equations did not get rendered due to their size.
            theorem OreLocalization.smul_zero {R : Type u_1} [Monoid R] {S : Submonoid R} [OreSet S] {X : Type u_2} [AddMonoid X] [DistribMulAction R X] (x : OreLocalization S R) :
            x 0 = 0
            theorem OreLocalization.smul_add {R : Type u_1} [Monoid R] {S : Submonoid R} [OreSet S] {X : Type u_2} [AddMonoid X] [DistribMulAction R X] (z : OreLocalization S R) (x y : OreLocalization S X) :
            z (x + y) = z x + z y
            @[implicit_reducible]
            Equations
            @[implicit_reducible]
            instance OreLocalization.instDistribMulActionOfIsScalarTower {R : Type u_1} [Monoid R] {S : Submonoid R} [OreSet S] {X : Type u_2} [AddMonoid X] [DistribMulAction R X] {R₀ : Type u_3} [Monoid R₀] [MulAction R₀ X] [MulAction R₀ R] [IsScalarTower R₀ R X] [IsScalarTower R₀ R R] :
            Equations
            theorem OreLocalization.add_comm {R : Type u_1} [Monoid R] {S : Submonoid R} [OreSet S] {X : Type u_2} [AddCommMonoid X] [DistribMulAction R X] (x y : OreLocalization S X) :
            x + y = y + x
            @[irreducible]
            def OreLocalization.neg {R : Type u_1} [Monoid R] {S : Submonoid R} [OreSet S] {X : Type u_2} [AddGroup X] [DistribMulAction R X] :

            Negation on the Ore localization is defined via negation on the numerator.

            Equations
            Instances For
              @[simp]
              theorem OreLocalization.neg_def {R : Type u_1} [Monoid R] {S : Submonoid R} [OreSet S] {X : Type u_2} [AddGroup X] [DistribMulAction R X] (r : X) (s : S) :
              -(r /ₒ s) = -r /ₒ s
              theorem OreLocalization.neg_add_cancel {R : Type u_1} [Monoid R] {S : Submonoid R} [OreSet S] {X : Type u_2} [AddGroup X] [DistribMulAction R X] (x : OreLocalization S X) :
              -x + x = 0
              @[irreducible]
              def OreLocalization.zsmul {R : Type u_1} [Monoid R] {S : Submonoid R} [OreSet S] {X : Type u_2} [AddGroup X] [DistribMulAction R X] :

              zsmul of OreLocalization

              Equations
              Instances For
                @[implicit_reducible]
                Equations
                • One or more equations did not get rendered due to their size.
                @[implicit_reducible]
                Equations