mathlib3 documentation

monlib / linear_algebra.my_ips.tensor_hilbert

Tensor product of inner product spaces #

This file constructs the tensor product of finite-dimensional inner product spaces.

@[protected, instance]
noncomputable def tensor_product.has_inner {π•œ : Type u_1} {E : Type u_2} {F : Type u_3} [is_R_or_C π•œ] [normed_add_comm_group E] [normed_add_comm_group F] [inner_product_space π•œ E] [inner_product_space π•œ F] [finite_dimensional π•œ E] [finite_dimensional π•œ F] :
has_inner π•œ (tensor_product π•œ E F)
Equations
theorem tensor_product.inner_tmul {π•œ : Type u_1} {E : Type u_2} {F : Type u_3} [is_R_or_C π•œ] [normed_add_comm_group E] [normed_add_comm_group F] [inner_product_space π•œ E] [inner_product_space π•œ F] [finite_dimensional π•œ E] [finite_dimensional π•œ F] (x z : E) (y w : F) :
@[protected]
theorem tensor_product.inner_add_left {π•œ : Type u_1} {E : Type u_2} {F : Type u_3} [is_R_or_C π•œ] [normed_add_comm_group E] [normed_add_comm_group F] [inner_product_space π•œ E] [inner_product_space π•œ F] [finite_dimensional π•œ E] [finite_dimensional π•œ F] (x y z : tensor_product π•œ E F) :
@[protected]
theorem tensor_product.inner_zero_right {π•œ : Type u_1} {E : Type u_2} {F : Type u_3} [is_R_or_C π•œ] [normed_add_comm_group E] [normed_add_comm_group F] [inner_product_space π•œ E] [inner_product_space π•œ F] [finite_dimensional π•œ E] [finite_dimensional π•œ F] (x : tensor_product π•œ E F) :
@[protected]
theorem tensor_product.inner_conj_symm {π•œ : Type u_1} {E : Type u_2} {F : Type u_3} [is_R_or_C π•œ] [normed_add_comm_group E] [normed_add_comm_group F] [inner_product_space π•œ E] [inner_product_space π•œ F] [finite_dimensional π•œ E] [finite_dimensional π•œ F] (x y : tensor_product π•œ E F) :
@[protected]
theorem tensor_product.inner_zero_left {π•œ : Type u_1} {E : Type u_2} {F : Type u_3} [is_R_or_C π•œ] [normed_add_comm_group E] [normed_add_comm_group F] [inner_product_space π•œ E] [inner_product_space π•œ F] [finite_dimensional π•œ E] [finite_dimensional π•œ F] (x : tensor_product π•œ E F) :
@[protected]
theorem tensor_product.inner_add_right {π•œ : Type u_1} {E : Type u_2} {F : Type u_3} [is_R_or_C π•œ] [normed_add_comm_group E] [normed_add_comm_group F] [inner_product_space π•œ E] [inner_product_space π•œ F] [finite_dimensional π•œ E] [finite_dimensional π•œ F] (x y z : tensor_product π•œ E F) :
@[protected]
theorem tensor_product.inner_sum {π•œ : Type u_1} {E : Type u_2} {F : Type u_3} [is_R_or_C π•œ] [normed_add_comm_group E] [normed_add_comm_group F] [inner_product_space π•œ E] [inner_product_space π•œ F] [finite_dimensional π•œ E] [finite_dimensional π•œ F] {n : Type u_4} [fintype n] (x : n β†’ tensor_product π•œ E F) (y : tensor_product π•œ E F) :
has_inner.inner (finset.univ.sum (Ξ» (i : n), x i)) y = finset.univ.sum (Ξ» (i : n), has_inner.inner (x i) y)
@[protected]
theorem tensor_product.sum_inner {π•œ : Type u_1} {E : Type u_2} {F : Type u_3} [is_R_or_C π•œ] [normed_add_comm_group E] [normed_add_comm_group F] [inner_product_space π•œ E] [inner_product_space π•œ F] [finite_dimensional π•œ E] [finite_dimensional π•œ F] {n : Type u_4} [fintype n] (y : tensor_product π•œ E F) (x : n β†’ tensor_product π•œ E F) :
has_inner.inner y (finset.univ.sum (Ξ» (i : n), x i)) = finset.univ.sum (Ξ» (i : n), has_inner.inner y (x i))
@[protected]
theorem tensor_product.inner_nonneg_re {π•œ : Type u_1} {E : Type u_2} {F : Type u_3} [is_R_or_C π•œ] [normed_add_comm_group E] [normed_add_comm_group F] [inner_product_space π•œ E] [inner_product_space π•œ F] [finite_dimensional π•œ E] [finite_dimensional π•œ F] (x : tensor_product π•œ E F) :
theorem tensor_product.eq_span {π•œ : Type u_1} {E : Type u_2} {F : Type u_3} [is_R_or_C π•œ] [add_comm_group E] [module π•œ E] [add_comm_group F] [module π•œ F] [finite_dimensional π•œ E] [finite_dimensional π•œ F] (x : tensor_product π•œ E F) :
@[instance, reducible]
noncomputable def tensor_product.inner_product_space {π•œ : Type u_1} {E : Type u_2} {F : Type u_3} [is_R_or_C π•œ] [normed_add_comm_group E] [normed_add_comm_group F] [inner_product_space π•œ E] [inner_product_space π•œ F] [finite_dimensional π•œ E] [finite_dimensional π•œ F] :
inner_product_space π•œ (tensor_product π•œ E F)
Equations
theorem tensor_product.comm_adjoint {π•œ : Type u_1} {E : Type u_2} {F : Type u_3} [is_R_or_C π•œ] [normed_add_comm_group E] [normed_add_comm_group F] [inner_product_space π•œ E] [inner_product_space π•œ F] [finite_dimensional π•œ E] [finite_dimensional π•œ F] :
theorem tensor_product.assoc_symm_adjoint {π•œ : Type u_1} {E : Type u_2} {F : Type u_3} [is_R_or_C π•œ] [normed_add_comm_group E] [normed_add_comm_group F] [inner_product_space π•œ E] [inner_product_space π•œ F] [finite_dimensional π•œ E] [finite_dimensional π•œ F] {G : Type u_4} [normed_add_comm_group G] [inner_product_space π•œ G] [finite_dimensional π•œ G] :
theorem tensor_product.assoc_adjoint {π•œ : Type u_1} {E : Type u_2} {F : Type u_3} [is_R_or_C π•œ] [normed_add_comm_group E] [normed_add_comm_group F] [inner_product_space π•œ E] [inner_product_space π•œ F] [finite_dimensional π•œ E] [finite_dimensional π•œ F] {G : Type u_4} [normed_add_comm_group G] [inner_product_space π•œ G] [finite_dimensional π•œ G] :
theorem tensor_product.inner_ext_iff {π•œ : Type u_1} {E : Type u_2} {F : Type u_3} [is_R_or_C π•œ] [normed_add_comm_group E] [normed_add_comm_group F] [inner_product_space π•œ E] [inner_product_space π•œ F] [finite_dimensional π•œ E] [finite_dimensional π•œ F] (x z : E) (y w : F) :
x βŠ—β‚œ[π•œ] y = z βŠ—β‚œ[π•œ] w ↔ βˆ€ (a : E) (b : F), has_inner.inner (x βŠ—β‚œ[π•œ] y) (a βŠ—β‚œ[π•œ] b) = has_inner.inner (z βŠ—β‚œ[π•œ] w) (a βŠ—β‚œ[π•œ] b)
theorem tensor_product.forall_inner_eq_zero {π•œ : Type u_1} {E : Type u_2} {F : Type u_3} [is_R_or_C π•œ] [normed_add_comm_group E] [normed_add_comm_group F] [inner_product_space π•œ E] [inner_product_space π•œ F] [finite_dimensional π•œ E] [finite_dimensional π•œ F] (x : tensor_product π•œ E F) :
(βˆ€ (a : E) (b : F), has_inner.inner x (a βŠ—β‚œ[π•œ] b) = 0) ↔ x = 0
theorem tensor_product.inner_ext_iff' {π•œ : Type u_1} {E : Type u_2} {F : Type u_3} [is_R_or_C π•œ] [normed_add_comm_group E] [normed_add_comm_group F] [inner_product_space π•œ E] [inner_product_space π•œ F] [finite_dimensional π•œ E] [finite_dimensional π•œ F] (x y : tensor_product π•œ E F) :
x = y ↔ βˆ€ (a : E) (b : F), has_inner.inner x (a βŠ—β‚œ[π•œ] b) = has_inner.inner y (a βŠ—β‚œ[π•œ] b)