Documentation

Monlib.LinearAlgebra.QuantumSet.Basic

Quantum Set #

This file defines the structure of a quantum set.

A quantum set is defined as a star-algebra A over with a positive element Q such that Q is invertible and a sum of rank-one operators (in other words, positive definite). The quantum set is also equipped with a faithful positive linear functional φ on A, which is used to define the inner product on A, i.e., ⟪x, y⟫_ℂ = φ (star x * y). The quantum set is also equipped with a trace functional on A such that φ x = trace (Q * x).

Main definitions #

@[simp]
theorem starAlgebra.modAut_trans {A : Type u_1} [self : starAlgebra A] (r : ) (s : ) :
(modAut r).trans (modAut s) = modAut (r + s)

the modular automorphism is an additive homomorphism from to (A ≃ₐ[ℂ] A, add := · * ·, zero := 1)

@[simp]
theorem starAlgebra.modAut_star {A : Type u_1} [self : starAlgebra A] (r : ) (x : A) :
star ((modAut r) x) = (modAut (-r)) (star x)

applying star to modAut r x will give modAut (-r) (star x)

@[simp]
theorem starAlgebra.modAut_zero {A : Type u_1} [hA : starAlgebra A] :
modAut 0 = 1
@[simp]
theorem starAlgebra.modAut_apply_modAut {A : Type u_1} [ha : starAlgebra A] (t : ) (r : ) (a : A) :
(modAut t) ((modAut r) a) = (modAut (t + r)) a
@[simp]
theorem starAlgebra.modAut_symm {A : Type u_1} [ha : starAlgebra A] (r : ) :
(modAut r).symm = modAut (-r)
Instances
    theorem InnerProductAlgebra.norm_sq_eq_inner {A : Type u_1} :
    ∀ {inst : starAlgebra A} [self : InnerProductAlgebra A] (x : A), x ^ 2 = RCLike.re (inner x x)
    theorem InnerProductAlgebra.dist_eq {A : Type u_1} :
    ∀ {inst : starAlgebra A} [self : InnerProductAlgebra A] (x y : A), dist x y = x - y
    theorem InnerProductAlgebra.conj_symm {A : Type u_1} :
    ∀ {inst : starAlgebra A} [self : InnerProductAlgebra A] (x y : A), (starRingEnd ) (inner y x) = inner x y
    theorem InnerProductAlgebra.add_left {A : Type u_1} :
    ∀ {inst : starAlgebra A} [self : InnerProductAlgebra A] (x y z : A), inner (x + y) z = inner x z + inner y z
    theorem InnerProductAlgebra.smul_left {A : Type u_1} :
    ∀ {inst : starAlgebra A} [self : InnerProductAlgebra A] (x y : A) (r : ), inner (r x) y = (starRingEnd ) r * inner x y
    Equations
    Equations
    class QuantumSet (A : Type u_2) [ha : starAlgebra A] extends InnerProductAlgebra , Norm , MetricSpace , Inner , BoundedSMul , PseudoMetricSpace , Dist :
    Type (max (u_1 + 1) u_2)
    Instances
      @[simp]
      theorem QuantumSet.modAut_isSymmetric {A : Type u_2} {ha : starAlgebra A} [self : QuantumSet A] (r : ) (x : A) (y : A) :
      inner ((modAut r) x) y = inner x ((modAut r) y)

      the modular automorphism is symmetric with respect to the inner product, in other words, it is self-adjoint

      @[simp]
      theorem QuantumSet.inner_star_left {A : Type u_2} {ha : starAlgebra A} [self : QuantumSet A] (x : A) (y : A) (z : A) :
      inner (x * y) z = inner y ((modAut (-k A)) (star x) * z)
      @[simp]
      theorem QuantumSet.inner_conj_left {A : Type u_2} {ha : starAlgebra A} [self : QuantumSet A] (x : A) (y : A) (z : A) :
      inner (x * y) z = inner x (z * (modAut (-k A - 1)) (star y))
      instance n_isFinite {A : Type u_1} [ha : starAlgebra A] [QuantumSet A] :
      Finite (n A)
      Equations
      • =
      instance QuantumSet.toFinite {A : Type u_1} [ha : starAlgebra A] [hA : QuantumSet A] :
      Equations
      • =
      theorem QuantumSet.modAut_isSelfAdjoint {A : Type u_1} [ha : starAlgebra A] [hA : QuantumSet A] (r : ) :
      IsSelfAdjoint (modAut r).toLinearMap
      theorem QuantumSet.modAut_apply_modAut {A : Type u_1} [ha : starAlgebra A] (t : ) (r : ) (a : A) :
      (modAut t) ((modAut r) a) = (modAut (t + r)) a

      Alias of starAlgebra.modAut_apply_modAut.

      Equations
      • One or more equations did not get rendered due to their size.
      noncomputable instance Complex.quantumSet :
      Equations
      • One or more equations did not get rendered due to their size.
      @[simp]
      theorem RCLike.inner_tmul {𝕜 : Type u_2} [RCLike 𝕜] (x : 𝕜) (y : 𝕜) (z : 𝕜) (w : 𝕜) :
      inner (x ⊗ₜ[𝕜] y) (z ⊗ₜ[𝕜] w) = inner (x * y) (z * w)
      theorem TensorProduct.singleton_tmul {R : Type u_2} {E : Type u_3} {F : Type u_4} [CommSemiring R] [AddCommGroup E] [Module R E] [AddCommGroup F] [Module R F] (x : TensorProduct R E F) (b₁ : Basis (Fin 1) R E) (b₂ : Basis (Fin 1) R F) :
      ∃ (a : E) (b : F), x = a ⊗ₜ[R] b
      theorem RCLike.inner_tensor_apply {𝕜 : Type u_2} [RCLike 𝕜] (x : TensorProduct 𝕜 𝕜 𝕜) (y : TensorProduct 𝕜 𝕜 𝕜) :
      inner x y = inner ((LinearMap.mul' 𝕜 𝕜) x) ((LinearMap.mul' 𝕜 𝕜) y)
      @[simp]
      theorem QuantumSet.complex_modAut :
      modAut = 1
      theorem QuantumSet.complex_comul :
      Coalgebra.comul = (TensorProduct.lid ).symm
      def QuantumSet.modAut_isCoalgHom {A : Type u_2} [hA : starAlgebra A] [QuantumSet A] (r : ) :
      (modAut r).toLinearMap.IsCoalgHom
      Equations
      • =
      Instances For
        theorem lmul_adjoint {B : Type u_2} [hb : starAlgebra B] [hB : QuantumSet B] (a : B) :
        LinearMap.adjoint (lmul a) = lmul ((modAut (-k B)) (star a))
        theorem QuantumSet.inner_eq_counit' {B : Type u_2} [hb : starAlgebra B] [hB : QuantumSet B] :
        (fun (x : B) => inner 1 x) = Coalgebra.counit
        theorem QuantumSet.inner_conj {A : Type u_2} [ha : starAlgebra A] [hA : QuantumSet A] (a : A) (b : A) :
        inner a b = inner (star b) ((modAut (-(2 * k A) - 1)) (star a))
        theorem QuantumSet.inner_conj' {A : Type u_2} [ha : starAlgebra A] [hA : QuantumSet A] (a : A) (b : A) :
        inner a b = inner ((modAut (-(2 * k A) - 1)) (star b)) (star a)
        theorem QuantumSet.inner_modAut_right_conj {A : Type u_2} [ha : starAlgebra A] [hA : QuantumSet A] (a : A) (b : A) :
        inner a ((modAut (-k A)) (star b)) = inner b ((modAut (-k A - 1)) (star a))
        theorem QuantumSet.inner_conj'' {A : Type u_2} [ha : starAlgebra A] [hA : QuantumSet A] (a : A) (b : A) :
        inner a b = inner ((modAut ((-(2 * k A) - 1) / 2)) (star b)) ((modAut ((-(2 * k A) - 1) / 2)) (star a))
        theorem QuantumSet.inner_eq_counit {B : Type u_2} [hb : starAlgebra B] [hB : QuantumSet B] (x : B) (y : B) :
        inner x y = Coalgebra.counit (star x * (modAut (k B)) y)
        theorem counit_mul_modAut_symm' {A : Type u_2} [ha : starAlgebra A] [hA : QuantumSet A] (a : A) (b : A) (r : ) :
        Coalgebra.counit (a * (modAut r) b) = Coalgebra.counit ((modAut (r + 1)) b * a)
        theorem rmul_adjoint {B : Type u_2} [hb : starAlgebra B] [hB : QuantumSet B] (a : B) :
        LinearMap.adjoint (rmul a) = rmul ((modAut (-k B - 1)) (star a))
        theorem counit_comp_mul_comp_rTensor_modAut {A : Type u_2} [ha : starAlgebra A] [hA : QuantumSet A] :
        Coalgebra.counit ∘ₗ LinearMap.mul' A ∘ₗ LinearMap.rTensor A (modAut 1).toLinearMap = Coalgebra.counit ∘ₗ LinearMap.mul' A ∘ₗ (TensorProduct.comm A A)
        theorem counit_comp_mul_comp_lTensor_modAut {A : Type u_2} [ha : starAlgebra A] [hA : QuantumSet A] :
        Coalgebra.counit ∘ₗ LinearMap.mul' A ∘ₗ LinearMap.lTensor A (modAut (-1)).toLinearMap = Coalgebra.counit ∘ₗ LinearMap.mul' A ∘ₗ (TensorProduct.comm A A)
        noncomputable def QuantumSet.Psi_toFun {A : Type u_2} {B : Type u_3} [hb : starAlgebra B] [ha : starAlgebra A] [hA : QuantumSet A] [hB : QuantumSet B] (t : ) (r : ) :
        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          theorem QuantumSet.Psi_toFun_apply {A : Type u_2} {B : Type u_3} [hb : starAlgebra B] [ha : starAlgebra A] [hA : QuantumSet A] [hB : QuantumSet B] (t : ) (r : ) (b : A) (a : B) :
          noncomputable def QuantumSet.Psi_invFun {A : Type u_2} {B : Type u_3} [hb : starAlgebra B] [ha : starAlgebra A] [hA : QuantumSet A] [hB : QuantumSet B] (t : ) (r : ) :
          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            theorem QuantumSet.Psi_invFun_apply {A : Type u_3} {B : Type u_2} [hb : starAlgebra B] [ha : starAlgebra A] [hA : QuantumSet A] [hB : QuantumSet B] (t : ) (r : ) (x : A) (y : Bᵐᵒᵖ) :
            (QuantumSet.Psi_invFun t r) (x ⊗ₜ[] y) = (((rankOne ) ((modAut (-t)) x)) ((modAut (-r)) (star (MulOpposite.unop y))))
            theorem QuantumSet.Psi_left_inv {A : Type u_2} {B : Type u_3} [hb : starAlgebra B] [ha : starAlgebra A] [hA : QuantumSet A] [hB : QuantumSet B] (t : ) (r : ) (x : A) (y : B) :
            (QuantumSet.Psi_invFun t r) ((QuantumSet.Psi_toFun t r) (((rankOne ) x) y)) = (((rankOne ) x) y)
            theorem QuantumSet.Psi_right_inv {A : Type u_3} {B : Type u_2} [hb : starAlgebra B] [ha : starAlgebra A] [hA : QuantumSet A] [hB : QuantumSet B] (t : ) (r : ) (x : A) (y : Bᵐᵒᵖ) :
            noncomputable def QuantumSet.Psi {A : Type u_2} {B : Type u_3} [hb : starAlgebra B] [ha : starAlgebra A] [hA : QuantumSet A] [hB : QuantumSet B] (t : ) (r : ) :
            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              @[simp]
              theorem QuantumSet.Psi_apply {A : Type u_2} {B : Type u_3} [hb : starAlgebra B] [ha : starAlgebra A] [hA : QuantumSet A] [hB : QuantumSet B] (t : ) (r : ) (x : A →ₗ[] B) :
              @[simp]
              theorem QuantumSet.Psi_symm_apply {A : Type u_2} {B : Type u_3} [hb : starAlgebra B] [ha : starAlgebra A] [hA : QuantumSet A] [hB : QuantumSet B] (t : ) (r : ) (x : TensorProduct B Aᵐᵒᵖ) :
              theorem LinearMap.adjoint_real_eq {A : Type u_2} {B : Type u_3} [hb : starAlgebra B] [ha : starAlgebra A] [hA : QuantumSet A] [hB : QuantumSet B] (f : A →ₗ[] B) :
              (LinearMap.adjoint f).real = (modAut (2 * k A + 1)).toLinearMap ∘ₗ LinearMap.adjoint f.real ∘ₗ (modAut (-(2 * k B) - 1)).toLinearMap
              theorem rankOne_real {A : Type u_2} {B : Type u_3} [hb : starAlgebra B] [ha : starAlgebra A] [hA : QuantumSet A] [hB : QuantumSet B] (a : A) (b : B) :
              (↑(((rankOne ) a) b)).real = (((rankOne ) (star a)) ((modAut (-(2 * k B) - 1)) (star b)))
              theorem QuantumSet.rTensor_mul_comp_lTensor_comul_eq_comul_comp_mul {A : Type u_2} [ha : starAlgebra A] [hA : QuantumSet A] :
              LinearMap.rTensor A (LinearMap.mul' A) ∘ₗ (TensorProduct.assoc A A A).symm ∘ₗ LinearMap.lTensor A Coalgebra.comul = Coalgebra.comul ∘ₗ LinearMap.mul' A
              theorem QuantumSet.lTensor_mul_comp_rTensor_comul_eq_comul_comp_mul {A : Type u_2} [ha : starAlgebra A] [hA : QuantumSet A] :
              LinearMap.lTensor A (LinearMap.mul' A) ∘ₗ (TensorProduct.assoc A A A) ∘ₗ LinearMap.rTensor A Coalgebra.comul = Coalgebra.comul ∘ₗ LinearMap.mul' A
              noncomputable def QuantumSet.isFrobeniusAlgebra {A : Type u_2} [ha : starAlgebra A] [hA : QuantumSet A] :
              Equations
              Instances For
                theorem QuantumSet.rTensor_counit_mul_comp_comm_comp_rTensor_comul_unit_eq_modAut_one {A : Type u_2} [ha : starAlgebra A] [hA : QuantumSet A] :
                (TensorProduct.lid A) ∘ₗ LinearMap.rTensor A (Coalgebra.counit ∘ₗ LinearMap.mul' A) ∘ₗ (TensorProduct.assoc A A A).symm ∘ₗ LinearMap.lTensor A (TensorProduct.comm A A) ∘ₗ (TensorProduct.assoc A A A) ∘ₗ LinearMap.rTensor A (Coalgebra.comul ∘ₗ Algebra.linearMap A) ∘ₗ (TensorProduct.lid A).symm = (modAut 1).toLinearMap
                theorem QuantumSet.lTensor_counit_mul_comp_comm_comp_lTensor_comul_unit_eq_modAut_neg_one {A : Type u_2} [ha : starAlgebra A] [hA : QuantumSet A] :
                (TensorProduct.rid A) ∘ₗ LinearMap.lTensor A (Coalgebra.counit ∘ₗ LinearMap.mul' A) ∘ₗ (TensorProduct.assoc A A A) ∘ₗ LinearMap.rTensor A (TensorProduct.comm A A) ∘ₗ (TensorProduct.assoc A A A).symm ∘ₗ LinearMap.lTensor A (Coalgebra.comul ∘ₗ Algebra.linearMap A) ∘ₗ (TensorProduct.rid A).symm = (modAut (-1)).toLinearMap
                theorem QuantumSet.counit_tensor_star_left_eq_bra {A : Type u_2} [ha : starAlgebra A] [hA : QuantumSet A] (x : A) :
                (Coalgebra.counit (LinearMap.mul' A) fun (x_1 : A) => (modAut (-k A)) (star x) ⊗ₜ[] x_1) = ((bra ) x)
                theorem QuantumSet.mul_comp_tensor_left_unit_eq_ket {A : Type u_2} [ha : starAlgebra A] [hA : QuantumSet A] (x : A) :
                (LinearMap.mul' A) (fun (x_1 : A) => x ⊗ₜ[] x_1) (Algebra.linearMap A) = ((ket ) x)
                theorem QuantumSet.rTensor_bra_comul_unit_eq_ket_star {A : Type u_2} [ha : starAlgebra A] [hA : QuantumSet A] (x : A) :
                (TensorProduct.lid A) ∘ₗ LinearMap.rTensor A ((bra ) x) ∘ₗ Coalgebra.comul ∘ₗ Algebra.linearMap A = ((ket ) ((modAut (-k A)) (star x)))
                theorem QuantumSet.rTensor_bra_comul_unit_eq_ket_star' {A : Type u_2} [ha : starAlgebra A] [hA : QuantumSet A] (x : A) :
                (TensorProduct.lid A) ∘ₗ LinearMap.rTensor A ((bra ) ((modAut (-k A)) x)) ∘ₗ Coalgebra.comul ∘ₗ Algebra.linearMap A = ((ket ) (star x))
                theorem QuantumSet.counit_mul_rTensor_ket_eq_bra_star {A : Type u_2} [ha : starAlgebra A] [hA : QuantumSet A] (x : A) :
                Coalgebra.counit ∘ₗ LinearMap.mul' A ∘ₗ LinearMap.rTensor A ((ket ) x) ∘ₗ (TensorProduct.lid A).symm = ((bra ) ((modAut (-k A)) (star x)))
                theorem ket_real {𝕜 : Type u_2} {A : Type u_3} [RCLike 𝕜] [NormedAddCommGroup A] [InnerProductSpace 𝕜 A] [StarAddMonoid A] [StarModule 𝕜 A] (x : A) :
                (↑((ket 𝕜) x)).real = ((ket 𝕜) (star x))
                theorem bra_real {A : Type u_2} [ha : starAlgebra A] [hA : QuantumSet A] (x : A) :
                (↑((bra ) x)).real = ((bra ) ((modAut (-(2 * k A) - 1)) (star x)))
                theorem ket_toMatrix {𝕜 : Type u_2} {A : Type u_3} [RCLike 𝕜] [NormedAddCommGroup A] [InnerProductSpace 𝕜 A] {ι : Type u_4} [Fintype ι] (b : Basis ι 𝕜 A) (x : A) :
                (LinearMap.toMatrix (Basis.singleton Unit 𝕜) b) ((ket 𝕜) x) = Matrix.col Unit (b.repr x)
                theorem bra_toMatrix {𝕜 : Type u_2} {A : Type u_3} [RCLike 𝕜] [NormedAddCommGroup A] [InnerProductSpace 𝕜 A] {ι : Type u_4} [Fintype ι] [DecidableEq ι] (b : OrthonormalBasis ι 𝕜 A) (x : A) :
                (LinearMap.toMatrix b.toBasis (Basis.singleton Unit 𝕜)) ((bra 𝕜) x) = (Matrix.col Unit (b.repr x)).conjTranspose
                theorem lmul_toMatrix_apply {n : Type u_2} [Fintype n] [DecidableEq n] (x : n) (i : n) (j : n) :
                LinearMap.toMatrix' (LinearMap.mulLeft x) i j = if i = j then x i else 0
                theorem rankOne_trace {𝕜 : Type u_2} {A : Type u_3} [RCLike 𝕜] [NormedAddCommGroup A] [InnerProductSpace 𝕜 A] [Module.Finite 𝕜 A] (x : A) (y : A) :
                (LinearMap.trace 𝕜 A) (((rankOne 𝕜) x) y) = inner y x
                theorem LinearMap.apply_eq_id {R : Type u_2} {M : Type u_3} [Semiring R] [AddCommMonoid M] [Module R M] {f : M →ₗ[R] M} :
                (∀ (x : M), f x = x) f = 1
                theorem QuantumSet.starAlgEquiv_is_isometry_tfae {A : Type u_2} {B : Type u_3} [hb : starAlgebra B] [ha : starAlgebra A] [hA : QuantumSet A] [hB : QuantumSet B] (f : A ≃⋆ₐ[] B) :
                [LinearMap.adjoint f.toLinearMap = f.symm.toLinearMap, ∀ (x y : A), inner (f x) (f y) = inner x y, ∀ (x : A), f x = x, Isometry f].TFAE
                theorem QuantumSet.starAlgEquiv_isometry_iff_adjoint_eq_symm {A : Type u_2} {B : Type u_3} [hb : starAlgebra B] [ha : starAlgebra A] [hA : QuantumSet A] [hB : QuantumSet B] {f : A ≃⋆ₐ[] B} :
                Isometry f LinearMap.adjoint f.toLinearMap = f.symm.toLinearMap
                theorem QuantumSet.starAlgEquiv_isometry_iff_coalgHom {A : Type u_3} {B : Type u_5} [hb : starAlgebra B] [ha : starAlgebra A] [hA : QuantumSet A] [hB : QuantumSet B] (gns₁ : k A = 0) (gns₂ : k B = 0) {f : A ≃⋆ₐ[] B} :
                Isometry f Coalgebra.counit ∘ₗ f.toLinearMap = Coalgebra.counit
                theorem StarAlgEquiv.isReal {R : Type u_2} {A : Type u_3} {B : Type u_4} [Semiring R] [AddCommMonoid A] [AddCommMonoid B] [Mul A] [Mul B] [Module R A] [Module R B] [Star A] [Star B] (f : A ≃⋆ₐ[R] B) :
                LinearMap.IsReal f.toLinearMap
                theorem QuantumSet.modAut_real {A : Type u_2} [ha : starAlgebra A] (r : ) :
                (modAut r).toLinearMap.real = (modAut (-r)).toLinearMap
                theorem AlgEquiv.linearMap_comp_eq_iff {R : Type u_2} {E₁ : Type u_3} {E₂ : Type u_4} {E₃ : Type u_5} [CommSemiring R] [Semiring E₁] [Semiring E₂] [AddCommMonoid E₃] [Algebra R E₁] [Algebra R E₂] [Module R E₃] (f : E₁ ≃ₐ[R] E₂) (x : E₂ →ₗ[R] E₃) (y : E₁ →ₗ[R] E₃) :
                x ∘ₗ f.toLinearMap = y x = y ∘ₗ f.symm.toLinearMap
                theorem AlgEquiv.comp_linearMap_eq_iff {R : Type u_2} {E₁ : Type u_3} {E₂ : Type u_4} {E₃ : Type u_5} [CommSemiring R] [Semiring E₁] [Semiring E₂] [AddCommMonoid E₃] [Algebra R E₁] [Algebra R E₂] [Module R E₃] (f : E₁ ≃ₐ[R] E₂) (x : E₃ →ₗ[R] E₁) (y : E₃ →ₗ[R] E₂) :
                f.toLinearMap ∘ₗ x = y x = f.symm.toLinearMap ∘ₗ y
                theorem QuantumSet.modAut_adjoint {A : Type u_2} [ha : starAlgebra A] [hA : QuantumSet A] (r : ) :
                LinearMap.adjoint (modAut r).toLinearMap = (modAut r).toLinearMap
                theorem QuantumSet.starAlgEquiv_commutes_with_modAut_of_isometry {A : Type u_2} {B : Type u_3} [hb : starAlgebra B] [ha : starAlgebra A] [hA : QuantumSet A] [hB : QuantumSet B] {f : A ≃⋆ₐ[] B} (hf : Isometry f) :
                (modAut (2 * k A + 1)).trans f.toAlgEquiv = f.toAlgEquiv.trans (modAut (2 * k B + 1))
                theorem QuantumSet.starAlgEquiv_commutes_with_modAut_of_isometry' {A : Type u_2} {B : Type u_3} [hb : starAlgebra B] [ha : starAlgebra A] [hA : QuantumSet A] [hB : QuantumSet B] {f : A ≃⋆ₐ[] B} (hf : Isometry f) :
                f.toLinearMap ∘ₗ (modAut (2 * k A + 1)).toLinearMap = (modAut (2 * k B + 1)).toLinearMap ∘ₗ f.toLinearMap
                theorem tenSwap_lTensor_comul_one_eq_Psi {A : Type u_2} {B : Type u_3} [hb : starAlgebra B] [ha : starAlgebra A] [hA : QuantumSet A] [hB : QuantumSet B] (f : A →ₗ[] B) :
                (tenSwap ) ((LinearMap.lTensor A ((op ) ∘ₗ f)) (Coalgebra.comul 1)) = (QuantumSet.Psi 0 (k A + 1)) f
                theorem map_op_comul_one_eq_Psi {A : Type u_2} {B : Type u_3} [hb : starAlgebra B] [ha : starAlgebra A] [hA : QuantumSet A] [hB : QuantumSet B] (f : A →ₗ[] B) :
                (TensorProduct.map f (op )) (Coalgebra.comul 1) = (QuantumSet.Psi 0 (k A)) f
                theorem tenSwap_apply_lTensor {R : Type u_2} {A : Type u_3} {B : Type u_4} {C : Type u_5} [CommSemiring R] [AddCommMonoid A] [AddCommMonoid C] [Module R A] [AddCommMonoid B] [Module R B] [Module R C] (f : B →ₗ[R] C) (x : TensorProduct R A Bᵐᵒᵖ) :
                theorem Psi_inv_comp_swap_lTensor_op_comp_comul_eq_rmul {A : Type u_2} [ha : starAlgebra A] [hA : QuantumSet A] :
                (QuantumSet.Psi 0 (k A + 1)).symm ∘ₗ (tenSwap ) ∘ₗ LinearMap.lTensor A (op ) ∘ₗ Coalgebra.comul = rmul
                theorem QuantumSet.Psi_apply_one_one {A : Type u_2} {B : Type u_3} [hb : starAlgebra B] [ha : starAlgebra A] [hA : QuantumSet A] [hB : QuantumSet B] (t : ) (r : ) :
                (QuantumSet.Psi t r) (((rankOne ) 1) 1) = 1
                theorem QuantumSet.Psi_symm_apply_one {A : Type u_2} {B : Type u_3} [hb : starAlgebra B] [ha : starAlgebra A] [hA : QuantumSet A] [hB : QuantumSet B] (t : ) (r : ) :
                (QuantumSet.Psi t r).symm 1 = (((rankOne ) 1) 1)
                @[reducible, inline]
                noncomputable abbrev Upsilon {A : Type u_2} {B : Type u_3} [hb : starAlgebra B] [ha : starAlgebra A] [hA : QuantumSet A] [hB : QuantumSet B] :
                Equations
                Instances For
                  @[simp]
                  theorem Upsilon_apply {A : Type u_2} {B : Type u_3} [hb : starAlgebra B] [ha : starAlgebra A] [hA : QuantumSet A] [hB : QuantumSet B] :
                  ∀ (a : A →ₗ[] B), Upsilon a = (LinearEquiv.lTensor A (unop )) ((TensorProduct.map (unop ) (op )) ((TensorProduct.comm B Aᵐᵒᵖ) ((QuantumSet.Psi_toFun 0 (k A + 1)) a)))
                  @[simp]
                  theorem Upsilon_symm_apply {A : Type u_2} {B : Type u_3} [hb : starAlgebra B] [ha : starAlgebra A] [hA : QuantumSet A] [hB : QuantumSet B] :
                  ∀ (a : TensorProduct A B), Upsilon.symm a = (QuantumSet.Psi_invFun 0 (k A + 1)) ((TensorProduct.comm B Aᵐᵒᵖ).symm ((TensorProduct.map (op ) (op ).symm) ((LinearEquiv.lTensor A (unop )).symm a)))
                  theorem Upsilon_apply_one_one {A : Type u_2} {B : Type u_3} [hb : starAlgebra B] [ha : starAlgebra A] [hA : QuantumSet A] [hB : QuantumSet B] :
                  Upsilon (((rankOne ) 1) 1) = 1
                  theorem Upsilon_symm_apply_one {A : Type u_2} {B : Type u_3} [hb : starAlgebra B] [ha : starAlgebra A] [hA : QuantumSet A] [hB : QuantumSet B] :
                  Upsilon.symm 1 = (((rankOne ) 1) 1)
                  theorem Upsilon_rankOne {A : Type u_2} {B : Type u_3} [hb : starAlgebra B] [ha : starAlgebra A] [hA : QuantumSet A] [hB : QuantumSet B] (a : A) (b : B) :
                  Upsilon (((rankOne ) a) b) = (modAut (-k B - 1)) (star b) ⊗ₜ[] a
                  theorem Upsilon_symm_tmul {A : Type u_2} {B : Type u_3} [hb : starAlgebra B] [ha : starAlgebra A] [hA : QuantumSet A] [hB : QuantumSet B] (a : A) (b : B) :
                  Upsilon.symm (a ⊗ₜ[] b) = (((rankOne ) b) ((modAut (-k A - 1)) (star a)))
                  theorem rmulMapLmul_apply_Upsilon_eq {A : Type u_2} {B : Type u_3} [hb : starAlgebra B] [ha : starAlgebra A] [hA : QuantumSet A] [hB : QuantumSet B] (x : A →ₗ[] B) :
                  rmulMapLmul (Upsilon x) = LinearMap.lTensor A (LinearMap.mul' B) ∘ₗ (TensorProduct.assoc A B B) ∘ₗ LinearMap.rTensor B (LinearMap.lTensor A x) ∘ₗ LinearMap.rTensor B Coalgebra.comul