Documentation

LeanPool.Monlib4.LinearAlgebra.QuantumSet.TensorProduct

Tensor Products of Quantum Sets #

This file restores the upstream tensor-product quantum-set instance and the fourfold tensor-shuffle lemmas used by later quantum-graph files.

@[implicit_reducible]
noncomputable instance tensorStarAlgebra {A : Type u_1} [ha : starAlgebra A] {B : Type u_2} [hb : starAlgebra B] :
Equations
  • One or more equations did not get rendered due to their size.
theorem modAut_tensor {A : Type u_1} [ha : starAlgebra A] {B : Type u_2} [hb : starAlgebra B] (r : ) :
theorem modAut_tensor_tmul {A : Type u_1} [ha : starAlgebra A] {B : Type u_2} [hb : starAlgebra B] (r : ) (x : A) (y : B) :
@[implicit_reducible]
Equations
  • One or more equations did not get rendered due to their size.
@[implicit_reducible]
noncomputable instance QuantumSet.tensorProduct {A : Type u_1} [ha : starAlgebra A] {B : Type u_2} [hb : starAlgebra B] [hA : QuantumSet A] [hB : QuantumSet B] [h : Fact (k A = k B)] :
Equations
  • One or more equations did not get rendered due to their size.
theorem QuantumSet.tensorProduct.k_eq₁ {A : Type u_1} [ha : starAlgebra A] {B : Type u_2} [hb : starAlgebra B] [hA : QuantumSet A] [hB : QuantumSet B] [Fact (k A = k B)] :
theorem QuantumSet.tensorProduct.k_eq₂ {A : Type u_1} [ha : starAlgebra A] {B : Type u_2} [hb : starAlgebra B] [hA : QuantumSet A] [hB : QuantumSet B] [h : Fact (k A = k B)] :
noncomputable def swapMiddleTensor (R : Type u_3) [CommSemiring R] (A : Type u_4) (B : Type u_5) (C : Type u_6) (D : Type u_7) [AddCommMonoid A] [AddCommMonoid B] [AddCommMonoid C] [AddCommMonoid D] [Module R A] [Module R B] [Module R C] [Module R D] :

Swap the two middle factors in a fourfold tensor product.

Equations
  • One or more equations did not get rendered due to their size.
Instances For
    @[simp]
    theorem swapMiddleTensor_tmul_apply {R : Type u_3} [CommSemiring R] {A : Type u_4} {B : Type u_5} {C : Type u_6} {D : Type u_7} [AddCommMonoid A] [AddCommMonoid B] [AddCommMonoid C] [AddCommMonoid D] [Module R A] [Module R B] [Module R C] [Module R D] (x : A) (y : B) (z : C) (w : D) :
    (swapMiddleTensor R A B C D) (x ⊗ₜ[R] y ⊗ₜ[R] (z ⊗ₜ[R] w)) = x ⊗ₜ[R] z ⊗ₜ[R] (y ⊗ₜ[R] w)
    @[simp]
    theorem swapMiddleTensor_symm {R : Type u_3} [CommSemiring R] {A : Type u_4} {B : Type u_5} {C : Type u_6} {D : Type u_7} [AddCommMonoid A] [AddCommMonoid B] [AddCommMonoid C] [AddCommMonoid D] [Module R A] [Module R B] [Module R C] [Module R D] :
    (swapMiddleTensor R A B C D).symm = swapMiddleTensor R A C B D
    theorem swapMiddleTensor_comp_map {R : Type u_3} [CommSemiring R] {A : Type u_4} {B : Type u_5} {C : Type u_6} {D : Type u_7} {E : Type u_8} {F : Type u_9} {G : Type u_10} {H : Type u_11} [AddCommMonoid A] [AddCommMonoid B] [AddCommMonoid C] [AddCommMonoid D] [Module R A] [Module R B] [Module R C] [Module R D] [AddCommMonoid E] [AddCommMonoid F] [AddCommMonoid G] [AddCommMonoid H] [Module R E] [Module R F] [Module R G] [Module R H] (f : A →ₗ[R] B) (g : C →ₗ[R] D) (h : E →ₗ[R] F) (k : G →ₗ[R] H) :
    theorem swapMiddleTensor_map_conj {R : Type u_3} {A : Type u_4} {B : Type u_5} {C : Type u_6} {D : Type u_7} {E : Type u_8} {F : Type u_9} {G : Type u_10} {H : Type u_11} [CommSemiring R] [AddCommMonoid A] [AddCommMonoid B] [AddCommMonoid C] [AddCommMonoid D] [Module R A] [Module R B] [Module R C] [Module R D] [AddCommMonoid E] [AddCommMonoid F] [AddCommMonoid G] [AddCommMonoid H] [Module R E] [Module R F] [Module R G] [Module R H] (f : A →ₗ[R] B) (g : C →ₗ[R] D) (h : E →ₗ[R] F) (k : G →ₗ[R] H) :
    theorem swapMiddleTensor_adjoint {𝕜 : Type u_3} {E : Type u_4} {F : Type u_5} {G : Type u_6} {H : Type u_7} [RCLike 𝕜] [NormedAddCommGroup E] [NormedAddCommGroup F] [NormedAddCommGroup G] [NormedAddCommGroup H] [InnerProductSpace 𝕜 E] [InnerProductSpace 𝕜 F] [InnerProductSpace 𝕜 G] [InnerProductSpace 𝕜 H] [FiniteDimensional 𝕜 E] [FiniteDimensional 𝕜 F] [FiniteDimensional 𝕜 G] [FiniteDimensional 𝕜 H] :
    LinearMap.adjoint (swapMiddleTensor 𝕜 E F G H) = (swapMiddleTensor 𝕜 E F G H).symm