Documentation

Monlib.LinearAlgebra.MyBimodule

(A-A)-Bimodules #

We define (A-A)-bimodules, where A is a commutative semiring, and show basic properties of them.

noncomputable def Bimodule.lsmul {R : Type u_1} {H₁ : Type u_2} {H₂ : Type u_3} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] (x : H₁) (y : TensorProduct R H₁ H₂) :
TensorProduct R H₁ H₂
Equations
Instances For
    noncomputable def Bimodule.rsmul {R : Type u_1} {H₁ : Type u_2} {H₂ : Type u_3} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] (x : TensorProduct R H₁ H₂) (y : H₂) :
    TensorProduct R H₁ H₂
    Equations
    Instances For
      theorem Bimodule.lsmul_apply {R : Type u_3} {H₁ : Type u_1} {H₂ : Type u_2} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] (x : H₁) (a : H₁) (b : H₂) :
      Bimodule.lsmul x (a ⊗ₜ[R] b) = (x * a) ⊗ₜ[R] b
      theorem Bimodule.rsmul_apply {R : Type u_3} {H₁ : Type u_1} {H₂ : Type u_2} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] (a : H₁) (x : H₂) (b : H₂) :
      Bimodule.rsmul (a ⊗ₜ[R] b) x = a ⊗ₜ[R] (b * x)
      theorem Bimodule.lsmul_rsmul_assoc {R : Type u_1} {H₁ : Type u_2} {H₂ : Type u_3} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] (x : H₁) (y : H₂) (a : TensorProduct R H₁ H₂) :
      theorem Bimodule.lsmul_zero {R : Type u_3} {H₁ : Type u_1} {H₂ : Type u_2} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] (x : H₁) :
      theorem Bimodule.zero_lsmul {R : Type u_1} {H₁ : Type u_2} {H₂ : Type u_3} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] (x : TensorProduct R H₁ H₂) :
      theorem Bimodule.zero_rsmul {R : Type u_3} {H₁ : Type u_1} {H₂ : Type u_2} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] (x : H₂) :
      theorem Bimodule.rsmul_zero {R : Type u_1} {H₁ : Type u_2} {H₂ : Type u_3} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] (x : TensorProduct R H₁ H₂) :
      theorem Bimodule.lsmul_add {R : Type u_1} {H₁ : Type u_2} {H₂ : Type u_3} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] (x : H₁) (a : TensorProduct R H₁ H₂) (b : TensorProduct R H₁ H₂) :
      theorem Bimodule.add_rsmul {R : Type u_1} {H₁ : Type u_2} {H₂ : Type u_3} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] (x : H₂) (a : TensorProduct R H₁ H₂) (b : TensorProduct R H₁ H₂) :
      theorem Bimodule.lsmul_sum {R : Type u_2} {H₁ : Type u_3} {H₂ : Type u_4} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] (x : H₁) {k : Type u_1} {s : Finset k} (a : kTensorProduct R H₁ H₂) :
      Bimodule.lsmul x (∑ is, a i) = is, Bimodule.lsmul x (a i)
      theorem Bimodule.sum_rsmul {R : Type u_2} {H₁ : Type u_3} {H₂ : Type u_4} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] (x : H₂) {k : Type u_1} {s : Finset k} (a : kTensorProduct R H₁ H₂) :
      Bimodule.rsmul (∑ is, a i) x = is, Bimodule.rsmul (a i) x
      theorem Bimodule.one_lsmul {R : Type u_1} {H₁ : Type u_2} {H₂ : Type u_3} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] (x : TensorProduct R H₁ H₂) :
      theorem Bimodule.rsmul_one {R : Type u_1} {H₁ : Type u_2} {H₂ : Type u_3} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] (x : TensorProduct R H₁ H₂) :
      theorem Bimodule.lsmul_one {R : Type u_3} {H₁ : Type u_1} {H₂ : Type u_2} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] (x : H₁) :
      theorem Bimodule.one_rsmul {R : Type u_3} {H₁ : Type u_1} {H₂ : Type u_2} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] (x : H₂) :
      theorem Bimodule.lsmul_smul {R : Type u_1} {H₁ : Type u_2} {H₂ : Type u_3} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] (α : R) (x : H₁) (a : TensorProduct R H₁ H₂) :
      theorem Bimodule.smul_rsmul {R : Type u_1} {H₁ : Type u_2} {H₂ : Type u_3} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] (α : R) (x : H₂) (a : TensorProduct R H₁ H₂) :
      theorem Bimodule.lsmul_lsmul {R : Type u_1} {H₁ : Type u_2} {H₂ : Type u_3} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] (x : H₁) (y : H₁) (a : TensorProduct R H₁ H₂) :
      theorem Bimodule.rsmul_rsmul {R : Type u_1} {H₁ : Type u_2} {H₂ : Type u_3} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] (x : H₂) (y : H₂) (a : TensorProduct R H₁ H₂) :
      def LinearMap.IsBimoduleMap {R : Type u_1} {H₁ : Type u_2} {H₂ : Type u_3} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] (P : TensorProduct R H₁ H₂ →ₗ[R] TensorProduct R H₁ H₂) :
      Equations
      Instances For
        theorem LinearMap.IsBimoduleMap.lsmul {R : Type u_1} {H₁ : Type u_3} {H₂ : Type u_2} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] {P : TensorProduct R H₁ H₂ →ₗ[R] TensorProduct R H₁ H₂} (hP : P.IsBimoduleMap) (x : H₁) (a : TensorProduct R H₁ H₂) :
        theorem LinearMap.IsBimoduleMap.rsmul {R : Type u_1} {H₁ : Type u_3} {H₂ : Type u_2} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] {P : TensorProduct R H₁ H₂ →ₗ[R] TensorProduct R H₁ H₂} (hP : P.IsBimoduleMap) (x : H₂) (a : TensorProduct R H₁ H₂) :
        theorem LinearMap.IsBimoduleMap.add {R : Type u_1} {H₁ : Type u_3} {H₂ : Type u_2} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] {P : TensorProduct R H₁ H₂ →ₗ[R] TensorProduct R H₁ H₂} {Q : TensorProduct R H₁ H₂ →ₗ[R] TensorProduct R H₁ H₂} (hP : P.IsBimoduleMap) (hQ : Q.IsBimoduleMap) :
        (P + Q).IsBimoduleMap
        theorem LinearMap.isBimoduleMap.zero {R : Type u_1} {H₁ : Type u_2} {H₂ : Type u_3} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] :
        theorem LinearMap.IsBimoduleMap.smul {R : Type u_1} {H₁ : Type u_3} {H₂ : Type u_2} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] {x : TensorProduct R H₁ H₂ →ₗ[R] TensorProduct R H₁ H₂} (hx : x.IsBimoduleMap) (k : R) :
        (k x).IsBimoduleMap
        theorem LinearMap.IsBimoduleMap.nsmul {R : Type u_1} {H₁ : Type u_3} {H₂ : Type u_2} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] {x : TensorProduct R H₁ H₂ →ₗ[R] TensorProduct R H₁ H₂} (hx : x.IsBimoduleMap) (k : ) :
        (k x).IsBimoduleMap
        def LinearMap.IsBimoduleMaps (R : Type u_1) (H₁ : Type u_2) (H₂ : Type u_3) [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] :
        Submodule R (TensorProduct R H₁ H₂ →ₗ[R] TensorProduct R H₁ H₂)
        Equations
        Instances For
          @[simp]
          theorem LinearMap.IsBimoduleMaps.coe_add {R : Type u_3} {H₁ : Type u_1} {H₂ : Type u_2} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] (x : (LinearMap.IsBimoduleMaps R H₁ H₂)) (y : (LinearMap.IsBimoduleMaps R H₁ H₂)) :
          (x + y) = x + y
          @[simp]
          theorem LinearMap.IsBimoduleMaps.coe_smul {R : Type u_3} {H₁ : Type u_1} {H₂ : Type u_2} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] (x : (LinearMap.IsBimoduleMaps R H₁ H₂)) (r : R) :
          (r x) = r x
          @[simp]
          theorem LinearMap.IsBimoduleMaps.coe_nsmul {R : Type u_3} {H₁ : Type u_1} {H₂ : Type u_2} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] (x : (LinearMap.IsBimoduleMaps R H₁ H₂)) (r : ) :
          (r x) = r x
          @[simp]
          theorem LinearMap.IsBimoduleMaps.coe_zero {R : Type u_3} {H₁ : Type u_1} {H₂ : Type u_2} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] :
          0 = 0
          theorem LinearMap.IsBimoduleMap.add_smul {R : Type u_3} {H₁ : Type u_1} {H₂ : Type u_2} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] (a : R) (b : R) (x : (LinearMap.IsBimoduleMaps R H₁ H₂)) :
          (a + b) x = a x + b x
          theorem LinearMap.isBimoduleMap_iff {R : Type u_1} {H₁ : Type u_3} {H₂ : Type u_2} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] {T : TensorProduct R H₁ H₂ →ₗ[R] TensorProduct R H₁ H₂} :
          T.IsBimoduleMap ∀ (a : H₁) (b : H₂) (x : H₁) (y : H₂), T ((a * x) ⊗ₜ[R] (y * b)) = Bimodule.rsmul (Bimodule.lsmul a (T (x ⊗ₜ[R] y))) b
          theorem LinearMap.isBimoduleMap_iff_ltensor_lsmul_rtensor_rsmul {R : Type u_1} {H₁ : Type u_2} {H₂ : Type u_3} [Field R] [Ring H₁] [Ring H₂] [Algebra R H₁] [Algebra R H₂] {x : H₁ →ₗ[R] H₁} {y : H₂ →ₗ[R] H₂} :
          (TensorProduct.map x y).IsBimoduleMap TensorProduct.map x y = 0 x = LinearMap.mulRight R (x 1) y = LinearMap.mulLeft R (y 1)
          theorem LinearMap.IsBimoduleMap.sum_coe {R : Type u_4} {H₁ : Type u_2} {H₂ : Type u_3} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] {p : Type u_1} {s : Finset p} (x : p(LinearMap.IsBimoduleMaps R H₁ H₂)) :
          (∑ is, x i) = is, (x i)
          theorem rmulMapLmul_apply_apply {R : Type u_1} {H₁ : Type u_2} {H₂ : Type u_3} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] (x : TensorProduct R H₁ H₂) (a : H₁) (b : H₂) :
          (rmulMapLmul x) (a ⊗ₜ[R] b) = Bimodule.rsmul (Bimodule.lsmul a x) b
          theorem LinearMap.isBimoduleMap_iff' {R : Type u_1} {H₁ : Type u_3} {H₂ : Type u_2} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] {f : TensorProduct R H₁ H₂ →ₗ[R] TensorProduct R H₁ H₂} :
          f.IsBimoduleMap rmulMapLmul (f 1) = f
          @[simp]
          theorem rmulMapLmul_apply_one {R : Type u_1} {H₁ : Type u_2} {H₂ : Type u_3} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] (x : TensorProduct R H₁ H₂) :
          (rmulMapLmul x) 1 = x
          @[simp]
          theorem LinearMap.mem_isBimoduleMaps_iff {R : Type u_1} {H₁ : Type u_3} {H₂ : Type u_2} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] {x : TensorProduct R H₁ H₂ →ₗ[R] TensorProduct R H₁ H₂} :
          x LinearMap.IsBimoduleMaps R H₁ H₂ x.IsBimoduleMap
          theorem rmulMapLmul_mem_isBimoduleMaps {R : Type u_1} {H₁ : Type u_2} {H₂ : Type u_3} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] (x : TensorProduct R H₁ H₂) :
          rmulMapLmul x LinearMap.IsBimoduleMaps R H₁ H₂
          noncomputable def TensorProduct.toIsBimoduleMap {R : Type u_1} {H₁ : Type u_2} {H₂ : Type u_3} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] :
          TensorProduct R H₁ H₂ ≃ₗ[R] (LinearMap.IsBimoduleMaps R H₁ H₂)
          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            @[simp]
            theorem TensorProduct.toIsBimoduleMap_symm_apply {R : Type u_1} {H₁ : Type u_2} {H₂ : Type u_3} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] (x : (LinearMap.IsBimoduleMaps R H₁ H₂)) :
            TensorProduct.toIsBimoduleMap.symm x = x 1
            @[simp]
            theorem TensorProduct.toIsBimoduleMap_apply_coe {R : Type u_1} {H₁ : Type u_2} {H₂ : Type u_3} [CommSemiring R] [Semiring H₁] [Semiring H₂] [Algebra R H₁] [Algebra R H₂] (x : TensorProduct R H₁ H₂) :
            (TensorProduct.toIsBimoduleMap x) = rmulMapLmul x